A very performant and light (2mb in memory) link shortener and tracker. Written in Rust and React and uses Postgres/SQLite.

migrate frontend to tailwindv4

+1
.gitignore
··· 2 2 **/node_modules 3 3 node_modules 4 4 .env 5 + .sqlx
-1
.preludeignore
··· 1 - .sqlx
+2
frontend/.gitignore
··· 22 22 *.njsproj 23 23 *.sln 24 24 *.sw? 25 + 26 + .sqlx
+3
frontend/.preludeignore
··· 1 + bun.lock 2 + *.json 3 + *.js
+14 -143
frontend/bun.lock
··· 9 9 "@mantine/core": "^7.16.1", 10 10 "@mantine/form": "^7.16.1", 11 11 "@mantine/hooks": "^7.16.1", 12 + "@radix-ui/react-dialog": "^1.1.5", 12 13 "@radix-ui/react-label": "^2.1.1", 13 14 "@radix-ui/react-slot": "^1.1.1", 14 15 "@radix-ui/react-tabs": "^1.1.2", ··· 27 28 }, 28 29 "devDependencies": { 29 30 "@eslint/js": "^9.17.0", 31 + "@tailwindcss/postcss": "^4.0.0", 30 32 "@types/node": "^22.10.10", 31 33 "@types/react": "^18.3.18", 32 34 "@types/react-dom": "^18.3.5", 33 35 "@vitejs/plugin-react": "^4.3.4", 34 - "autoprefixer": "^10.4.20", 35 36 "eslint": "^9.17.0", 36 37 "eslint-plugin-react-hooks": "^5.0.0", 37 38 "eslint-plugin-react-refresh": "^0.4.16", 38 39 "globals": "^15.14.0", 39 40 "postcss": "^8.5.1", 40 - "tailwindcss": "3.4.17", 41 + "tailwindcss": "^4.0.0", 41 42 "typescript": "~5.6.2", 42 43 "typescript-eslint": "^8.18.2", 43 44 "vite": "^6.0.5", ··· 195 196 196 197 "@humanwhocodes/retry": ["@humanwhocodes/retry@0.4.1", "", {}, "sha512-c7hNEllBlenFTHBky65mhq8WD2kbN9Q6gk0bTk8lSBvc554jpXSkST1iePudpt7+A/AQvuHs9EMqjHDXMY1lrA=="], 197 198 198 - "@isaacs/cliui": ["@isaacs/cliui@8.0.2", "", { "dependencies": { "string-width": "^5.1.2", "string-width-cjs": "npm:string-width@^4.2.0", "strip-ansi": "^7.0.1", "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", "wrap-ansi": "^8.1.0", "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" } }, "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA=="], 199 - 200 199 "@jridgewell/gen-mapping": ["@jridgewell/gen-mapping@0.3.8", "", { "dependencies": { "@jridgewell/set-array": "^1.2.1", "@jridgewell/sourcemap-codec": "^1.4.10", "@jridgewell/trace-mapping": "^0.3.24" } }, "sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA=="], 201 200 202 201 "@jridgewell/resolve-uri": ["@jridgewell/resolve-uri@3.1.2", "", {}, "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw=="], ··· 219 218 220 219 "@nodelib/fs.walk": ["@nodelib/fs.walk@1.2.8", "", { "dependencies": { "@nodelib/fs.scandir": "2.1.5", "fastq": "^1.6.0" } }, "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg=="], 221 220 222 - "@pkgjs/parseargs": ["@pkgjs/parseargs@0.11.0", "", {}, "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg=="], 223 - 224 221 "@radix-ui/primitive": ["@radix-ui/primitive@1.1.1", "", {}, "sha512-SJ31y+Q/zAyShtXJc8x83i9TYdbAfHZ++tUZnvjJJqFjzsdUnKsxPL6IEtBlxKkU7yzer//GQtZSV4GbldL3YA=="], 225 222 226 223 "@radix-ui/react-collection": ["@radix-ui/react-collection@1.1.1", "", { "dependencies": { "@radix-ui/react-compose-refs": "1.1.1", "@radix-ui/react-context": "1.1.1", "@radix-ui/react-primitive": "2.0.1", "@radix-ui/react-slot": "1.1.1" }, "peerDependencies": { "@types/react": "*", "@types/react-dom": "*", "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" }, "optionalPeers": ["@types/react", "@types/react-dom"] }, "sha512-LwT3pSho9Dljg+wY2KN2mrrh6y3qELfftINERIzBUO9e0N+t0oMTyn3k9iv+ZqgrwGkRnLpNJrsMv9BZlt2yuA=="], ··· 229 226 230 227 "@radix-ui/react-context": ["@radix-ui/react-context@1.1.1", "", { "peerDependencies": { "@types/react": "*", "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" }, "optionalPeers": ["@types/react"] }, "sha512-UASk9zi+crv9WteK/NU4PLvOoL3OuE6BWVKNF6hPRBtYBDXQ2u5iu3O59zUlJiTVvkyuycnqrztsHVJwcK9K+Q=="], 231 228 229 + "@radix-ui/react-dialog": ["@radix-ui/react-dialog@1.1.5", "", { "dependencies": { "@radix-ui/primitive": "1.1.1", "@radix-ui/react-compose-refs": "1.1.1", "@radix-ui/react-context": "1.1.1", "@radix-ui/react-dismissable-layer": "1.1.4", "@radix-ui/react-focus-guards": "1.1.1", "@radix-ui/react-focus-scope": "1.1.1", "@radix-ui/react-id": "1.1.0", "@radix-ui/react-portal": "1.1.3", "@radix-ui/react-presence": "1.1.2", "@radix-ui/react-primitive": "2.0.1", "@radix-ui/react-slot": "1.1.1", "@radix-ui/react-use-controllable-state": "1.1.0", "aria-hidden": "^1.2.4", "react-remove-scroll": "^2.6.2" }, "peerDependencies": { "@types/react": "*", "@types/react-dom": "*", "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" }, "optionalPeers": ["@types/react", "@types/react-dom"] }, "sha512-LaO3e5h/NOEL4OfXjxD43k9Dx+vn+8n+PCFt6uhX/BADFflllyv3WJG6rgvvSVBxpTch938Qq/LGc2MMxipXPw=="], 230 + 232 231 "@radix-ui/react-direction": ["@radix-ui/react-direction@1.1.0", "", { "peerDependencies": { "@types/react": "*", "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" }, "optionalPeers": ["@types/react"] }, "sha512-BUuBvgThEiAXh2DWu93XsT+a3aWrGqolGlqqw5VU1kG7p/ZH2cuDlM1sRLNnY3QcBS69UIz2mcKhMxDsdewhjg=="], 233 232 234 233 "@radix-ui/react-dismissable-layer": ["@radix-ui/react-dismissable-layer@1.1.4", "", { "dependencies": { "@radix-ui/primitive": "1.1.1", "@radix-ui/react-compose-refs": "1.1.1", "@radix-ui/react-primitive": "2.0.1", "@radix-ui/react-use-callback-ref": "1.1.0", "@radix-ui/react-use-escape-keydown": "1.1.0" }, "peerDependencies": { "@types/react": "*", "@types/react-dom": "*", "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" }, "optionalPeers": ["@types/react", "@types/react-dom"] }, "sha512-XDUI0IVYVSwjMXxM6P4Dfti7AH+Y4oS/TB+sglZ/EXc7cqLwGAmp1NlMrcUjj7ks6R5WTZuWKv44FBbLpwU3sA=="], 234 + 235 + "@radix-ui/react-focus-guards": ["@radix-ui/react-focus-guards@1.1.1", "", { "peerDependencies": { "@types/react": "*", "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" }, "optionalPeers": ["@types/react"] }, "sha512-pSIwfrT1a6sIoDASCSpFwOasEwKTZWDw/iBdtnqKO7v6FeOzYJ7U53cPzYFVR3geGGXgVHaH+CdngrrAzqUGxg=="], 236 + 237 + "@radix-ui/react-focus-scope": ["@radix-ui/react-focus-scope@1.1.1", "", { "dependencies": { "@radix-ui/react-compose-refs": "1.1.1", "@radix-ui/react-primitive": "2.0.1", "@radix-ui/react-use-callback-ref": "1.1.0" }, "peerDependencies": { "@types/react": "*", "@types/react-dom": "*", "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" }, "optionalPeers": ["@types/react", "@types/react-dom"] }, "sha512-01omzJAYRxXdG2/he/+xy+c8a8gCydoQ1yOxnWNcRhrrBW5W+RQJ22EK1SaO8tb3WoUsuEw7mJjBozPzihDFjA=="], 235 238 236 239 "@radix-ui/react-id": ["@radix-ui/react-id@1.1.0", "", { "dependencies": { "@radix-ui/react-use-layout-effect": "1.1.0" }, "peerDependencies": { "@types/react": "*", "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" }, "optionalPeers": ["@types/react"] }, "sha512-EJUrI8yYh7WOjNOqpoJaf1jlFIH2LvtgAl+YcFqNCa+4hj64ZXmPkAKOFs/ukjz3byN6bdb/AVUqHkI8/uWWMA=="], 237 240 ··· 325 328 326 329 "@tailwindcss/oxide-win32-x64-msvc": ["@tailwindcss/oxide-win32-x64-msvc@4.0.0", "", { "os": "win32", "cpu": "x64" }, "sha512-bqT0AY8RXb8GMDy28JtngvqaOSB2YixbLPLvUo6I6lkvvUwA6Eqh2Tj60e2Lh7O/k083f8tYiB0WEK4wmTI7Jg=="], 327 330 331 + "@tailwindcss/postcss": ["@tailwindcss/postcss@4.0.0", "", { "dependencies": { "@alloc/quick-lru": "^5.2.0", "@tailwindcss/node": "^4.0.0", "@tailwindcss/oxide": "^4.0.0", "lightningcss": "^1.29.1", "postcss": "^8.4.41", "tailwindcss": "4.0.0" } }, "sha512-lI2bPk4TvwavHdehjr5WiC6HnZ59hacM6ySEo4RM/H7tsjWd8JpqiNW9ThH7rO/yKtrn4mGBoXshpvn8clXjPg=="], 332 + 328 333 "@tailwindcss/vite": ["@tailwindcss/vite@4.0.0", "", { "dependencies": { "@tailwindcss/node": "^4.0.0", "@tailwindcss/oxide": "^4.0.0", "lightningcss": "^1.29.1", "tailwindcss": "4.0.0" }, "peerDependencies": { "vite": "^5.2.0 || ^6" } }, "sha512-4uukMiU9gHui8KMPMdWic5SP1O/tmQ1NFSRNrQWmcop5evAVl/LZ6/LuWL3quEiecp2RBcRWwqJrG+mFXlRlew=="], 329 334 330 335 "@types/babel__core": ["@types/babel__core@7.20.5", "", { "dependencies": { "@babel/parser": "^7.20.7", "@babel/types": "^7.20.7", "@types/babel__generator": "*", "@types/babel__template": "*", "@types/babel__traverse": "*" } }, "sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA=="], ··· 373 378 374 379 "ajv": ["ajv@6.12.6", "", { "dependencies": { "fast-deep-equal": "^3.1.1", "fast-json-stable-stringify": "^2.0.0", "json-schema-traverse": "^0.4.1", "uri-js": "^4.2.2" } }, "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g=="], 375 380 376 - "ansi-regex": ["ansi-regex@6.1.0", "", {}, "sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA=="], 377 - 378 381 "ansi-styles": ["ansi-styles@4.3.0", "", { "dependencies": { "color-convert": "^2.0.1" } }, "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg=="], 379 382 380 - "any-promise": ["any-promise@1.3.0", "", {}, "sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A=="], 381 - 382 - "anymatch": ["anymatch@3.1.3", "", { "dependencies": { "normalize-path": "^3.0.0", "picomatch": "^2.0.4" } }, "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw=="], 383 - 384 - "arg": ["arg@5.0.2", "", {}, "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg=="], 385 - 386 383 "argparse": ["argparse@2.0.1", "", {}, "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q=="], 387 384 388 - "asynckit": ["asynckit@0.4.0", "", {}, "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q=="], 385 + "aria-hidden": ["aria-hidden@1.2.4", "", { "dependencies": { "tslib": "^2.0.0" } }, "sha512-y+CcFFwelSXpLZk/7fMB2mUbGtX9lKycf1MWJ7CaTIERyitVlyQx6C+sxcROU2BAJ24OiZyK+8wj2i8AlBoS3A=="], 389 386 390 - "autoprefixer": ["autoprefixer@10.4.20", "", { "dependencies": { "browserslist": "^4.23.3", "caniuse-lite": "^1.0.30001646", "fraction.js": "^4.3.7", "normalize-range": "^0.1.2", "picocolors": "^1.0.1", "postcss-value-parser": "^4.2.0" }, "peerDependencies": { "postcss": "^8.1.0" }, "bin": { "autoprefixer": "bin/autoprefixer" } }, "sha512-XY25y5xSv/wEoqzDyXXME4AFfkZI0P23z6Fs3YgymDnKJkCGOnkL0iTxCa85UTqaSgfcqyf3UA6+c7wUvx/16g=="], 387 + "asynckit": ["asynckit@0.4.0", "", {}, "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q=="], 391 388 392 389 "axios": ["axios@1.7.9", "", { "dependencies": { "follow-redirects": "^1.15.6", "form-data": "^4.0.0", "proxy-from-env": "^1.1.0" } }, "sha512-LhLcE7Hbiryz8oMDdDptSrWowmB4Bl6RCt6sIJKpRB4XtVf0iEgewX3au/pJqm+Py1kCASkb/FFKjxQaLtxJvw=="], 393 390 ··· 395 392 396 393 "balanced-match": ["balanced-match@1.0.2", "", {}, "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw=="], 397 394 398 - "binary-extensions": ["binary-extensions@2.3.0", "", {}, "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw=="], 399 - 400 395 "brace-expansion": ["brace-expansion@1.1.11", "", { "dependencies": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" } }, "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA=="], 401 396 402 397 "braces": ["braces@3.0.3", "", { "dependencies": { "fill-range": "^7.1.1" } }, "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA=="], ··· 405 400 406 401 "callsites": ["callsites@3.1.0", "", {}, "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ=="], 407 402 408 - "camelcase-css": ["camelcase-css@2.0.1", "", {}, "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA=="], 409 - 410 403 "caniuse-lite": ["caniuse-lite@1.0.30001695", "", {}, "sha512-vHyLade6wTgI2u1ec3WQBxv+2BrTERV28UXQu9LO6lZ9pYeMk34vjXFLOxo1A4UBA8XTL4njRQZdno/yYaSmWw=="], 411 404 412 405 "chalk": ["chalk@4.1.2", "", { "dependencies": { "ansi-styles": "^4.1.0", "supports-color": "^7.1.0" } }, "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA=="], 413 - 414 - "chokidar": ["chokidar@3.6.0", "", { "dependencies": { "anymatch": "~3.1.2", "braces": "~3.0.2", "glob-parent": "~5.1.2", "is-binary-path": "~2.1.0", "is-glob": "~4.0.1", "normalize-path": "~3.0.0", "readdirp": "~3.6.0" }, "optionalDependencies": { "fsevents": "~2.3.2" } }, "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw=="], 415 406 416 407 "class-variance-authority": ["class-variance-authority@0.7.1", "", { "dependencies": { "clsx": "^2.1.1" } }, "sha512-Ka+9Trutv7G8M6WT6SeiRWz792K5qEqIGEGzXKhAE6xOWAY6pPH8U+9IY3oCMv6kqTmLsv7Xh/2w2RigkePMsg=="], 417 408 ··· 423 414 424 415 "combined-stream": ["combined-stream@1.0.8", "", { "dependencies": { "delayed-stream": "~1.0.0" } }, "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg=="], 425 416 426 - "commander": ["commander@4.1.1", "", {}, "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA=="], 427 - 428 417 "concat-map": ["concat-map@0.0.1", "", {}, "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg=="], 429 418 430 419 "convert-source-map": ["convert-source-map@2.0.0", "", {}, "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg=="], ··· 432 421 "cosmiconfig": ["cosmiconfig@7.1.0", "", { "dependencies": { "@types/parse-json": "^4.0.0", "import-fresh": "^3.2.1", "parse-json": "^5.0.0", "path-type": "^4.0.0", "yaml": "^1.10.0" } }, "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA=="], 433 422 434 423 "cross-spawn": ["cross-spawn@7.0.6", "", { "dependencies": { "path-key": "^3.1.0", "shebang-command": "^2.0.0", "which": "^2.0.1" } }, "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA=="], 435 - 436 - "cssesc": ["cssesc@3.0.0", "", { "bin": { "cssesc": "bin/cssesc" } }, "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg=="], 437 424 438 425 "csstype": ["csstype@3.1.3", "", {}, "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw=="], 439 426 ··· 447 434 448 435 "detect-node-es": ["detect-node-es@1.1.0", "", {}, "sha512-ypdmJU/TbBby2Dxibuv7ZLW3Bs1QEmM7nHjEANfohJLvE0XVujisn1qPJcZxg+qDucsr+bP6fLD1rPS3AhJ7EQ=="], 449 436 450 - "didyoumean": ["didyoumean@1.2.2", "", {}, "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw=="], 451 - 452 - "dlv": ["dlv@1.1.3", "", {}, "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA=="], 453 - 454 - "eastasianwidth": ["eastasianwidth@0.2.0", "", {}, "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA=="], 455 - 456 437 "electron-to-chromium": ["electron-to-chromium@1.5.88", "", {}, "sha512-K3C2qf1o+bGzbilTDCTBhTQcMS9KW60yTAaTeeXsfvQuTDDwlokLam/AdqlqcSy9u4UainDgsHV23ksXAOgamw=="], 457 - 458 - "emoji-regex": ["emoji-regex@9.2.2", "", {}, "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg=="], 459 438 460 439 "enhanced-resolve": ["enhanced-resolve@5.18.0", "", { "dependencies": { "graceful-fs": "^4.2.4", "tapable": "^2.2.0" } }, "sha512-0/r0MySGYG8YqlayBZ6MuCfECmHFdJ5qyPh8s8wa5Hnm6SaFLSK1VYCbj+NKp090Nm1caZhD+QTnmxO7esYGyQ=="], 461 440 ··· 511 490 512 491 "follow-redirects": ["follow-redirects@1.15.9", "", {}, "sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ=="], 513 492 514 - "foreground-child": ["foreground-child@3.3.0", "", { "dependencies": { "cross-spawn": "^7.0.0", "signal-exit": "^4.0.1" } }, "sha512-Ld2g8rrAyMYFXBhEqMz8ZAHBi4J4uS1i/CxGMDnjyFWddMXLVcDp051DZfu+t7+ab7Wv6SMqpWmyFIj5UbfFvg=="], 515 - 516 493 "form-data": ["form-data@4.0.1", "", { "dependencies": { "asynckit": "^0.4.0", "combined-stream": "^1.0.8", "mime-types": "^2.1.12" } }, "sha512-tzN8e4TX8+kkxGPK8D5u0FNmjPUjw3lwC9lSLxxoB/+GtsJG91CO8bSWy73APlgAZzZbXEYZJuxjkHH2w+Ezhw=="], 517 494 518 - "fraction.js": ["fraction.js@4.3.7", "", {}, "sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew=="], 519 - 520 495 "fsevents": ["fsevents@2.3.3", "", { "os": "darwin" }, "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw=="], 521 496 522 497 "function-bind": ["function-bind@1.1.2", "", {}, "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA=="], ··· 524 499 "gensync": ["gensync@1.0.0-beta.2", "", {}, "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg=="], 525 500 526 501 "get-nonce": ["get-nonce@1.0.1", "", {}, "sha512-FJhYRoDaiatfEkUK8HKlicmu/3SGFD51q3itKDGoSTysQJBnfOcxU5GxnhE1E6soB76MbT0MBtnKJuXyAx+96Q=="], 527 - 528 - "glob": ["glob@10.4.5", "", { "dependencies": { "foreground-child": "^3.1.0", "jackspeak": "^3.1.2", "minimatch": "^9.0.4", "minipass": "^7.1.2", "package-json-from-dist": "^1.0.0", "path-scurry": "^1.11.1" }, "bin": { "glob": "dist/esm/bin.mjs" } }, "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg=="], 529 502 530 503 "glob-parent": ["glob-parent@6.0.2", "", { "dependencies": { "is-glob": "^4.0.3" } }, "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A=="], 531 504 ··· 548 521 "imurmurhash": ["imurmurhash@0.1.4", "", {}, "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA=="], 549 522 550 523 "is-arrayish": ["is-arrayish@0.2.1", "", {}, "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg=="], 551 - 552 - "is-binary-path": ["is-binary-path@2.1.0", "", { "dependencies": { "binary-extensions": "^2.0.0" } }, "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw=="], 553 524 554 525 "is-core-module": ["is-core-module@2.16.1", "", { "dependencies": { "hasown": "^2.0.2" } }, "sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w=="], 555 526 556 527 "is-extglob": ["is-extglob@2.1.1", "", {}, "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ=="], 557 528 558 - "is-fullwidth-code-point": ["is-fullwidth-code-point@3.0.0", "", {}, "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg=="], 559 - 560 529 "is-glob": ["is-glob@4.0.3", "", { "dependencies": { "is-extglob": "^2.1.1" } }, "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg=="], 561 530 562 531 "is-number": ["is-number@7.0.0", "", {}, "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng=="], 563 532 564 533 "isexe": ["isexe@2.0.0", "", {}, "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw=="], 565 - 566 - "jackspeak": ["jackspeak@3.4.3", "", { "dependencies": { "@isaacs/cliui": "^8.0.2" }, "optionalDependencies": { "@pkgjs/parseargs": "^0.11.0" } }, "sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw=="], 567 534 568 535 "jiti": ["jiti@2.4.2", "", { "bin": { "jiti": "lib/jiti-cli.mjs" } }, "sha512-rg9zJN+G4n2nfJl5MW3BMygZX56zKPNVEYYqq7adpmMh4Jn2QNEwhvQlFy6jPVdcod7txZtKHWnyZiA3a0zP7A=="], 569 536 ··· 611 578 612 579 "lightningcss-win32-x64-msvc": ["lightningcss-win32-x64-msvc@1.29.1", "", { "os": "win32", "cpu": "x64" }, "sha512-NygcbThNBe4JElP+olyTI/doBNGJvLs3bFCRPdvuCcxZCcCZ71B858IHpdm7L1btZex0FvCmM17FK98Y9MRy1Q=="], 613 580 614 - "lilconfig": ["lilconfig@3.1.3", "", {}, "sha512-/vlFKAoH5Cgt3Ie+JLhRbwOsCQePABiU3tJ1egGvyQ+33R/vcwM2Zl2QR/LzjsBeItPt3oSVXapn+m4nQDvpzw=="], 615 - 616 581 "lines-and-columns": ["lines-and-columns@1.2.4", "", {}, "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg=="], 617 582 618 583 "locate-path": ["locate-path@6.0.0", "", { "dependencies": { "p-locate": "^5.0.0" } }, "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw=="], ··· 635 600 636 601 "minimatch": ["minimatch@3.1.2", "", { "dependencies": { "brace-expansion": "^1.1.7" } }, "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw=="], 637 602 638 - "minipass": ["minipass@7.1.2", "", {}, "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw=="], 639 - 640 603 "ms": ["ms@2.1.3", "", {}, "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA=="], 641 - 642 - "mz": ["mz@2.7.0", "", { "dependencies": { "any-promise": "^1.0.0", "object-assign": "^4.0.1", "thenify-all": "^1.0.0" } }, "sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q=="], 643 604 644 605 "nanoid": ["nanoid@3.3.8", "", { "bin": { "nanoid": "bin/nanoid.cjs" } }, "sha512-WNLf5Sd8oZxOm+TzppcYk8gVOgP+l58xNy58D0nbUnOxOWRWvlcCV4kUF7ltmI6PsrLl/BgKEyS4mqsGChFN0w=="], 645 606 ··· 647 608 648 609 "node-releases": ["node-releases@2.0.19", "", {}, "sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw=="], 649 610 650 - "normalize-path": ["normalize-path@3.0.0", "", {}, "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA=="], 651 - 652 - "normalize-range": ["normalize-range@0.1.2", "", {}, "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA=="], 653 - 654 - "object-assign": ["object-assign@4.1.1", "", {}, "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg=="], 655 - 656 - "object-hash": ["object-hash@3.0.0", "", {}, "sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw=="], 657 - 658 611 "optionator": ["optionator@0.9.4", "", { "dependencies": { "deep-is": "^0.1.3", "fast-levenshtein": "^2.0.6", "levn": "^0.4.1", "prelude-ls": "^1.2.1", "type-check": "^0.4.0", "word-wrap": "^1.2.5" } }, "sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g=="], 659 612 660 613 "p-limit": ["p-limit@3.1.0", "", { "dependencies": { "yocto-queue": "^0.1.0" } }, "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ=="], 661 614 662 615 "p-locate": ["p-locate@5.0.0", "", { "dependencies": { "p-limit": "^3.0.2" } }, "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw=="], 663 - 664 - "package-json-from-dist": ["package-json-from-dist@1.0.1", "", {}, "sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw=="], 665 616 666 617 "parent-module": ["parent-module@1.0.1", "", { "dependencies": { "callsites": "^3.0.0" } }, "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g=="], 667 618 ··· 673 624 674 625 "path-parse": ["path-parse@1.0.7", "", {}, "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw=="], 675 626 676 - "path-scurry": ["path-scurry@1.11.1", "", { "dependencies": { "lru-cache": "^10.2.0", "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" } }, "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA=="], 677 - 678 627 "path-type": ["path-type@4.0.0", "", {}, "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw=="], 679 628 680 629 "picocolors": ["picocolors@1.1.1", "", {}, "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA=="], 681 630 682 631 "picomatch": ["picomatch@2.3.1", "", {}, "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA=="], 683 632 684 - "pify": ["pify@2.3.0", "", {}, "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog=="], 685 - 686 - "pirates": ["pirates@4.0.6", "", {}, "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg=="], 687 - 688 633 "postcss": ["postcss@8.5.1", "", { "dependencies": { "nanoid": "^3.3.8", "picocolors": "^1.1.1", "source-map-js": "^1.2.1" } }, "sha512-6oz2beyjc5VMn/KV1pPw8fliQkhBXrVn1Z3TVyqZxU8kZpzEKhBdmCFqI6ZbmGtamQvQGuU1sgPTk8ZrXDD7jQ=="], 689 634 690 - "postcss-import": ["postcss-import@15.1.0", "", { "dependencies": { "postcss-value-parser": "^4.0.0", "read-cache": "^1.0.0", "resolve": "^1.1.7" }, "peerDependencies": { "postcss": "^8.0.0" } }, "sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew=="], 691 - 692 - "postcss-js": ["postcss-js@4.0.1", "", { "dependencies": { "camelcase-css": "^2.0.1" }, "peerDependencies": { "postcss": "^8.4.21" } }, "sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw=="], 693 - 694 - "postcss-load-config": ["postcss-load-config@4.0.2", "", { "dependencies": { "lilconfig": "^3.0.0", "yaml": "^2.3.4" }, "peerDependencies": { "postcss": ">=8.0.9", "ts-node": ">=9.0.0" }, "optionalPeers": ["postcss", "ts-node"] }, "sha512-bSVhyJGL00wMVoPUzAVAnbEoWyqRxkjv64tUl427SKnPrENtq6hJwUojroMz2VB+Q1edmi4IfrAPpami5VVgMQ=="], 695 - 696 - "postcss-nested": ["postcss-nested@6.2.0", "", { "dependencies": { "postcss-selector-parser": "^6.1.1" }, "peerDependencies": { "postcss": "^8.2.14" } }, "sha512-HQbt28KulC5AJzG+cZtj9kvKB93CFCdLvog1WFLf1D+xmMvPGlBstkpTEZfK5+AN9hfJocyBFCNiqyS48bpgzQ=="], 697 - 698 - "postcss-selector-parser": ["postcss-selector-parser@6.1.2", "", { "dependencies": { "cssesc": "^3.0.0", "util-deprecate": "^1.0.2" } }, "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg=="], 699 - 700 - "postcss-value-parser": ["postcss-value-parser@4.2.0", "", {}, "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ=="], 701 - 702 635 "prelude-ls": ["prelude-ls@1.2.1", "", {}, "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g=="], 703 636 704 637 "proxy-from-env": ["proxy-from-env@1.1.0", "", {}, "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg=="], ··· 727 660 728 661 "react-textarea-autosize": ["react-textarea-autosize@8.5.6", "", { "dependencies": { "@babel/runtime": "^7.20.13", "use-composed-ref": "^1.3.0", "use-latest": "^1.2.1" }, "peerDependencies": { "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" } }, "sha512-aT3ioKXMa8f6zHYGebhbdMD2L00tKeRX1zuVuDx9YQK/JLLRSaSxq3ugECEmUB9z2kvk6bFSIoRHLkkUv0RJiw=="], 729 662 730 - "read-cache": ["read-cache@1.0.0", "", { "dependencies": { "pify": "^2.3.0" } }, "sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA=="], 731 - 732 - "readdirp": ["readdirp@3.6.0", "", { "dependencies": { "picomatch": "^2.2.1" } }, "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA=="], 733 - 734 663 "regenerator-runtime": ["regenerator-runtime@0.14.1", "", {}, "sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw=="], 735 664 736 665 "resolve": ["resolve@1.22.10", "", { "dependencies": { "is-core-module": "^2.16.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" }, "bin": { "resolve": "bin/resolve" } }, "sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w=="], ··· 750 679 "shebang-command": ["shebang-command@2.0.0", "", { "dependencies": { "shebang-regex": "^3.0.0" } }, "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA=="], 751 680 752 681 "shebang-regex": ["shebang-regex@3.0.0", "", {}, "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A=="], 753 - 754 - "signal-exit": ["signal-exit@4.1.0", "", {}, "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw=="], 755 682 756 683 "source-map": ["source-map@0.5.7", "", {}, "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ=="], 757 684 758 685 "source-map-js": ["source-map-js@1.2.1", "", {}, "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA=="], 759 686 760 - "string-width": ["string-width@5.1.2", "", { "dependencies": { "eastasianwidth": "^0.2.0", "emoji-regex": "^9.2.2", "strip-ansi": "^7.0.1" } }, "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA=="], 761 - 762 - "string-width-cjs": ["string-width@4.2.3", "", { "dependencies": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", "strip-ansi": "^6.0.1" } }, "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g=="], 763 - 764 - "strip-ansi": ["strip-ansi@7.1.0", "", { "dependencies": { "ansi-regex": "^6.0.1" } }, "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ=="], 765 - 766 - "strip-ansi-cjs": ["strip-ansi@6.0.1", "", { "dependencies": { "ansi-regex": "^5.0.1" } }, "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A=="], 767 - 768 687 "strip-json-comments": ["strip-json-comments@3.1.1", "", {}, "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig=="], 769 688 770 689 "stylis": ["stylis@4.2.0", "", {}, "sha512-Orov6g6BB1sDfYgzWfTHDOxamtX1bE/zo104Dh9e6fqJ3PooipYyfJ0pUmrZO2wAvO8YbEyeFrkV91XTsGMSrw=="], 771 - 772 - "sucrase": ["sucrase@3.35.0", "", { "dependencies": { "@jridgewell/gen-mapping": "^0.3.2", "commander": "^4.0.0", "glob": "^10.3.10", "lines-and-columns": "^1.1.6", "mz": "^2.7.0", "pirates": "^4.0.1", "ts-interface-checker": "^0.1.9" }, "bin": { "sucrase": "bin/sucrase", "sucrase-node": "bin/sucrase-node" } }, "sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA=="], 773 690 774 691 "supports-color": ["supports-color@7.2.0", "", { "dependencies": { "has-flag": "^4.0.0" } }, "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw=="], 775 692 ··· 779 696 780 697 "tailwind-merge": ["tailwind-merge@2.6.0", "", {}, "sha512-P+Vu1qXfzediirmHOC3xKGAYeZtPcV9g76X+xg2FD4tYgR71ewMA35Y3sCz3zhiN/dwefRpJX0yBcgwi1fXNQA=="], 781 698 782 - "tailwindcss": ["tailwindcss@3.4.17", "", { "dependencies": { "@alloc/quick-lru": "^5.2.0", "arg": "^5.0.2", "chokidar": "^3.6.0", "didyoumean": "^1.2.2", "dlv": "^1.1.3", "fast-glob": "^3.3.2", "glob-parent": "^6.0.2", "is-glob": "^4.0.3", "jiti": "^1.21.6", "lilconfig": "^3.1.3", "micromatch": "^4.0.8", "normalize-path": "^3.0.0", "object-hash": "^3.0.0", "picocolors": "^1.1.1", "postcss": "^8.4.47", "postcss-import": "^15.1.0", "postcss-js": "^4.0.1", "postcss-load-config": "^4.0.2", "postcss-nested": "^6.2.0", "postcss-selector-parser": "^6.1.2", "resolve": "^1.22.8", "sucrase": "^3.35.0" }, "bin": { "tailwind": "lib/cli.js", "tailwindcss": "lib/cli.js" } }, "sha512-w33E2aCvSDP0tW9RZuNXadXlkHXqFzSkQew/aIa2i/Sj8fThxwovwlXHSPXTbAHwEIhBFXAedUhP2tueAKP8Og=="], 699 + "tailwindcss": ["tailwindcss@4.0.0", "", {}, "sha512-ULRPI3A+e39T7pSaf1xoi58AqqJxVCLg8F/uM5A3FadUbnyDTgltVnXJvdkTjwCOGA6NazqHVcwPJC5h2vRYVQ=="], 783 700 784 701 "tailwindcss-animate": ["tailwindcss-animate@1.0.7", "", { "peerDependencies": { "tailwindcss": ">=3.0.0 || insiders" } }, "sha512-bl6mpH3T7I3UFxuvDEXLxy/VuFxBk5bbzplh7tXI68mwMokNYd1t9qPBHlnyTwfa4JGC4zP516I1hYYtQ/vspA=="], 785 702 786 703 "tapable": ["tapable@2.2.1", "", {}, "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ=="], 787 704 788 - "thenify": ["thenify@3.3.1", "", { "dependencies": { "any-promise": "^1.0.0" } }, "sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw=="], 789 - 790 - "thenify-all": ["thenify-all@1.6.0", "", { "dependencies": { "thenify": ">= 3.1.0 < 4" } }, "sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA=="], 791 - 792 705 "to-regex-range": ["to-regex-range@5.0.1", "", { "dependencies": { "is-number": "^7.0.0" } }, "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ=="], 793 706 794 707 "ts-api-utils": ["ts-api-utils@2.0.0", "", { "peerDependencies": { "typescript": ">=4.8.4" } }, "sha512-xCt/TOAc+EOHS1XPnijD3/yzpH6qg2xppZO1YDqGoVsNXfQfzHpOdNuXwrwOU8u4ITXJyDCTyt8w5g1sZv9ynQ=="], 795 - 796 - "ts-interface-checker": ["ts-interface-checker@0.1.13", "", {}, "sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA=="], 797 708 798 709 "tslib": ["tslib@2.8.1", "", {}, "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w=="], 799 710 ··· 821 732 822 733 "use-sidecar": ["use-sidecar@1.1.3", "", { "dependencies": { "detect-node-es": "^1.1.0", "tslib": "^2.0.0" }, "peerDependencies": { "@types/react": "*", "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc" }, "optionalPeers": ["@types/react"] }, "sha512-Fedw0aZvkhynoPYlA5WXrMCAMm+nSWdZt6lzJQ7Ok8S6Q+VsHmHpRWndVRJ8Be0ZbkfPc5LRYH+5XrzXcEeLRQ=="], 823 734 824 - "util-deprecate": ["util-deprecate@1.0.2", "", {}, "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw=="], 825 - 826 735 "vite": ["vite@6.0.11", "", { "dependencies": { "esbuild": "^0.24.2", "postcss": "^8.4.49", "rollup": "^4.23.0" }, "optionalDependencies": { "fsevents": "~2.3.3" }, "peerDependencies": { "@types/node": "^18.0.0 || ^20.0.0 || >=22.0.0", "jiti": ">=1.21.0", "less": "*", "lightningcss": "^1.21.0", "sass": "*", "sass-embedded": "*", "stylus": "*", "sugarss": "*", "terser": "^5.16.0", "tsx": "^4.8.1", "yaml": "^2.4.2" }, "optionalPeers": ["@types/node", "jiti", "less", "lightningcss", "sass", "sass-embedded", "stylus", "sugarss", "terser", "tsx", "yaml"], "bin": { "vite": "bin/vite.js" } }, "sha512-4VL9mQPKoHy4+FE0NnRE/kbY51TOfaknxAjt3fJbGJxhIpBZiqVzlZDEesWWsuREXHwNdAoOFZ9MkPEVXczHwg=="], 827 736 828 737 "which": ["which@2.0.2", "", { "dependencies": { "isexe": "^2.0.0" }, "bin": { "node-which": "./bin/node-which" } }, "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA=="], 829 738 830 739 "word-wrap": ["word-wrap@1.2.5", "", {}, "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA=="], 831 - 832 - "wrap-ansi": ["wrap-ansi@8.1.0", "", { "dependencies": { "ansi-styles": "^6.1.0", "string-width": "^5.0.1", "strip-ansi": "^7.0.1" } }, "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ=="], 833 - 834 - "wrap-ansi-cjs": ["wrap-ansi@7.0.0", "", { "dependencies": { "ansi-styles": "^4.0.0", "string-width": "^4.1.0", "strip-ansi": "^6.0.0" } }, "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q=="], 835 740 836 741 "yallist": ["yallist@3.1.1", "", {}, "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g=="], 837 742 ··· 851 756 852 757 "@humanfs/node/@humanwhocodes/retry": ["@humanwhocodes/retry@0.3.1", "", {}, "sha512-JBxkERygn7Bv/GbN5Rv8Ul6LVknS+5Bp6RgDC/O8gEBU/yeH5Ui5C/OlWrTb6qct7LjjfT6Re2NxB0ln0yYybA=="], 853 758 854 - "@tailwindcss/node/tailwindcss": ["tailwindcss@4.0.0", "", {}, "sha512-ULRPI3A+e39T7pSaf1xoi58AqqJxVCLg8F/uM5A3FadUbnyDTgltVnXJvdkTjwCOGA6NazqHVcwPJC5h2vRYVQ=="], 855 - 856 - "@tailwindcss/vite/tailwindcss": ["tailwindcss@4.0.0", "", {}, "sha512-ULRPI3A+e39T7pSaf1xoi58AqqJxVCLg8F/uM5A3FadUbnyDTgltVnXJvdkTjwCOGA6NazqHVcwPJC5h2vRYVQ=="], 857 - 858 759 "@typescript-eslint/typescript-estree/minimatch": ["minimatch@9.0.5", "", { "dependencies": { "brace-expansion": "^2.0.1" } }, "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow=="], 859 760 860 761 "@typescript-eslint/typescript-estree/semver": ["semver@7.6.3", "", { "bin": { "semver": "bin/semver.js" } }, "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A=="], 861 762 862 - "chokidar/glob-parent": ["glob-parent@5.1.2", "", { "dependencies": { "is-glob": "^4.0.1" } }, "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow=="], 863 - 864 763 "fast-glob/glob-parent": ["glob-parent@5.1.2", "", { "dependencies": { "is-glob": "^4.0.1" } }, "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow=="], 865 764 866 - "glob/minimatch": ["minimatch@9.0.5", "", { "dependencies": { "brace-expansion": "^2.0.1" } }, "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow=="], 867 - 868 - "path-scurry/lru-cache": ["lru-cache@10.4.3", "", {}, "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ=="], 869 - 870 - "postcss-load-config/yaml": ["yaml@2.7.0", "", { "bin": { "yaml": "bin.mjs" } }, "sha512-+hSoy/QHluxmC9kCIJyL/uyFmLmc+e5CFR5Wa+bpIhIj85LVb9ZH2nVnqrHoSvKogwODv0ClqZkmiSSaIH5LTA=="], 871 - 872 - "string-width-cjs/emoji-regex": ["emoji-regex@8.0.0", "", {}, "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A=="], 873 - 874 - "string-width-cjs/strip-ansi": ["strip-ansi@6.0.1", "", { "dependencies": { "ansi-regex": "^5.0.1" } }, "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A=="], 875 - 876 - "strip-ansi-cjs/ansi-regex": ["ansi-regex@5.0.1", "", {}, "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ=="], 877 - 878 - "tailwindcss/jiti": ["jiti@1.21.7", "", { "bin": { "jiti": "bin/jiti.js" } }, "sha512-/imKNG4EbWNrVjoNC/1H5/9GFy+tqjGBHCaSsN+P2RnPqjsLmv6UD3Ej+Kj8nBWaRAwyk7kK5ZUc+OEatnTR3A=="], 879 - 880 - "wrap-ansi/ansi-styles": ["ansi-styles@6.2.1", "", {}, "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug=="], 881 - 882 - "wrap-ansi-cjs/string-width": ["string-width@4.2.3", "", { "dependencies": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", "strip-ansi": "^6.0.1" } }, "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g=="], 883 - 884 - "wrap-ansi-cjs/strip-ansi": ["strip-ansi@6.0.1", "", { "dependencies": { "ansi-regex": "^5.0.1" } }, "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A=="], 885 - 886 765 "@typescript-eslint/typescript-estree/minimatch/brace-expansion": ["brace-expansion@2.0.1", "", { "dependencies": { "balanced-match": "^1.0.0" } }, "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA=="], 887 - 888 - "glob/minimatch/brace-expansion": ["brace-expansion@2.0.1", "", { "dependencies": { "balanced-match": "^1.0.0" } }, "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA=="], 889 - 890 - "string-width-cjs/strip-ansi/ansi-regex": ["ansi-regex@5.0.1", "", {}, "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ=="], 891 - 892 - "wrap-ansi-cjs/string-width/emoji-regex": ["emoji-regex@8.0.0", "", {}, "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A=="], 893 - 894 - "wrap-ansi-cjs/strip-ansi/ansi-regex": ["ansi-regex@5.0.1", "", {}, "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ=="], 895 766 } 896 767 }
-4806
frontend/package-lock.json
··· 1 - { 2 - "name": "frontend", 3 - "version": "0.0.0", 4 - "lockfileVersion": 3, 5 - "requires": true, 6 - "packages": { 7 - "": { 8 - "name": "frontend", 9 - "version": "0.0.0", 10 - "dependencies": { 11 - "@emotion/react": "^11.14.0", 12 - "@hookform/resolvers": "^3.10.0", 13 - "@mantine/core": "^7.16.1", 14 - "@mantine/form": "^7.16.1", 15 - "@mantine/hooks": "^7.16.1", 16 - "@radix-ui/react-dialog": "^1.1.5", 17 - "@radix-ui/react-label": "^2.1.1", 18 - "@radix-ui/react-slot": "^1.1.1", 19 - "@radix-ui/react-tabs": "^1.1.2", 20 - "@radix-ui/react-toast": "^1.2.5", 21 - "@tailwindcss/vite": "^4.0.0", 22 - "axios": "^1.7.9", 23 - "class-variance-authority": "^0.7.1", 24 - "clsx": "^2.1.1", 25 - "lucide-react": "^0.474.0", 26 - "react": "^18.3.1", 27 - "react-dom": "^18.3.1", 28 - "react-hook-form": "^7.54.2", 29 - "tailwind-merge": "^2.6.0", 30 - "tailwindcss-animate": "^1.0.7", 31 - "zod": "^3.24.1" 32 - }, 33 - "devDependencies": { 34 - "@eslint/js": "^9.17.0", 35 - "@types/node": "^22.10.10", 36 - "@types/react": "^18.3.18", 37 - "@types/react-dom": "^18.3.5", 38 - "@vitejs/plugin-react": "^4.3.4", 39 - "autoprefixer": "^10.4.20", 40 - "eslint": "^9.17.0", 41 - "eslint-plugin-react-hooks": "^5.0.0", 42 - "eslint-plugin-react-refresh": "^0.4.16", 43 - "globals": "^15.14.0", 44 - "postcss": "^8.5.1", 45 - "tailwindcss": "3.4.17", 46 - "typescript": "~5.6.2", 47 - "typescript-eslint": "^8.18.2", 48 - "vite": "^6.0.5" 49 - } 50 - }, 51 - "node_modules/@alloc/quick-lru": { 52 - "version": "5.2.0", 53 - "resolved": "https://registry.npmjs.org/@alloc/quick-lru/-/quick-lru-5.2.0.tgz", 54 - "integrity": "sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==", 55 - "license": "MIT", 56 - "engines": { 57 - "node": ">=10" 58 - }, 59 - "funding": { 60 - "url": "https://github.com/sponsors/sindresorhus" 61 - } 62 - }, 63 - "node_modules/@ampproject/remapping": { 64 - "version": "2.3.0", 65 - "dev": true, 66 - "license": "Apache-2.0", 67 - "dependencies": { 68 - "@jridgewell/gen-mapping": "^0.3.5", 69 - "@jridgewell/trace-mapping": "^0.3.24" 70 - }, 71 - "engines": { 72 - "node": ">=6.0.0" 73 - } 74 - }, 75 - "node_modules/@babel/code-frame": { 76 - "version": "7.26.2", 77 - "license": "MIT", 78 - "dependencies": { 79 - "@babel/helper-validator-identifier": "^7.25.9", 80 - "js-tokens": "^4.0.0", 81 - "picocolors": "^1.0.0" 82 - }, 83 - "engines": { 84 - "node": ">=6.9.0" 85 - } 86 - }, 87 - "node_modules/@babel/compat-data": { 88 - "version": "7.26.5", 89 - "dev": true, 90 - "license": "MIT", 91 - "engines": { 92 - "node": ">=6.9.0" 93 - } 94 - }, 95 - "node_modules/@babel/core": { 96 - "version": "7.26.7", 97 - "dev": true, 98 - "license": "MIT", 99 - "dependencies": { 100 - "@ampproject/remapping": "^2.2.0", 101 - "@babel/code-frame": "^7.26.2", 102 - "@babel/generator": "^7.26.5", 103 - "@babel/helper-compilation-targets": "^7.26.5", 104 - "@babel/helper-module-transforms": "^7.26.0", 105 - "@babel/helpers": "^7.26.7", 106 - "@babel/parser": "^7.26.7", 107 - "@babel/template": "^7.25.9", 108 - "@babel/traverse": "^7.26.7", 109 - "@babel/types": "^7.26.7", 110 - "convert-source-map": "^2.0.0", 111 - "debug": "^4.1.0", 112 - "gensync": "^1.0.0-beta.2", 113 - "json5": "^2.2.3", 114 - "semver": "^6.3.1" 115 - }, 116 - "engines": { 117 - "node": ">=6.9.0" 118 - }, 119 - "funding": { 120 - "type": "opencollective", 121 - "url": "https://opencollective.com/babel" 122 - } 123 - }, 124 - "node_modules/@babel/generator": { 125 - "version": "7.26.5", 126 - "license": "MIT", 127 - "dependencies": { 128 - "@babel/parser": "^7.26.5", 129 - "@babel/types": "^7.26.5", 130 - "@jridgewell/gen-mapping": "^0.3.5", 131 - "@jridgewell/trace-mapping": "^0.3.25", 132 - "jsesc": "^3.0.2" 133 - }, 134 - "engines": { 135 - "node": ">=6.9.0" 136 - } 137 - }, 138 - "node_modules/@babel/helper-compilation-targets": { 139 - "version": "7.26.5", 140 - "dev": true, 141 - "license": "MIT", 142 - "dependencies": { 143 - "@babel/compat-data": "^7.26.5", 144 - "@babel/helper-validator-option": "^7.25.9", 145 - "browserslist": "^4.24.0", 146 - "lru-cache": "^5.1.1", 147 - "semver": "^6.3.1" 148 - }, 149 - "engines": { 150 - "node": ">=6.9.0" 151 - } 152 - }, 153 - "node_modules/@babel/helper-module-imports": { 154 - "version": "7.25.9", 155 - "license": "MIT", 156 - "dependencies": { 157 - "@babel/traverse": "^7.25.9", 158 - "@babel/types": "^7.25.9" 159 - }, 160 - "engines": { 161 - "node": ">=6.9.0" 162 - } 163 - }, 164 - "node_modules/@babel/helper-module-transforms": { 165 - "version": "7.26.0", 166 - "dev": true, 167 - "license": "MIT", 168 - "dependencies": { 169 - "@babel/helper-module-imports": "^7.25.9", 170 - "@babel/helper-validator-identifier": "^7.25.9", 171 - "@babel/traverse": "^7.25.9" 172 - }, 173 - "engines": { 174 - "node": ">=6.9.0" 175 - }, 176 - "peerDependencies": { 177 - "@babel/core": "^7.0.0" 178 - } 179 - }, 180 - "node_modules/@babel/helper-plugin-utils": { 181 - "version": "7.26.5", 182 - "dev": true, 183 - "license": "MIT", 184 - "engines": { 185 - "node": ">=6.9.0" 186 - } 187 - }, 188 - "node_modules/@babel/helper-string-parser": { 189 - "version": "7.25.9", 190 - "license": "MIT", 191 - "engines": { 192 - "node": ">=6.9.0" 193 - } 194 - }, 195 - "node_modules/@babel/helper-validator-identifier": { 196 - "version": "7.25.9", 197 - "license": "MIT", 198 - "engines": { 199 - "node": ">=6.9.0" 200 - } 201 - }, 202 - "node_modules/@babel/helper-validator-option": { 203 - "version": "7.25.9", 204 - "dev": true, 205 - "license": "MIT", 206 - "engines": { 207 - "node": ">=6.9.0" 208 - } 209 - }, 210 - "node_modules/@babel/helpers": { 211 - "version": "7.26.7", 212 - "dev": true, 213 - "license": "MIT", 214 - "dependencies": { 215 - "@babel/template": "^7.25.9", 216 - "@babel/types": "^7.26.7" 217 - }, 218 - "engines": { 219 - "node": ">=6.9.0" 220 - } 221 - }, 222 - "node_modules/@babel/parser": { 223 - "version": "7.26.7", 224 - "license": "MIT", 225 - "dependencies": { 226 - "@babel/types": "^7.26.7" 227 - }, 228 - "bin": { 229 - "parser": "bin/babel-parser.js" 230 - }, 231 - "engines": { 232 - "node": ">=6.0.0" 233 - } 234 - }, 235 - "node_modules/@babel/plugin-transform-react-jsx-self": { 236 - "version": "7.25.9", 237 - "dev": true, 238 - "license": "MIT", 239 - "dependencies": { 240 - "@babel/helper-plugin-utils": "^7.25.9" 241 - }, 242 - "engines": { 243 - "node": ">=6.9.0" 244 - }, 245 - "peerDependencies": { 246 - "@babel/core": "^7.0.0-0" 247 - } 248 - }, 249 - "node_modules/@babel/plugin-transform-react-jsx-source": { 250 - "version": "7.25.9", 251 - "dev": true, 252 - "license": "MIT", 253 - "dependencies": { 254 - "@babel/helper-plugin-utils": "^7.25.9" 255 - }, 256 - "engines": { 257 - "node": ">=6.9.0" 258 - }, 259 - "peerDependencies": { 260 - "@babel/core": "^7.0.0-0" 261 - } 262 - }, 263 - "node_modules/@babel/runtime": { 264 - "version": "7.26.7", 265 - "license": "MIT", 266 - "dependencies": { 267 - "regenerator-runtime": "^0.14.0" 268 - }, 269 - "engines": { 270 - "node": ">=6.9.0" 271 - } 272 - }, 273 - "node_modules/@babel/template": { 274 - "version": "7.25.9", 275 - "license": "MIT", 276 - "dependencies": { 277 - "@babel/code-frame": "^7.25.9", 278 - "@babel/parser": "^7.25.9", 279 - "@babel/types": "^7.25.9" 280 - }, 281 - "engines": { 282 - "node": ">=6.9.0" 283 - } 284 - }, 285 - "node_modules/@babel/traverse": { 286 - "version": "7.26.7", 287 - "license": "MIT", 288 - "dependencies": { 289 - "@babel/code-frame": "^7.26.2", 290 - "@babel/generator": "^7.26.5", 291 - "@babel/parser": "^7.26.7", 292 - "@babel/template": "^7.25.9", 293 - "@babel/types": "^7.26.7", 294 - "debug": "^4.3.1", 295 - "globals": "^11.1.0" 296 - }, 297 - "engines": { 298 - "node": ">=6.9.0" 299 - } 300 - }, 301 - "node_modules/@babel/traverse/node_modules/globals": { 302 - "version": "11.12.0", 303 - "license": "MIT", 304 - "engines": { 305 - "node": ">=4" 306 - } 307 - }, 308 - "node_modules/@babel/types": { 309 - "version": "7.26.7", 310 - "license": "MIT", 311 - "dependencies": { 312 - "@babel/helper-string-parser": "^7.25.9", 313 - "@babel/helper-validator-identifier": "^7.25.9" 314 - }, 315 - "engines": { 316 - "node": ">=6.9.0" 317 - } 318 - }, 319 - "node_modules/@emotion/babel-plugin": { 320 - "version": "11.13.5", 321 - "license": "MIT", 322 - "dependencies": { 323 - "@babel/helper-module-imports": "^7.16.7", 324 - "@babel/runtime": "^7.18.3", 325 - "@emotion/hash": "^0.9.2", 326 - "@emotion/memoize": "^0.9.0", 327 - "@emotion/serialize": "^1.3.3", 328 - "babel-plugin-macros": "^3.1.0", 329 - "convert-source-map": "^1.5.0", 330 - "escape-string-regexp": "^4.0.0", 331 - "find-root": "^1.1.0", 332 - "source-map": "^0.5.7", 333 - "stylis": "4.2.0" 334 - } 335 - }, 336 - "node_modules/@emotion/babel-plugin/node_modules/convert-source-map": { 337 - "version": "1.9.0", 338 - "license": "MIT" 339 - }, 340 - "node_modules/@emotion/cache": { 341 - "version": "11.14.0", 342 - "license": "MIT", 343 - "dependencies": { 344 - "@emotion/memoize": "^0.9.0", 345 - "@emotion/sheet": "^1.4.0", 346 - "@emotion/utils": "^1.4.2", 347 - "@emotion/weak-memoize": "^0.4.0", 348 - "stylis": "4.2.0" 349 - } 350 - }, 351 - "node_modules/@emotion/hash": { 352 - "version": "0.9.2", 353 - "license": "MIT" 354 - }, 355 - "node_modules/@emotion/memoize": { 356 - "version": "0.9.0", 357 - "license": "MIT" 358 - }, 359 - "node_modules/@emotion/react": { 360 - "version": "11.14.0", 361 - "license": "MIT", 362 - "dependencies": { 363 - "@babel/runtime": "^7.18.3", 364 - "@emotion/babel-plugin": "^11.13.5", 365 - "@emotion/cache": "^11.14.0", 366 - "@emotion/serialize": "^1.3.3", 367 - "@emotion/use-insertion-effect-with-fallbacks": "^1.2.0", 368 - "@emotion/utils": "^1.4.2", 369 - "@emotion/weak-memoize": "^0.4.0", 370 - "hoist-non-react-statics": "^3.3.1" 371 - }, 372 - "peerDependencies": { 373 - "react": ">=16.8.0" 374 - }, 375 - "peerDependenciesMeta": { 376 - "@types/react": { 377 - "optional": true 378 - } 379 - } 380 - }, 381 - "node_modules/@emotion/serialize": { 382 - "version": "1.3.3", 383 - "license": "MIT", 384 - "dependencies": { 385 - "@emotion/hash": "^0.9.2", 386 - "@emotion/memoize": "^0.9.0", 387 - "@emotion/unitless": "^0.10.0", 388 - "@emotion/utils": "^1.4.2", 389 - "csstype": "^3.0.2" 390 - } 391 - }, 392 - "node_modules/@emotion/sheet": { 393 - "version": "1.4.0", 394 - "license": "MIT" 395 - }, 396 - "node_modules/@emotion/unitless": { 397 - "version": "0.10.0", 398 - "license": "MIT" 399 - }, 400 - "node_modules/@emotion/use-insertion-effect-with-fallbacks": { 401 - "version": "1.2.0", 402 - "license": "MIT", 403 - "peerDependencies": { 404 - "react": ">=16.8.0" 405 - } 406 - }, 407 - "node_modules/@emotion/utils": { 408 - "version": "1.4.2", 409 - "license": "MIT" 410 - }, 411 - "node_modules/@emotion/weak-memoize": { 412 - "version": "0.4.0", 413 - "license": "MIT" 414 - }, 415 - "node_modules/@esbuild/darwin-arm64": { 416 - "version": "0.24.2", 417 - "cpu": [ 418 - "arm64" 419 - ], 420 - "license": "MIT", 421 - "optional": true, 422 - "os": [ 423 - "darwin" 424 - ], 425 - "engines": { 426 - "node": ">=18" 427 - } 428 - }, 429 - "node_modules/@eslint-community/eslint-utils": { 430 - "version": "4.4.1", 431 - "dev": true, 432 - "license": "MIT", 433 - "dependencies": { 434 - "eslint-visitor-keys": "^3.4.3" 435 - }, 436 - "engines": { 437 - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" 438 - }, 439 - "funding": { 440 - "url": "https://opencollective.com/eslint" 441 - }, 442 - "peerDependencies": { 443 - "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" 444 - } 445 - }, 446 - "node_modules/@eslint-community/eslint-utils/node_modules/eslint-visitor-keys": { 447 - "version": "3.4.3", 448 - "dev": true, 449 - "license": "Apache-2.0", 450 - "engines": { 451 - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" 452 - }, 453 - "funding": { 454 - "url": "https://opencollective.com/eslint" 455 - } 456 - }, 457 - "node_modules/@eslint-community/regexpp": { 458 - "version": "4.12.1", 459 - "dev": true, 460 - "license": "MIT", 461 - "engines": { 462 - "node": "^12.0.0 || ^14.0.0 || >=16.0.0" 463 - } 464 - }, 465 - "node_modules/@eslint/config-array": { 466 - "version": "0.19.1", 467 - "dev": true, 468 - "license": "Apache-2.0", 469 - "dependencies": { 470 - "@eslint/object-schema": "^2.1.5", 471 - "debug": "^4.3.1", 472 - "minimatch": "^3.1.2" 473 - }, 474 - "engines": { 475 - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 476 - } 477 - }, 478 - "node_modules/@eslint/core": { 479 - "version": "0.10.0", 480 - "dev": true, 481 - "license": "Apache-2.0", 482 - "dependencies": { 483 - "@types/json-schema": "^7.0.15" 484 - }, 485 - "engines": { 486 - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 487 - } 488 - }, 489 - "node_modules/@eslint/eslintrc": { 490 - "version": "3.2.0", 491 - "dev": true, 492 - "license": "MIT", 493 - "dependencies": { 494 - "ajv": "^6.12.4", 495 - "debug": "^4.3.2", 496 - "espree": "^10.0.1", 497 - "globals": "^14.0.0", 498 - "ignore": "^5.2.0", 499 - "import-fresh": "^3.2.1", 500 - "js-yaml": "^4.1.0", 501 - "minimatch": "^3.1.2", 502 - "strip-json-comments": "^3.1.1" 503 - }, 504 - "engines": { 505 - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 506 - }, 507 - "funding": { 508 - "url": "https://opencollective.com/eslint" 509 - } 510 - }, 511 - "node_modules/@eslint/eslintrc/node_modules/globals": { 512 - "version": "14.0.0", 513 - "dev": true, 514 - "license": "MIT", 515 - "engines": { 516 - "node": ">=18" 517 - }, 518 - "funding": { 519 - "url": "https://github.com/sponsors/sindresorhus" 520 - } 521 - }, 522 - "node_modules/@eslint/js": { 523 - "version": "9.19.0", 524 - "dev": true, 525 - "license": "MIT", 526 - "engines": { 527 - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 528 - } 529 - }, 530 - "node_modules/@eslint/object-schema": { 531 - "version": "2.1.5", 532 - "dev": true, 533 - "license": "Apache-2.0", 534 - "engines": { 535 - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 536 - } 537 - }, 538 - "node_modules/@eslint/plugin-kit": { 539 - "version": "0.2.5", 540 - "dev": true, 541 - "license": "Apache-2.0", 542 - "dependencies": { 543 - "@eslint/core": "^0.10.0", 544 - "levn": "^0.4.1" 545 - }, 546 - "engines": { 547 - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 548 - } 549 - }, 550 - "node_modules/@floating-ui/core": { 551 - "version": "1.6.9", 552 - "license": "MIT", 553 - "dependencies": { 554 - "@floating-ui/utils": "^0.2.9" 555 - } 556 - }, 557 - "node_modules/@floating-ui/dom": { 558 - "version": "1.6.13", 559 - "license": "MIT", 560 - "dependencies": { 561 - "@floating-ui/core": "^1.6.0", 562 - "@floating-ui/utils": "^0.2.9" 563 - } 564 - }, 565 - "node_modules/@floating-ui/react": { 566 - "version": "0.26.28", 567 - "license": "MIT", 568 - "dependencies": { 569 - "@floating-ui/react-dom": "^2.1.2", 570 - "@floating-ui/utils": "^0.2.8", 571 - "tabbable": "^6.0.0" 572 - }, 573 - "peerDependencies": { 574 - "react": ">=16.8.0", 575 - "react-dom": ">=16.8.0" 576 - } 577 - }, 578 - "node_modules/@floating-ui/react-dom": { 579 - "version": "2.1.2", 580 - "license": "MIT", 581 - "dependencies": { 582 - "@floating-ui/dom": "^1.0.0" 583 - }, 584 - "peerDependencies": { 585 - "react": ">=16.8.0", 586 - "react-dom": ">=16.8.0" 587 - } 588 - }, 589 - "node_modules/@floating-ui/utils": { 590 - "version": "0.2.9", 591 - "license": "MIT" 592 - }, 593 - "node_modules/@hookform/resolvers": { 594 - "version": "3.10.0", 595 - "resolved": "https://registry.npmjs.org/@hookform/resolvers/-/resolvers-3.10.0.tgz", 596 - "integrity": "sha512-79Dv+3mDF7i+2ajj7SkypSKHhl1cbln1OGavqrsF7p6mbUv11xpqpacPsGDCTRvCSjEEIez2ef1NveSVL3b0Ag==", 597 - "license": "MIT", 598 - "peerDependencies": { 599 - "react-hook-form": "^7.0.0" 600 - } 601 - }, 602 - "node_modules/@humanfs/core": { 603 - "version": "0.19.1", 604 - "dev": true, 605 - "license": "Apache-2.0", 606 - "engines": { 607 - "node": ">=18.18.0" 608 - } 609 - }, 610 - "node_modules/@humanfs/node": { 611 - "version": "0.16.6", 612 - "dev": true, 613 - "license": "Apache-2.0", 614 - "dependencies": { 615 - "@humanfs/core": "^0.19.1", 616 - "@humanwhocodes/retry": "^0.3.0" 617 - }, 618 - "engines": { 619 - "node": ">=18.18.0" 620 - } 621 - }, 622 - "node_modules/@humanfs/node/node_modules/@humanwhocodes/retry": { 623 - "version": "0.3.1", 624 - "dev": true, 625 - "license": "Apache-2.0", 626 - "engines": { 627 - "node": ">=18.18" 628 - }, 629 - "funding": { 630 - "type": "github", 631 - "url": "https://github.com/sponsors/nzakas" 632 - } 633 - }, 634 - "node_modules/@humanwhocodes/module-importer": { 635 - "version": "1.0.1", 636 - "dev": true, 637 - "license": "Apache-2.0", 638 - "engines": { 639 - "node": ">=12.22" 640 - }, 641 - "funding": { 642 - "type": "github", 643 - "url": "https://github.com/sponsors/nzakas" 644 - } 645 - }, 646 - "node_modules/@humanwhocodes/retry": { 647 - "version": "0.4.1", 648 - "dev": true, 649 - "license": "Apache-2.0", 650 - "engines": { 651 - "node": ">=18.18" 652 - }, 653 - "funding": { 654 - "type": "github", 655 - "url": "https://github.com/sponsors/nzakas" 656 - } 657 - }, 658 - "node_modules/@isaacs/cliui": { 659 - "version": "8.0.2", 660 - "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", 661 - "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", 662 - "license": "ISC", 663 - "dependencies": { 664 - "string-width": "^5.1.2", 665 - "string-width-cjs": "npm:string-width@^4.2.0", 666 - "strip-ansi": "^7.0.1", 667 - "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", 668 - "wrap-ansi": "^8.1.0", 669 - "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" 670 - }, 671 - "engines": { 672 - "node": ">=12" 673 - } 674 - }, 675 - "node_modules/@jridgewell/gen-mapping": { 676 - "version": "0.3.8", 677 - "license": "MIT", 678 - "dependencies": { 679 - "@jridgewell/set-array": "^1.2.1", 680 - "@jridgewell/sourcemap-codec": "^1.4.10", 681 - "@jridgewell/trace-mapping": "^0.3.24" 682 - }, 683 - "engines": { 684 - "node": ">=6.0.0" 685 - } 686 - }, 687 - "node_modules/@jridgewell/resolve-uri": { 688 - "version": "3.1.2", 689 - "license": "MIT", 690 - "engines": { 691 - "node": ">=6.0.0" 692 - } 693 - }, 694 - "node_modules/@jridgewell/set-array": { 695 - "version": "1.2.1", 696 - "license": "MIT", 697 - "engines": { 698 - "node": ">=6.0.0" 699 - } 700 - }, 701 - "node_modules/@jridgewell/sourcemap-codec": { 702 - "version": "1.5.0", 703 - "license": "MIT" 704 - }, 705 - "node_modules/@jridgewell/trace-mapping": { 706 - "version": "0.3.25", 707 - "license": "MIT", 708 - "dependencies": { 709 - "@jridgewell/resolve-uri": "^3.1.0", 710 - "@jridgewell/sourcemap-codec": "^1.4.14" 711 - } 712 - }, 713 - "node_modules/@mantine/core": { 714 - "version": "7.16.1", 715 - "license": "MIT", 716 - "dependencies": { 717 - "@floating-ui/react": "^0.26.28", 718 - "clsx": "^2.1.1", 719 - "react-number-format": "^5.4.3", 720 - "react-remove-scroll": "^2.6.2", 721 - "react-textarea-autosize": "8.5.6", 722 - "type-fest": "^4.27.0" 723 - }, 724 - "peerDependencies": { 725 - "@mantine/hooks": "7.16.1", 726 - "react": "^18.x || ^19.x", 727 - "react-dom": "^18.x || ^19.x" 728 - } 729 - }, 730 - "node_modules/@mantine/form": { 731 - "version": "7.16.1", 732 - "license": "MIT", 733 - "dependencies": { 734 - "fast-deep-equal": "^3.1.3", 735 - "klona": "^2.0.6" 736 - }, 737 - "peerDependencies": { 738 - "react": "^18.x || ^19.x" 739 - } 740 - }, 741 - "node_modules/@mantine/hooks": { 742 - "version": "7.16.1", 743 - "license": "MIT", 744 - "peerDependencies": { 745 - "react": "^18.x || ^19.x" 746 - } 747 - }, 748 - "node_modules/@nodelib/fs.scandir": { 749 - "version": "2.1.5", 750 - "license": "MIT", 751 - "dependencies": { 752 - "@nodelib/fs.stat": "2.0.5", 753 - "run-parallel": "^1.1.9" 754 - }, 755 - "engines": { 756 - "node": ">= 8" 757 - } 758 - }, 759 - "node_modules/@nodelib/fs.stat": { 760 - "version": "2.0.5", 761 - "license": "MIT", 762 - "engines": { 763 - "node": ">= 8" 764 - } 765 - }, 766 - "node_modules/@nodelib/fs.walk": { 767 - "version": "1.2.8", 768 - "license": "MIT", 769 - "dependencies": { 770 - "@nodelib/fs.scandir": "2.1.5", 771 - "fastq": "^1.6.0" 772 - }, 773 - "engines": { 774 - "node": ">= 8" 775 - } 776 - }, 777 - "node_modules/@pkgjs/parseargs": { 778 - "version": "0.11.0", 779 - "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", 780 - "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", 781 - "license": "MIT", 782 - "optional": true, 783 - "engines": { 784 - "node": ">=14" 785 - } 786 - }, 787 - "node_modules/@radix-ui/primitive": { 788 - "version": "1.1.1", 789 - "resolved": "https://registry.npmjs.org/@radix-ui/primitive/-/primitive-1.1.1.tgz", 790 - "integrity": "sha512-SJ31y+Q/zAyShtXJc8x83i9TYdbAfHZ++tUZnvjJJqFjzsdUnKsxPL6IEtBlxKkU7yzer//GQtZSV4GbldL3YA==", 791 - "license": "MIT" 792 - }, 793 - "node_modules/@radix-ui/react-collection": { 794 - "version": "1.1.1", 795 - "resolved": "https://registry.npmjs.org/@radix-ui/react-collection/-/react-collection-1.1.1.tgz", 796 - "integrity": "sha512-LwT3pSho9Dljg+wY2KN2mrrh6y3qELfftINERIzBUO9e0N+t0oMTyn3k9iv+ZqgrwGkRnLpNJrsMv9BZlt2yuA==", 797 - "license": "MIT", 798 - "dependencies": { 799 - "@radix-ui/react-compose-refs": "1.1.1", 800 - "@radix-ui/react-context": "1.1.1", 801 - "@radix-ui/react-primitive": "2.0.1", 802 - "@radix-ui/react-slot": "1.1.1" 803 - }, 804 - "peerDependencies": { 805 - "@types/react": "*", 806 - "@types/react-dom": "*", 807 - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", 808 - "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" 809 - }, 810 - "peerDependenciesMeta": { 811 - "@types/react": { 812 - "optional": true 813 - }, 814 - "@types/react-dom": { 815 - "optional": true 816 - } 817 - } 818 - }, 819 - "node_modules/@radix-ui/react-compose-refs": { 820 - "version": "1.1.1", 821 - "resolved": "https://registry.npmjs.org/@radix-ui/react-compose-refs/-/react-compose-refs-1.1.1.tgz", 822 - "integrity": "sha512-Y9VzoRDSJtgFMUCoiZBDVo084VQ5hfpXxVE+NgkdNsjiDBByiImMZKKhxMwCbdHvhlENG6a833CbFkOQvTricw==", 823 - "license": "MIT", 824 - "peerDependencies": { 825 - "@types/react": "*", 826 - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" 827 - }, 828 - "peerDependenciesMeta": { 829 - "@types/react": { 830 - "optional": true 831 - } 832 - } 833 - }, 834 - "node_modules/@radix-ui/react-context": { 835 - "version": "1.1.1", 836 - "resolved": "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.1.tgz", 837 - "integrity": "sha512-UASk9zi+crv9WteK/NU4PLvOoL3OuE6BWVKNF6hPRBtYBDXQ2u5iu3O59zUlJiTVvkyuycnqrztsHVJwcK9K+Q==", 838 - "license": "MIT", 839 - "peerDependencies": { 840 - "@types/react": "*", 841 - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" 842 - }, 843 - "peerDependenciesMeta": { 844 - "@types/react": { 845 - "optional": true 846 - } 847 - } 848 - }, 849 - "node_modules/@radix-ui/react-dialog": { 850 - "version": "1.1.5", 851 - "resolved": "https://registry.npmjs.org/@radix-ui/react-dialog/-/react-dialog-1.1.5.tgz", 852 - "integrity": "sha512-LaO3e5h/NOEL4OfXjxD43k9Dx+vn+8n+PCFt6uhX/BADFflllyv3WJG6rgvvSVBxpTch938Qq/LGc2MMxipXPw==", 853 - "license": "MIT", 854 - "dependencies": { 855 - "@radix-ui/primitive": "1.1.1", 856 - "@radix-ui/react-compose-refs": "1.1.1", 857 - "@radix-ui/react-context": "1.1.1", 858 - "@radix-ui/react-dismissable-layer": "1.1.4", 859 - "@radix-ui/react-focus-guards": "1.1.1", 860 - "@radix-ui/react-focus-scope": "1.1.1", 861 - "@radix-ui/react-id": "1.1.0", 862 - "@radix-ui/react-portal": "1.1.3", 863 - "@radix-ui/react-presence": "1.1.2", 864 - "@radix-ui/react-primitive": "2.0.1", 865 - "@radix-ui/react-slot": "1.1.1", 866 - "@radix-ui/react-use-controllable-state": "1.1.0", 867 - "aria-hidden": "^1.2.4", 868 - "react-remove-scroll": "^2.6.2" 869 - }, 870 - "peerDependencies": { 871 - "@types/react": "*", 872 - "@types/react-dom": "*", 873 - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", 874 - "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" 875 - }, 876 - "peerDependenciesMeta": { 877 - "@types/react": { 878 - "optional": true 879 - }, 880 - "@types/react-dom": { 881 - "optional": true 882 - } 883 - } 884 - }, 885 - "node_modules/@radix-ui/react-direction": { 886 - "version": "1.1.0", 887 - "resolved": "https://registry.npmjs.org/@radix-ui/react-direction/-/react-direction-1.1.0.tgz", 888 - "integrity": "sha512-BUuBvgThEiAXh2DWu93XsT+a3aWrGqolGlqqw5VU1kG7p/ZH2cuDlM1sRLNnY3QcBS69UIz2mcKhMxDsdewhjg==", 889 - "license": "MIT", 890 - "peerDependencies": { 891 - "@types/react": "*", 892 - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" 893 - }, 894 - "peerDependenciesMeta": { 895 - "@types/react": { 896 - "optional": true 897 - } 898 - } 899 - }, 900 - "node_modules/@radix-ui/react-dismissable-layer": { 901 - "version": "1.1.4", 902 - "resolved": "https://registry.npmjs.org/@radix-ui/react-dismissable-layer/-/react-dismissable-layer-1.1.4.tgz", 903 - "integrity": "sha512-XDUI0IVYVSwjMXxM6P4Dfti7AH+Y4oS/TB+sglZ/EXc7cqLwGAmp1NlMrcUjj7ks6R5WTZuWKv44FBbLpwU3sA==", 904 - "license": "MIT", 905 - "dependencies": { 906 - "@radix-ui/primitive": "1.1.1", 907 - "@radix-ui/react-compose-refs": "1.1.1", 908 - "@radix-ui/react-primitive": "2.0.1", 909 - "@radix-ui/react-use-callback-ref": "1.1.0", 910 - "@radix-ui/react-use-escape-keydown": "1.1.0" 911 - }, 912 - "peerDependencies": { 913 - "@types/react": "*", 914 - "@types/react-dom": "*", 915 - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", 916 - "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" 917 - }, 918 - "peerDependenciesMeta": { 919 - "@types/react": { 920 - "optional": true 921 - }, 922 - "@types/react-dom": { 923 - "optional": true 924 - } 925 - } 926 - }, 927 - "node_modules/@radix-ui/react-focus-guards": { 928 - "version": "1.1.1", 929 - "resolved": "https://registry.npmjs.org/@radix-ui/react-focus-guards/-/react-focus-guards-1.1.1.tgz", 930 - "integrity": "sha512-pSIwfrT1a6sIoDASCSpFwOasEwKTZWDw/iBdtnqKO7v6FeOzYJ7U53cPzYFVR3geGGXgVHaH+CdngrrAzqUGxg==", 931 - "license": "MIT", 932 - "peerDependencies": { 933 - "@types/react": "*", 934 - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" 935 - }, 936 - "peerDependenciesMeta": { 937 - "@types/react": { 938 - "optional": true 939 - } 940 - } 941 - }, 942 - "node_modules/@radix-ui/react-focus-scope": { 943 - "version": "1.1.1", 944 - "resolved": "https://registry.npmjs.org/@radix-ui/react-focus-scope/-/react-focus-scope-1.1.1.tgz", 945 - "integrity": "sha512-01omzJAYRxXdG2/he/+xy+c8a8gCydoQ1yOxnWNcRhrrBW5W+RQJ22EK1SaO8tb3WoUsuEw7mJjBozPzihDFjA==", 946 - "license": "MIT", 947 - "dependencies": { 948 - "@radix-ui/react-compose-refs": "1.1.1", 949 - "@radix-ui/react-primitive": "2.0.1", 950 - "@radix-ui/react-use-callback-ref": "1.1.0" 951 - }, 952 - "peerDependencies": { 953 - "@types/react": "*", 954 - "@types/react-dom": "*", 955 - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", 956 - "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" 957 - }, 958 - "peerDependenciesMeta": { 959 - "@types/react": { 960 - "optional": true 961 - }, 962 - "@types/react-dom": { 963 - "optional": true 964 - } 965 - } 966 - }, 967 - "node_modules/@radix-ui/react-id": { 968 - "version": "1.1.0", 969 - "resolved": "https://registry.npmjs.org/@radix-ui/react-id/-/react-id-1.1.0.tgz", 970 - "integrity": "sha512-EJUrI8yYh7WOjNOqpoJaf1jlFIH2LvtgAl+YcFqNCa+4hj64ZXmPkAKOFs/ukjz3byN6bdb/AVUqHkI8/uWWMA==", 971 - "license": "MIT", 972 - "dependencies": { 973 - "@radix-ui/react-use-layout-effect": "1.1.0" 974 - }, 975 - "peerDependencies": { 976 - "@types/react": "*", 977 - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" 978 - }, 979 - "peerDependenciesMeta": { 980 - "@types/react": { 981 - "optional": true 982 - } 983 - } 984 - }, 985 - "node_modules/@radix-ui/react-label": { 986 - "version": "2.1.1", 987 - "resolved": "https://registry.npmjs.org/@radix-ui/react-label/-/react-label-2.1.1.tgz", 988 - "integrity": "sha512-UUw5E4e/2+4kFMH7+YxORXGWggtY6sM8WIwh5RZchhLuUg2H1hc98Py+pr8HMz6rdaYrK2t296ZEjYLOCO5uUw==", 989 - "license": "MIT", 990 - "dependencies": { 991 - "@radix-ui/react-primitive": "2.0.1" 992 - }, 993 - "peerDependencies": { 994 - "@types/react": "*", 995 - "@types/react-dom": "*", 996 - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", 997 - "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" 998 - }, 999 - "peerDependenciesMeta": { 1000 - "@types/react": { 1001 - "optional": true 1002 - }, 1003 - "@types/react-dom": { 1004 - "optional": true 1005 - } 1006 - } 1007 - }, 1008 - "node_modules/@radix-ui/react-portal": { 1009 - "version": "1.1.3", 1010 - "resolved": "https://registry.npmjs.org/@radix-ui/react-portal/-/react-portal-1.1.3.tgz", 1011 - "integrity": "sha512-NciRqhXnGojhT93RPyDaMPfLH3ZSl4jjIFbZQ1b/vxvZEdHsBZ49wP9w8L3HzUQwep01LcWtkUvm0OVB5JAHTw==", 1012 - "license": "MIT", 1013 - "dependencies": { 1014 - "@radix-ui/react-primitive": "2.0.1", 1015 - "@radix-ui/react-use-layout-effect": "1.1.0" 1016 - }, 1017 - "peerDependencies": { 1018 - "@types/react": "*", 1019 - "@types/react-dom": "*", 1020 - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", 1021 - "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" 1022 - }, 1023 - "peerDependenciesMeta": { 1024 - "@types/react": { 1025 - "optional": true 1026 - }, 1027 - "@types/react-dom": { 1028 - "optional": true 1029 - } 1030 - } 1031 - }, 1032 - "node_modules/@radix-ui/react-presence": { 1033 - "version": "1.1.2", 1034 - "resolved": "https://registry.npmjs.org/@radix-ui/react-presence/-/react-presence-1.1.2.tgz", 1035 - "integrity": "sha512-18TFr80t5EVgL9x1SwF/YGtfG+l0BS0PRAlCWBDoBEiDQjeKgnNZRVJp/oVBl24sr3Gbfwc/Qpj4OcWTQMsAEg==", 1036 - "license": "MIT", 1037 - "dependencies": { 1038 - "@radix-ui/react-compose-refs": "1.1.1", 1039 - "@radix-ui/react-use-layout-effect": "1.1.0" 1040 - }, 1041 - "peerDependencies": { 1042 - "@types/react": "*", 1043 - "@types/react-dom": "*", 1044 - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", 1045 - "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" 1046 - }, 1047 - "peerDependenciesMeta": { 1048 - "@types/react": { 1049 - "optional": true 1050 - }, 1051 - "@types/react-dom": { 1052 - "optional": true 1053 - } 1054 - } 1055 - }, 1056 - "node_modules/@radix-ui/react-primitive": { 1057 - "version": "2.0.1", 1058 - "resolved": "https://registry.npmjs.org/@radix-ui/react-primitive/-/react-primitive-2.0.1.tgz", 1059 - "integrity": "sha512-sHCWTtxwNn3L3fH8qAfnF3WbUZycW93SM1j3NFDzXBiz8D6F5UTTy8G1+WFEaiCdvCVRJWj6N2R4Xq6HdiHmDg==", 1060 - "license": "MIT", 1061 - "dependencies": { 1062 - "@radix-ui/react-slot": "1.1.1" 1063 - }, 1064 - "peerDependencies": { 1065 - "@types/react": "*", 1066 - "@types/react-dom": "*", 1067 - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", 1068 - "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" 1069 - }, 1070 - "peerDependenciesMeta": { 1071 - "@types/react": { 1072 - "optional": true 1073 - }, 1074 - "@types/react-dom": { 1075 - "optional": true 1076 - } 1077 - } 1078 - }, 1079 - "node_modules/@radix-ui/react-roving-focus": { 1080 - "version": "1.1.1", 1081 - "resolved": "https://registry.npmjs.org/@radix-ui/react-roving-focus/-/react-roving-focus-1.1.1.tgz", 1082 - "integrity": "sha512-QE1RoxPGJ/Nm8Qmk0PxP8ojmoaS67i0s7hVssS7KuI2FQoc/uzVlZsqKfQvxPE6D8hICCPHJ4D88zNhT3OOmkw==", 1083 - "license": "MIT", 1084 - "dependencies": { 1085 - "@radix-ui/primitive": "1.1.1", 1086 - "@radix-ui/react-collection": "1.1.1", 1087 - "@radix-ui/react-compose-refs": "1.1.1", 1088 - "@radix-ui/react-context": "1.1.1", 1089 - "@radix-ui/react-direction": "1.1.0", 1090 - "@radix-ui/react-id": "1.1.0", 1091 - "@radix-ui/react-primitive": "2.0.1", 1092 - "@radix-ui/react-use-callback-ref": "1.1.0", 1093 - "@radix-ui/react-use-controllable-state": "1.1.0" 1094 - }, 1095 - "peerDependencies": { 1096 - "@types/react": "*", 1097 - "@types/react-dom": "*", 1098 - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", 1099 - "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" 1100 - }, 1101 - "peerDependenciesMeta": { 1102 - "@types/react": { 1103 - "optional": true 1104 - }, 1105 - "@types/react-dom": { 1106 - "optional": true 1107 - } 1108 - } 1109 - }, 1110 - "node_modules/@radix-ui/react-slot": { 1111 - "version": "1.1.1", 1112 - "resolved": "https://registry.npmjs.org/@radix-ui/react-slot/-/react-slot-1.1.1.tgz", 1113 - "integrity": "sha512-RApLLOcINYJA+dMVbOju7MYv1Mb2EBp2nH4HdDzXTSyaR5optlm6Otrz1euW3HbdOR8UmmFK06TD+A9frYWv+g==", 1114 - "license": "MIT", 1115 - "dependencies": { 1116 - "@radix-ui/react-compose-refs": "1.1.1" 1117 - }, 1118 - "peerDependencies": { 1119 - "@types/react": "*", 1120 - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" 1121 - }, 1122 - "peerDependenciesMeta": { 1123 - "@types/react": { 1124 - "optional": true 1125 - } 1126 - } 1127 - }, 1128 - "node_modules/@radix-ui/react-tabs": { 1129 - "version": "1.1.2", 1130 - "resolved": "https://registry.npmjs.org/@radix-ui/react-tabs/-/react-tabs-1.1.2.tgz", 1131 - "integrity": "sha512-9u/tQJMcC2aGq7KXpGivMm1mgq7oRJKXphDwdypPd/j21j/2znamPU8WkXgnhUaTrSFNIt8XhOyCAupg8/GbwQ==", 1132 - "license": "MIT", 1133 - "dependencies": { 1134 - "@radix-ui/primitive": "1.1.1", 1135 - "@radix-ui/react-context": "1.1.1", 1136 - "@radix-ui/react-direction": "1.1.0", 1137 - "@radix-ui/react-id": "1.1.0", 1138 - "@radix-ui/react-presence": "1.1.2", 1139 - "@radix-ui/react-primitive": "2.0.1", 1140 - "@radix-ui/react-roving-focus": "1.1.1", 1141 - "@radix-ui/react-use-controllable-state": "1.1.0" 1142 - }, 1143 - "peerDependencies": { 1144 - "@types/react": "*", 1145 - "@types/react-dom": "*", 1146 - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", 1147 - "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" 1148 - }, 1149 - "peerDependenciesMeta": { 1150 - "@types/react": { 1151 - "optional": true 1152 - }, 1153 - "@types/react-dom": { 1154 - "optional": true 1155 - } 1156 - } 1157 - }, 1158 - "node_modules/@radix-ui/react-toast": { 1159 - "version": "1.2.5", 1160 - "resolved": "https://registry.npmjs.org/@radix-ui/react-toast/-/react-toast-1.2.5.tgz", 1161 - "integrity": "sha512-ZzUsAaOx8NdXZZKcFNDhbSlbsCUy8qQWmzTdgrlrhhZAOx2ofLtKrBDW9fkqhFvXgmtv560Uj16pkLkqML7SHA==", 1162 - "license": "MIT", 1163 - "dependencies": { 1164 - "@radix-ui/primitive": "1.1.1", 1165 - "@radix-ui/react-collection": "1.1.1", 1166 - "@radix-ui/react-compose-refs": "1.1.1", 1167 - "@radix-ui/react-context": "1.1.1", 1168 - "@radix-ui/react-dismissable-layer": "1.1.4", 1169 - "@radix-ui/react-portal": "1.1.3", 1170 - "@radix-ui/react-presence": "1.1.2", 1171 - "@radix-ui/react-primitive": "2.0.1", 1172 - "@radix-ui/react-use-callback-ref": "1.1.0", 1173 - "@radix-ui/react-use-controllable-state": "1.1.0", 1174 - "@radix-ui/react-use-layout-effect": "1.1.0", 1175 - "@radix-ui/react-visually-hidden": "1.1.1" 1176 - }, 1177 - "peerDependencies": { 1178 - "@types/react": "*", 1179 - "@types/react-dom": "*", 1180 - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", 1181 - "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" 1182 - }, 1183 - "peerDependenciesMeta": { 1184 - "@types/react": { 1185 - "optional": true 1186 - }, 1187 - "@types/react-dom": { 1188 - "optional": true 1189 - } 1190 - } 1191 - }, 1192 - "node_modules/@radix-ui/react-use-callback-ref": { 1193 - "version": "1.1.0", 1194 - "resolved": "https://registry.npmjs.org/@radix-ui/react-use-callback-ref/-/react-use-callback-ref-1.1.0.tgz", 1195 - "integrity": "sha512-CasTfvsy+frcFkbXtSJ2Zu9JHpN8TYKxkgJGWbjiZhFivxaeW7rMeZt7QELGVLaYVfFMsKHjb7Ak0nMEe+2Vfw==", 1196 - "license": "MIT", 1197 - "peerDependencies": { 1198 - "@types/react": "*", 1199 - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" 1200 - }, 1201 - "peerDependenciesMeta": { 1202 - "@types/react": { 1203 - "optional": true 1204 - } 1205 - } 1206 - }, 1207 - "node_modules/@radix-ui/react-use-controllable-state": { 1208 - "version": "1.1.0", 1209 - "resolved": "https://registry.npmjs.org/@radix-ui/react-use-controllable-state/-/react-use-controllable-state-1.1.0.tgz", 1210 - "integrity": "sha512-MtfMVJiSr2NjzS0Aa90NPTnvTSg6C/JLCV7ma0W6+OMV78vd8OyRpID+Ng9LxzsPbLeuBnWBA1Nq30AtBIDChw==", 1211 - "license": "MIT", 1212 - "dependencies": { 1213 - "@radix-ui/react-use-callback-ref": "1.1.0" 1214 - }, 1215 - "peerDependencies": { 1216 - "@types/react": "*", 1217 - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" 1218 - }, 1219 - "peerDependenciesMeta": { 1220 - "@types/react": { 1221 - "optional": true 1222 - } 1223 - } 1224 - }, 1225 - "node_modules/@radix-ui/react-use-escape-keydown": { 1226 - "version": "1.1.0", 1227 - "resolved": "https://registry.npmjs.org/@radix-ui/react-use-escape-keydown/-/react-use-escape-keydown-1.1.0.tgz", 1228 - "integrity": "sha512-L7vwWlR1kTTQ3oh7g1O0CBF3YCyyTj8NmhLR+phShpyA50HCfBFKVJTpshm9PzLiKmehsrQzTYTpX9HvmC9rhw==", 1229 - "license": "MIT", 1230 - "dependencies": { 1231 - "@radix-ui/react-use-callback-ref": "1.1.0" 1232 - }, 1233 - "peerDependencies": { 1234 - "@types/react": "*", 1235 - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" 1236 - }, 1237 - "peerDependenciesMeta": { 1238 - "@types/react": { 1239 - "optional": true 1240 - } 1241 - } 1242 - }, 1243 - "node_modules/@radix-ui/react-use-layout-effect": { 1244 - "version": "1.1.0", 1245 - "resolved": "https://registry.npmjs.org/@radix-ui/react-use-layout-effect/-/react-use-layout-effect-1.1.0.tgz", 1246 - "integrity": "sha512-+FPE0rOdziWSrH9athwI1R0HDVbWlEhd+FR+aSDk4uWGmSJ9Z54sdZVDQPZAinJhJXwfT+qnj969mCsT2gfm5w==", 1247 - "license": "MIT", 1248 - "peerDependencies": { 1249 - "@types/react": "*", 1250 - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" 1251 - }, 1252 - "peerDependenciesMeta": { 1253 - "@types/react": { 1254 - "optional": true 1255 - } 1256 - } 1257 - }, 1258 - "node_modules/@radix-ui/react-visually-hidden": { 1259 - "version": "1.1.1", 1260 - "resolved": "https://registry.npmjs.org/@radix-ui/react-visually-hidden/-/react-visually-hidden-1.1.1.tgz", 1261 - "integrity": "sha512-vVfA2IZ9q/J+gEamvj761Oq1FpWgCDaNOOIfbPVp2MVPLEomUr5+Vf7kJGwQ24YxZSlQVar7Bes8kyTo5Dshpg==", 1262 - "license": "MIT", 1263 - "dependencies": { 1264 - "@radix-ui/react-primitive": "2.0.1" 1265 - }, 1266 - "peerDependencies": { 1267 - "@types/react": "*", 1268 - "@types/react-dom": "*", 1269 - "react": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", 1270 - "react-dom": "^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc" 1271 - }, 1272 - "peerDependenciesMeta": { 1273 - "@types/react": { 1274 - "optional": true 1275 - }, 1276 - "@types/react-dom": { 1277 - "optional": true 1278 - } 1279 - } 1280 - }, 1281 - "node_modules/@rollup/rollup-darwin-arm64": { 1282 - "version": "4.32.0", 1283 - "cpu": [ 1284 - "arm64" 1285 - ], 1286 - "license": "MIT", 1287 - "optional": true, 1288 - "os": [ 1289 - "darwin" 1290 - ] 1291 - }, 1292 - "node_modules/@tailwindcss/node": { 1293 - "version": "4.0.0", 1294 - "resolved": "https://registry.npmjs.org/@tailwindcss/node/-/node-4.0.0.tgz", 1295 - "integrity": "sha512-tfG2uBvo6j6kDIPmntxwXggCOZAt7SkpAXJ6pTIYirNdk5FBqh/CZZ9BZPpgcl/tNFLs6zc4yghM76sqiELG9g==", 1296 - "license": "MIT", 1297 - "dependencies": { 1298 - "enhanced-resolve": "^5.18.0", 1299 - "jiti": "^2.4.2", 1300 - "tailwindcss": "4.0.0" 1301 - } 1302 - }, 1303 - "node_modules/@tailwindcss/node/node_modules/tailwindcss": { 1304 - "version": "4.0.0", 1305 - "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-4.0.0.tgz", 1306 - "integrity": "sha512-ULRPI3A+e39T7pSaf1xoi58AqqJxVCLg8F/uM5A3FadUbnyDTgltVnXJvdkTjwCOGA6NazqHVcwPJC5h2vRYVQ==", 1307 - "license": "MIT" 1308 - }, 1309 - "node_modules/@tailwindcss/oxide": { 1310 - "version": "4.0.0", 1311 - "resolved": "https://registry.npmjs.org/@tailwindcss/oxide/-/oxide-4.0.0.tgz", 1312 - "integrity": "sha512-W3FjpJgy4VV1JiL7iBYDf2n/WkeDg1Il+0Q7eWnqPyvkPPCo/Mbwc5BiaT7dfBNV6tQKAhVE34rU5xl8pSl50w==", 1313 - "license": "MIT", 1314 - "engines": { 1315 - "node": ">= 10" 1316 - }, 1317 - "optionalDependencies": { 1318 - "@tailwindcss/oxide-android-arm64": "4.0.0", 1319 - "@tailwindcss/oxide-darwin-arm64": "4.0.0", 1320 - "@tailwindcss/oxide-darwin-x64": "4.0.0", 1321 - "@tailwindcss/oxide-freebsd-x64": "4.0.0", 1322 - "@tailwindcss/oxide-linux-arm-gnueabihf": "4.0.0", 1323 - "@tailwindcss/oxide-linux-arm64-gnu": "4.0.0", 1324 - "@tailwindcss/oxide-linux-arm64-musl": "4.0.0", 1325 - "@tailwindcss/oxide-linux-x64-gnu": "4.0.0", 1326 - "@tailwindcss/oxide-linux-x64-musl": "4.0.0", 1327 - "@tailwindcss/oxide-win32-arm64-msvc": "4.0.0", 1328 - "@tailwindcss/oxide-win32-x64-msvc": "4.0.0" 1329 - } 1330 - }, 1331 - "node_modules/@tailwindcss/oxide-android-arm64": { 1332 - "version": "4.0.0", 1333 - "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-android-arm64/-/oxide-android-arm64-4.0.0.tgz", 1334 - "integrity": "sha512-EAhjU0+FIdyGPR+7MbBWubLLPtmOu+p7c2egTTFBRk/n//zYjNvVK0WhcBK5Y7oUB5mo4EjA2mCbY7dcEMWSRw==", 1335 - "cpu": [ 1336 - "arm64" 1337 - ], 1338 - "license": "MIT", 1339 - "optional": true, 1340 - "os": [ 1341 - "android" 1342 - ], 1343 - "engines": { 1344 - "node": ">= 10" 1345 - } 1346 - }, 1347 - "node_modules/@tailwindcss/oxide-darwin-arm64": { 1348 - "version": "4.0.0", 1349 - "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-darwin-arm64/-/oxide-darwin-arm64-4.0.0.tgz", 1350 - "integrity": "sha512-hdz4xnSWS11cIp+7ye+3dGHqs0X33z+BXXTtgPOguDWVa+TdXUzwxonklSzf5wlJFuot3dv5eWzhlNai0oYYQg==", 1351 - "cpu": [ 1352 - "arm64" 1353 - ], 1354 - "license": "MIT", 1355 - "optional": true, 1356 - "os": [ 1357 - "darwin" 1358 - ], 1359 - "engines": { 1360 - "node": ">= 10" 1361 - } 1362 - }, 1363 - "node_modules/@tailwindcss/oxide-darwin-x64": { 1364 - "version": "4.0.0", 1365 - "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-darwin-x64/-/oxide-darwin-x64-4.0.0.tgz", 1366 - "integrity": "sha512-+dOUUaXTkPKKhtUI9QtVaYg+MpmLh2CN0dHohiYXaBirEyPMkjaT0zbRgzQlNnQWjCVVXPQluIEb0OMEjSTH+Q==", 1367 - "cpu": [ 1368 - "x64" 1369 - ], 1370 - "license": "MIT", 1371 - "optional": true, 1372 - "os": [ 1373 - "darwin" 1374 - ], 1375 - "engines": { 1376 - "node": ">= 10" 1377 - } 1378 - }, 1379 - "node_modules/@tailwindcss/oxide-freebsd-x64": { 1380 - "version": "4.0.0", 1381 - "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-freebsd-x64/-/oxide-freebsd-x64-4.0.0.tgz", 1382 - "integrity": "sha512-CJhGDhxnrmu4SwyC62fA+wP24MhA/TZlIhRHqg1kRuIHoGoVR2uSSm1qxTxU37tSSZj8Up0q6jsBJCAP4k7rgQ==", 1383 - "cpu": [ 1384 - "x64" 1385 - ], 1386 - "license": "MIT", 1387 - "optional": true, 1388 - "os": [ 1389 - "freebsd" 1390 - ], 1391 - "engines": { 1392 - "node": ">= 10" 1393 - } 1394 - }, 1395 - "node_modules/@tailwindcss/oxide-linux-arm-gnueabihf": { 1396 - "version": "4.0.0", 1397 - "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-arm-gnueabihf/-/oxide-linux-arm-gnueabihf-4.0.0.tgz", 1398 - "integrity": "sha512-Wy7Av0xzXfY2ujZBcYy4+7GQm25/J1iHvlQU2CfwdDCuPWfIjYzR6kggz+uVdSJyKV2s64znchBxRE8kV4uXSA==", 1399 - "cpu": [ 1400 - "arm" 1401 - ], 1402 - "license": "MIT", 1403 - "optional": true, 1404 - "os": [ 1405 - "linux" 1406 - ], 1407 - "engines": { 1408 - "node": ">= 10" 1409 - } 1410 - }, 1411 - "node_modules/@tailwindcss/oxide-linux-arm64-gnu": { 1412 - "version": "4.0.0", 1413 - "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-arm64-gnu/-/oxide-linux-arm64-gnu-4.0.0.tgz", 1414 - "integrity": "sha512-srwBo2l6pvM0swBntc1ucuhGsfFOLkqPRFQ3dWARRTfSkL1U9nAsob2MKc/n47Eva/W9pZZgMOuf7rDw8pK1Ew==", 1415 - "cpu": [ 1416 - "arm64" 1417 - ], 1418 - "license": "MIT", 1419 - "optional": true, 1420 - "os": [ 1421 - "linux" 1422 - ], 1423 - "engines": { 1424 - "node": ">= 10" 1425 - } 1426 - }, 1427 - "node_modules/@tailwindcss/oxide-linux-arm64-musl": { 1428 - "version": "4.0.0", 1429 - "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-arm64-musl/-/oxide-linux-arm64-musl-4.0.0.tgz", 1430 - "integrity": "sha512-abhusswkduYWuezkBmgo0K0/erGq3M4Se5xP0fhc/0dKs0X/rJUYYCFWntHb3IGh3aVzdQ0SXJs93P76DbUqtw==", 1431 - "cpu": [ 1432 - "arm64" 1433 - ], 1434 - "license": "MIT", 1435 - "optional": true, 1436 - "os": [ 1437 - "linux" 1438 - ], 1439 - "engines": { 1440 - "node": ">= 10" 1441 - } 1442 - }, 1443 - "node_modules/@tailwindcss/oxide-linux-x64-gnu": { 1444 - "version": "4.0.0", 1445 - "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-x64-gnu/-/oxide-linux-x64-gnu-4.0.0.tgz", 1446 - "integrity": "sha512-hGtRYIUEx377/HlU49+jvVKKwU1MDSKYSMMs0JFO2Wp7LGxk5+0j5+RBk9NFnmp/lbp32yPTgIOO5m1BmDq36A==", 1447 - "cpu": [ 1448 - "x64" 1449 - ], 1450 - "license": "MIT", 1451 - "optional": true, 1452 - "os": [ 1453 - "linux" 1454 - ], 1455 - "engines": { 1456 - "node": ">= 10" 1457 - } 1458 - }, 1459 - "node_modules/@tailwindcss/oxide-linux-x64-musl": { 1460 - "version": "4.0.0", 1461 - "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-linux-x64-musl/-/oxide-linux-x64-musl-4.0.0.tgz", 1462 - "integrity": "sha512-7xgQgSAThs0I14VAgmxpJnK6XFSZBxHMGoDXkLyYkEnu+8WRQMbCP93dkCUn2PIv+Q+JulRgc00PJ09uORSLXQ==", 1463 - "cpu": [ 1464 - "x64" 1465 - ], 1466 - "license": "MIT", 1467 - "optional": true, 1468 - "os": [ 1469 - "linux" 1470 - ], 1471 - "engines": { 1472 - "node": ">= 10" 1473 - } 1474 - }, 1475 - "node_modules/@tailwindcss/oxide-win32-arm64-msvc": { 1476 - "version": "4.0.0", 1477 - "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-win32-arm64-msvc/-/oxide-win32-arm64-msvc-4.0.0.tgz", 1478 - "integrity": "sha512-qEcgTIPcWY5ZE7f6VxQ/JPrSFMcehzVIlZj7sGE3mVd5YWreAT+Fl1vSP8q2pjnWXn0avZG3Iw7a2hJQAm+fTQ==", 1479 - "cpu": [ 1480 - "arm64" 1481 - ], 1482 - "license": "MIT", 1483 - "optional": true, 1484 - "os": [ 1485 - "win32" 1486 - ], 1487 - "engines": { 1488 - "node": ">= 10" 1489 - } 1490 - }, 1491 - "node_modules/@tailwindcss/oxide-win32-x64-msvc": { 1492 - "version": "4.0.0", 1493 - "resolved": "https://registry.npmjs.org/@tailwindcss/oxide-win32-x64-msvc/-/oxide-win32-x64-msvc-4.0.0.tgz", 1494 - "integrity": "sha512-bqT0AY8RXb8GMDy28JtngvqaOSB2YixbLPLvUo6I6lkvvUwA6Eqh2Tj60e2Lh7O/k083f8tYiB0WEK4wmTI7Jg==", 1495 - "cpu": [ 1496 - "x64" 1497 - ], 1498 - "license": "MIT", 1499 - "optional": true, 1500 - "os": [ 1501 - "win32" 1502 - ], 1503 - "engines": { 1504 - "node": ">= 10" 1505 - } 1506 - }, 1507 - "node_modules/@tailwindcss/vite": { 1508 - "version": "4.0.0", 1509 - "resolved": "https://registry.npmjs.org/@tailwindcss/vite/-/vite-4.0.0.tgz", 1510 - "integrity": "sha512-4uukMiU9gHui8KMPMdWic5SP1O/tmQ1NFSRNrQWmcop5evAVl/LZ6/LuWL3quEiecp2RBcRWwqJrG+mFXlRlew==", 1511 - "license": "MIT", 1512 - "dependencies": { 1513 - "@tailwindcss/node": "^4.0.0", 1514 - "@tailwindcss/oxide": "^4.0.0", 1515 - "lightningcss": "^1.29.1", 1516 - "tailwindcss": "4.0.0" 1517 - }, 1518 - "peerDependencies": { 1519 - "vite": "^5.2.0 || ^6" 1520 - } 1521 - }, 1522 - "node_modules/@tailwindcss/vite/node_modules/tailwindcss": { 1523 - "version": "4.0.0", 1524 - "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-4.0.0.tgz", 1525 - "integrity": "sha512-ULRPI3A+e39T7pSaf1xoi58AqqJxVCLg8F/uM5A3FadUbnyDTgltVnXJvdkTjwCOGA6NazqHVcwPJC5h2vRYVQ==", 1526 - "license": "MIT" 1527 - }, 1528 - "node_modules/@types/babel__core": { 1529 - "version": "7.20.5", 1530 - "dev": true, 1531 - "license": "MIT", 1532 - "dependencies": { 1533 - "@babel/parser": "^7.20.7", 1534 - "@babel/types": "^7.20.7", 1535 - "@types/babel__generator": "*", 1536 - "@types/babel__template": "*", 1537 - "@types/babel__traverse": "*" 1538 - } 1539 - }, 1540 - "node_modules/@types/babel__generator": { 1541 - "version": "7.6.8", 1542 - "dev": true, 1543 - "license": "MIT", 1544 - "dependencies": { 1545 - "@babel/types": "^7.0.0" 1546 - } 1547 - }, 1548 - "node_modules/@types/babel__template": { 1549 - "version": "7.4.4", 1550 - "dev": true, 1551 - "license": "MIT", 1552 - "dependencies": { 1553 - "@babel/parser": "^7.1.0", 1554 - "@babel/types": "^7.0.0" 1555 - } 1556 - }, 1557 - "node_modules/@types/babel__traverse": { 1558 - "version": "7.20.6", 1559 - "dev": true, 1560 - "license": "MIT", 1561 - "dependencies": { 1562 - "@babel/types": "^7.20.7" 1563 - } 1564 - }, 1565 - "node_modules/@types/estree": { 1566 - "version": "1.0.6", 1567 - "license": "MIT" 1568 - }, 1569 - "node_modules/@types/json-schema": { 1570 - "version": "7.0.15", 1571 - "dev": true, 1572 - "license": "MIT" 1573 - }, 1574 - "node_modules/@types/node": { 1575 - "version": "22.10.10", 1576 - "devOptional": true, 1577 - "license": "MIT", 1578 - "dependencies": { 1579 - "undici-types": "~6.20.0" 1580 - } 1581 - }, 1582 - "node_modules/@types/parse-json": { 1583 - "version": "4.0.2", 1584 - "license": "MIT" 1585 - }, 1586 - "node_modules/@types/prop-types": { 1587 - "version": "15.7.14", 1588 - "devOptional": true, 1589 - "license": "MIT" 1590 - }, 1591 - "node_modules/@types/react": { 1592 - "version": "18.3.18", 1593 - "devOptional": true, 1594 - "license": "MIT", 1595 - "dependencies": { 1596 - "@types/prop-types": "*", 1597 - "csstype": "^3.0.2" 1598 - } 1599 - }, 1600 - "node_modules/@types/react-dom": { 1601 - "version": "18.3.5", 1602 - "devOptional": true, 1603 - "license": "MIT", 1604 - "peerDependencies": { 1605 - "@types/react": "^18.0.0" 1606 - } 1607 - }, 1608 - "node_modules/@typescript-eslint/eslint-plugin": { 1609 - "version": "8.21.0", 1610 - "dev": true, 1611 - "license": "MIT", 1612 - "dependencies": { 1613 - "@eslint-community/regexpp": "^4.10.0", 1614 - "@typescript-eslint/scope-manager": "8.21.0", 1615 - "@typescript-eslint/type-utils": "8.21.0", 1616 - "@typescript-eslint/utils": "8.21.0", 1617 - "@typescript-eslint/visitor-keys": "8.21.0", 1618 - "graphemer": "^1.4.0", 1619 - "ignore": "^5.3.1", 1620 - "natural-compare": "^1.4.0", 1621 - "ts-api-utils": "^2.0.0" 1622 - }, 1623 - "engines": { 1624 - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 1625 - }, 1626 - "funding": { 1627 - "type": "opencollective", 1628 - "url": "https://opencollective.com/typescript-eslint" 1629 - }, 1630 - "peerDependencies": { 1631 - "@typescript-eslint/parser": "^8.0.0 || ^8.0.0-alpha.0", 1632 - "eslint": "^8.57.0 || ^9.0.0", 1633 - "typescript": ">=4.8.4 <5.8.0" 1634 - } 1635 - }, 1636 - "node_modules/@typescript-eslint/parser": { 1637 - "version": "8.21.0", 1638 - "dev": true, 1639 - "license": "MIT", 1640 - "dependencies": { 1641 - "@typescript-eslint/scope-manager": "8.21.0", 1642 - "@typescript-eslint/types": "8.21.0", 1643 - "@typescript-eslint/typescript-estree": "8.21.0", 1644 - "@typescript-eslint/visitor-keys": "8.21.0", 1645 - "debug": "^4.3.4" 1646 - }, 1647 - "engines": { 1648 - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 1649 - }, 1650 - "funding": { 1651 - "type": "opencollective", 1652 - "url": "https://opencollective.com/typescript-eslint" 1653 - }, 1654 - "peerDependencies": { 1655 - "eslint": "^8.57.0 || ^9.0.0", 1656 - "typescript": ">=4.8.4 <5.8.0" 1657 - } 1658 - }, 1659 - "node_modules/@typescript-eslint/scope-manager": { 1660 - "version": "8.21.0", 1661 - "dev": true, 1662 - "license": "MIT", 1663 - "dependencies": { 1664 - "@typescript-eslint/types": "8.21.0", 1665 - "@typescript-eslint/visitor-keys": "8.21.0" 1666 - }, 1667 - "engines": { 1668 - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 1669 - }, 1670 - "funding": { 1671 - "type": "opencollective", 1672 - "url": "https://opencollective.com/typescript-eslint" 1673 - } 1674 - }, 1675 - "node_modules/@typescript-eslint/type-utils": { 1676 - "version": "8.21.0", 1677 - "dev": true, 1678 - "license": "MIT", 1679 - "dependencies": { 1680 - "@typescript-eslint/typescript-estree": "8.21.0", 1681 - "@typescript-eslint/utils": "8.21.0", 1682 - "debug": "^4.3.4", 1683 - "ts-api-utils": "^2.0.0" 1684 - }, 1685 - "engines": { 1686 - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 1687 - }, 1688 - "funding": { 1689 - "type": "opencollective", 1690 - "url": "https://opencollective.com/typescript-eslint" 1691 - }, 1692 - "peerDependencies": { 1693 - "eslint": "^8.57.0 || ^9.0.0", 1694 - "typescript": ">=4.8.4 <5.8.0" 1695 - } 1696 - }, 1697 - "node_modules/@typescript-eslint/types": { 1698 - "version": "8.21.0", 1699 - "dev": true, 1700 - "license": "MIT", 1701 - "engines": { 1702 - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 1703 - }, 1704 - "funding": { 1705 - "type": "opencollective", 1706 - "url": "https://opencollective.com/typescript-eslint" 1707 - } 1708 - }, 1709 - "node_modules/@typescript-eslint/typescript-estree": { 1710 - "version": "8.21.0", 1711 - "dev": true, 1712 - "license": "MIT", 1713 - "dependencies": { 1714 - "@typescript-eslint/types": "8.21.0", 1715 - "@typescript-eslint/visitor-keys": "8.21.0", 1716 - "debug": "^4.3.4", 1717 - "fast-glob": "^3.3.2", 1718 - "is-glob": "^4.0.3", 1719 - "minimatch": "^9.0.4", 1720 - "semver": "^7.6.0", 1721 - "ts-api-utils": "^2.0.0" 1722 - }, 1723 - "engines": { 1724 - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 1725 - }, 1726 - "funding": { 1727 - "type": "opencollective", 1728 - "url": "https://opencollective.com/typescript-eslint" 1729 - }, 1730 - "peerDependencies": { 1731 - "typescript": ">=4.8.4 <5.8.0" 1732 - } 1733 - }, 1734 - "node_modules/@typescript-eslint/typescript-estree/node_modules/minimatch": { 1735 - "version": "9.0.5", 1736 - "dev": true, 1737 - "license": "ISC", 1738 - "dependencies": { 1739 - "brace-expansion": "^2.0.1" 1740 - }, 1741 - "engines": { 1742 - "node": ">=16 || 14 >=14.17" 1743 - }, 1744 - "funding": { 1745 - "url": "https://github.com/sponsors/isaacs" 1746 - } 1747 - }, 1748 - "node_modules/@typescript-eslint/typescript-estree/node_modules/minimatch/node_modules/brace-expansion": { 1749 - "version": "2.0.1", 1750 - "dev": true, 1751 - "license": "MIT", 1752 - "dependencies": { 1753 - "balanced-match": "^1.0.0" 1754 - } 1755 - }, 1756 - "node_modules/@typescript-eslint/typescript-estree/node_modules/semver": { 1757 - "version": "7.6.3", 1758 - "dev": true, 1759 - "license": "ISC", 1760 - "bin": { 1761 - "semver": "bin/semver.js" 1762 - }, 1763 - "engines": { 1764 - "node": ">=10" 1765 - } 1766 - }, 1767 - "node_modules/@typescript-eslint/utils": { 1768 - "version": "8.21.0", 1769 - "dev": true, 1770 - "license": "MIT", 1771 - "dependencies": { 1772 - "@eslint-community/eslint-utils": "^4.4.0", 1773 - "@typescript-eslint/scope-manager": "8.21.0", 1774 - "@typescript-eslint/types": "8.21.0", 1775 - "@typescript-eslint/typescript-estree": "8.21.0" 1776 - }, 1777 - "engines": { 1778 - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 1779 - }, 1780 - "funding": { 1781 - "type": "opencollective", 1782 - "url": "https://opencollective.com/typescript-eslint" 1783 - }, 1784 - "peerDependencies": { 1785 - "eslint": "^8.57.0 || ^9.0.0", 1786 - "typescript": ">=4.8.4 <5.8.0" 1787 - } 1788 - }, 1789 - "node_modules/@typescript-eslint/visitor-keys": { 1790 - "version": "8.21.0", 1791 - "dev": true, 1792 - "license": "MIT", 1793 - "dependencies": { 1794 - "@typescript-eslint/types": "8.21.0", 1795 - "eslint-visitor-keys": "^4.2.0" 1796 - }, 1797 - "engines": { 1798 - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 1799 - }, 1800 - "funding": { 1801 - "type": "opencollective", 1802 - "url": "https://opencollective.com/typescript-eslint" 1803 - } 1804 - }, 1805 - "node_modules/@vitejs/plugin-react": { 1806 - "version": "4.3.4", 1807 - "dev": true, 1808 - "license": "MIT", 1809 - "dependencies": { 1810 - "@babel/core": "^7.26.0", 1811 - "@babel/plugin-transform-react-jsx-self": "^7.25.9", 1812 - "@babel/plugin-transform-react-jsx-source": "^7.25.9", 1813 - "@types/babel__core": "^7.20.5", 1814 - "react-refresh": "^0.14.2" 1815 - }, 1816 - "engines": { 1817 - "node": "^14.18.0 || >=16.0.0" 1818 - }, 1819 - "peerDependencies": { 1820 - "vite": "^4.2.0 || ^5.0.0 || ^6.0.0" 1821 - } 1822 - }, 1823 - "node_modules/acorn": { 1824 - "version": "8.14.0", 1825 - "dev": true, 1826 - "license": "MIT", 1827 - "bin": { 1828 - "acorn": "bin/acorn" 1829 - }, 1830 - "engines": { 1831 - "node": ">=0.4.0" 1832 - } 1833 - }, 1834 - "node_modules/acorn-jsx": { 1835 - "version": "5.3.2", 1836 - "dev": true, 1837 - "license": "MIT", 1838 - "peerDependencies": { 1839 - "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" 1840 - } 1841 - }, 1842 - "node_modules/ajv": { 1843 - "version": "6.12.6", 1844 - "dev": true, 1845 - "license": "MIT", 1846 - "dependencies": { 1847 - "fast-deep-equal": "^3.1.1", 1848 - "fast-json-stable-stringify": "^2.0.0", 1849 - "json-schema-traverse": "^0.4.1", 1850 - "uri-js": "^4.2.2" 1851 - }, 1852 - "funding": { 1853 - "type": "github", 1854 - "url": "https://github.com/sponsors/epoberezkin" 1855 - } 1856 - }, 1857 - "node_modules/ansi-regex": { 1858 - "version": "6.1.0", 1859 - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.1.0.tgz", 1860 - "integrity": "sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==", 1861 - "license": "MIT", 1862 - "engines": { 1863 - "node": ">=12" 1864 - }, 1865 - "funding": { 1866 - "url": "https://github.com/chalk/ansi-regex?sponsor=1" 1867 - } 1868 - }, 1869 - "node_modules/ansi-styles": { 1870 - "version": "4.3.0", 1871 - "license": "MIT", 1872 - "dependencies": { 1873 - "color-convert": "^2.0.1" 1874 - }, 1875 - "engines": { 1876 - "node": ">=8" 1877 - }, 1878 - "funding": { 1879 - "url": "https://github.com/chalk/ansi-styles?sponsor=1" 1880 - } 1881 - }, 1882 - "node_modules/any-promise": { 1883 - "version": "1.3.0", 1884 - "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", 1885 - "integrity": "sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==", 1886 - "license": "MIT" 1887 - }, 1888 - "node_modules/anymatch": { 1889 - "version": "3.1.3", 1890 - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", 1891 - "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", 1892 - "license": "ISC", 1893 - "dependencies": { 1894 - "normalize-path": "^3.0.0", 1895 - "picomatch": "^2.0.4" 1896 - }, 1897 - "engines": { 1898 - "node": ">= 8" 1899 - } 1900 - }, 1901 - "node_modules/arg": { 1902 - "version": "5.0.2", 1903 - "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz", 1904 - "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==", 1905 - "license": "MIT" 1906 - }, 1907 - "node_modules/argparse": { 1908 - "version": "2.0.1", 1909 - "dev": true, 1910 - "license": "Python-2.0" 1911 - }, 1912 - "node_modules/aria-hidden": { 1913 - "version": "1.2.4", 1914 - "resolved": "https://registry.npmjs.org/aria-hidden/-/aria-hidden-1.2.4.tgz", 1915 - "integrity": "sha512-y+CcFFwelSXpLZk/7fMB2mUbGtX9lKycf1MWJ7CaTIERyitVlyQx6C+sxcROU2BAJ24OiZyK+8wj2i8AlBoS3A==", 1916 - "license": "MIT", 1917 - "dependencies": { 1918 - "tslib": "^2.0.0" 1919 - }, 1920 - "engines": { 1921 - "node": ">=10" 1922 - } 1923 - }, 1924 - "node_modules/asynckit": { 1925 - "version": "0.4.0", 1926 - "license": "MIT" 1927 - }, 1928 - "node_modules/autoprefixer": { 1929 - "version": "10.4.20", 1930 - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.20.tgz", 1931 - "integrity": "sha512-XY25y5xSv/wEoqzDyXXME4AFfkZI0P23z6Fs3YgymDnKJkCGOnkL0iTxCa85UTqaSgfcqyf3UA6+c7wUvx/16g==", 1932 - "dev": true, 1933 - "funding": [ 1934 - { 1935 - "type": "opencollective", 1936 - "url": "https://opencollective.com/postcss/" 1937 - }, 1938 - { 1939 - "type": "tidelift", 1940 - "url": "https://tidelift.com/funding/github/npm/autoprefixer" 1941 - }, 1942 - { 1943 - "type": "github", 1944 - "url": "https://github.com/sponsors/ai" 1945 - } 1946 - ], 1947 - "license": "MIT", 1948 - "dependencies": { 1949 - "browserslist": "^4.23.3", 1950 - "caniuse-lite": "^1.0.30001646", 1951 - "fraction.js": "^4.3.7", 1952 - "normalize-range": "^0.1.2", 1953 - "picocolors": "^1.0.1", 1954 - "postcss-value-parser": "^4.2.0" 1955 - }, 1956 - "bin": { 1957 - "autoprefixer": "bin/autoprefixer" 1958 - }, 1959 - "engines": { 1960 - "node": "^10 || ^12 || >=14" 1961 - }, 1962 - "peerDependencies": { 1963 - "postcss": "^8.1.0" 1964 - } 1965 - }, 1966 - "node_modules/axios": { 1967 - "version": "1.7.9", 1968 - "license": "MIT", 1969 - "dependencies": { 1970 - "follow-redirects": "^1.15.6", 1971 - "form-data": "^4.0.0", 1972 - "proxy-from-env": "^1.1.0" 1973 - } 1974 - }, 1975 - "node_modules/babel-plugin-macros": { 1976 - "version": "3.1.0", 1977 - "license": "MIT", 1978 - "dependencies": { 1979 - "@babel/runtime": "^7.12.5", 1980 - "cosmiconfig": "^7.0.0", 1981 - "resolve": "^1.19.0" 1982 - }, 1983 - "engines": { 1984 - "node": ">=10", 1985 - "npm": ">=6" 1986 - } 1987 - }, 1988 - "node_modules/balanced-match": { 1989 - "version": "1.0.2", 1990 - "license": "MIT" 1991 - }, 1992 - "node_modules/binary-extensions": { 1993 - "version": "2.3.0", 1994 - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", 1995 - "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", 1996 - "license": "MIT", 1997 - "engines": { 1998 - "node": ">=8" 1999 - }, 2000 - "funding": { 2001 - "url": "https://github.com/sponsors/sindresorhus" 2002 - } 2003 - }, 2004 - "node_modules/brace-expansion": { 2005 - "version": "1.1.11", 2006 - "dev": true, 2007 - "license": "MIT", 2008 - "dependencies": { 2009 - "balanced-match": "^1.0.0", 2010 - "concat-map": "0.0.1" 2011 - } 2012 - }, 2013 - "node_modules/braces": { 2014 - "version": "3.0.3", 2015 - "license": "MIT", 2016 - "dependencies": { 2017 - "fill-range": "^7.1.1" 2018 - }, 2019 - "engines": { 2020 - "node": ">=8" 2021 - } 2022 - }, 2023 - "node_modules/browserslist": { 2024 - "version": "4.24.4", 2025 - "dev": true, 2026 - "funding": [ 2027 - { 2028 - "type": "opencollective", 2029 - "url": "https://opencollective.com/browserslist" 2030 - }, 2031 - { 2032 - "type": "tidelift", 2033 - "url": "https://tidelift.com/funding/github/npm/browserslist" 2034 - }, 2035 - { 2036 - "type": "github", 2037 - "url": "https://github.com/sponsors/ai" 2038 - } 2039 - ], 2040 - "license": "MIT", 2041 - "dependencies": { 2042 - "caniuse-lite": "^1.0.30001688", 2043 - "electron-to-chromium": "^1.5.73", 2044 - "node-releases": "^2.0.19", 2045 - "update-browserslist-db": "^1.1.1" 2046 - }, 2047 - "bin": { 2048 - "browserslist": "cli.js" 2049 - }, 2050 - "engines": { 2051 - "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" 2052 - } 2053 - }, 2054 - "node_modules/callsites": { 2055 - "version": "3.1.0", 2056 - "license": "MIT", 2057 - "engines": { 2058 - "node": ">=6" 2059 - } 2060 - }, 2061 - "node_modules/camelcase-css": { 2062 - "version": "2.0.1", 2063 - "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz", 2064 - "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==", 2065 - "license": "MIT", 2066 - "engines": { 2067 - "node": ">= 6" 2068 - } 2069 - }, 2070 - "node_modules/caniuse-lite": { 2071 - "version": "1.0.30001695", 2072 - "dev": true, 2073 - "funding": [ 2074 - { 2075 - "type": "opencollective", 2076 - "url": "https://opencollective.com/browserslist" 2077 - }, 2078 - { 2079 - "type": "tidelift", 2080 - "url": "https://tidelift.com/funding/github/npm/caniuse-lite" 2081 - }, 2082 - { 2083 - "type": "github", 2084 - "url": "https://github.com/sponsors/ai" 2085 - } 2086 - ], 2087 - "license": "CC-BY-4.0" 2088 - }, 2089 - "node_modules/chalk": { 2090 - "version": "4.1.2", 2091 - "dev": true, 2092 - "license": "MIT", 2093 - "dependencies": { 2094 - "ansi-styles": "^4.1.0", 2095 - "supports-color": "^7.1.0" 2096 - }, 2097 - "engines": { 2098 - "node": ">=10" 2099 - }, 2100 - "funding": { 2101 - "url": "https://github.com/chalk/chalk?sponsor=1" 2102 - } 2103 - }, 2104 - "node_modules/chokidar": { 2105 - "version": "3.6.0", 2106 - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", 2107 - "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", 2108 - "license": "MIT", 2109 - "dependencies": { 2110 - "anymatch": "~3.1.2", 2111 - "braces": "~3.0.2", 2112 - "glob-parent": "~5.1.2", 2113 - "is-binary-path": "~2.1.0", 2114 - "is-glob": "~4.0.1", 2115 - "normalize-path": "~3.0.0", 2116 - "readdirp": "~3.6.0" 2117 - }, 2118 - "engines": { 2119 - "node": ">= 8.10.0" 2120 - }, 2121 - "funding": { 2122 - "url": "https://paulmillr.com/funding/" 2123 - }, 2124 - "optionalDependencies": { 2125 - "fsevents": "~2.3.2" 2126 - } 2127 - }, 2128 - "node_modules/chokidar/node_modules/glob-parent": { 2129 - "version": "5.1.2", 2130 - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", 2131 - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", 2132 - "license": "ISC", 2133 - "dependencies": { 2134 - "is-glob": "^4.0.1" 2135 - }, 2136 - "engines": { 2137 - "node": ">= 6" 2138 - } 2139 - }, 2140 - "node_modules/class-variance-authority": { 2141 - "version": "0.7.1", 2142 - "resolved": "https://registry.npmjs.org/class-variance-authority/-/class-variance-authority-0.7.1.tgz", 2143 - "integrity": "sha512-Ka+9Trutv7G8M6WT6SeiRWz792K5qEqIGEGzXKhAE6xOWAY6pPH8U+9IY3oCMv6kqTmLsv7Xh/2w2RigkePMsg==", 2144 - "license": "Apache-2.0", 2145 - "dependencies": { 2146 - "clsx": "^2.1.1" 2147 - }, 2148 - "funding": { 2149 - "url": "https://polar.sh/cva" 2150 - } 2151 - }, 2152 - "node_modules/clsx": { 2153 - "version": "2.1.1", 2154 - "resolved": "https://registry.npmjs.org/clsx/-/clsx-2.1.1.tgz", 2155 - "integrity": "sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==", 2156 - "license": "MIT", 2157 - "engines": { 2158 - "node": ">=6" 2159 - } 2160 - }, 2161 - "node_modules/color-convert": { 2162 - "version": "2.0.1", 2163 - "license": "MIT", 2164 - "dependencies": { 2165 - "color-name": "~1.1.4" 2166 - }, 2167 - "engines": { 2168 - "node": ">=7.0.0" 2169 - } 2170 - }, 2171 - "node_modules/color-name": { 2172 - "version": "1.1.4", 2173 - "license": "MIT" 2174 - }, 2175 - "node_modules/combined-stream": { 2176 - "version": "1.0.8", 2177 - "license": "MIT", 2178 - "dependencies": { 2179 - "delayed-stream": "~1.0.0" 2180 - }, 2181 - "engines": { 2182 - "node": ">= 0.8" 2183 - } 2184 - }, 2185 - "node_modules/commander": { 2186 - "version": "4.1.1", 2187 - "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", 2188 - "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", 2189 - "license": "MIT", 2190 - "engines": { 2191 - "node": ">= 6" 2192 - } 2193 - }, 2194 - "node_modules/concat-map": { 2195 - "version": "0.0.1", 2196 - "dev": true, 2197 - "license": "MIT" 2198 - }, 2199 - "node_modules/convert-source-map": { 2200 - "version": "2.0.0", 2201 - "dev": true, 2202 - "license": "MIT" 2203 - }, 2204 - "node_modules/cosmiconfig": { 2205 - "version": "7.1.0", 2206 - "license": "MIT", 2207 - "dependencies": { 2208 - "@types/parse-json": "^4.0.0", 2209 - "import-fresh": "^3.2.1", 2210 - "parse-json": "^5.0.0", 2211 - "path-type": "^4.0.0", 2212 - "yaml": "^1.10.0" 2213 - }, 2214 - "engines": { 2215 - "node": ">=10" 2216 - } 2217 - }, 2218 - "node_modules/cosmiconfig/node_modules/yaml": { 2219 - "version": "1.10.2", 2220 - "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", 2221 - "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", 2222 - "license": "ISC", 2223 - "engines": { 2224 - "node": ">= 6" 2225 - } 2226 - }, 2227 - "node_modules/cross-spawn": { 2228 - "version": "7.0.6", 2229 - "license": "MIT", 2230 - "dependencies": { 2231 - "path-key": "^3.1.0", 2232 - "shebang-command": "^2.0.0", 2233 - "which": "^2.0.1" 2234 - }, 2235 - "engines": { 2236 - "node": ">= 8" 2237 - } 2238 - }, 2239 - "node_modules/cssesc": { 2240 - "version": "3.0.0", 2241 - "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", 2242 - "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", 2243 - "license": "MIT", 2244 - "bin": { 2245 - "cssesc": "bin/cssesc" 2246 - }, 2247 - "engines": { 2248 - "node": ">=4" 2249 - } 2250 - }, 2251 - "node_modules/csstype": { 2252 - "version": "3.1.3", 2253 - "license": "MIT" 2254 - }, 2255 - "node_modules/debug": { 2256 - "version": "4.4.0", 2257 - "license": "MIT", 2258 - "dependencies": { 2259 - "ms": "^2.1.3" 2260 - }, 2261 - "engines": { 2262 - "node": ">=6.0" 2263 - }, 2264 - "peerDependenciesMeta": { 2265 - "supports-color": { 2266 - "optional": true 2267 - } 2268 - } 2269 - }, 2270 - "node_modules/deep-is": { 2271 - "version": "0.1.4", 2272 - "dev": true, 2273 - "license": "MIT" 2274 - }, 2275 - "node_modules/delayed-stream": { 2276 - "version": "1.0.0", 2277 - "license": "MIT", 2278 - "engines": { 2279 - "node": ">=0.4.0" 2280 - } 2281 - }, 2282 - "node_modules/detect-libc": { 2283 - "version": "1.0.3", 2284 - "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", 2285 - "integrity": "sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==", 2286 - "license": "Apache-2.0", 2287 - "bin": { 2288 - "detect-libc": "bin/detect-libc.js" 2289 - }, 2290 - "engines": { 2291 - "node": ">=0.10" 2292 - } 2293 - }, 2294 - "node_modules/detect-node-es": { 2295 - "version": "1.1.0", 2296 - "license": "MIT" 2297 - }, 2298 - "node_modules/didyoumean": { 2299 - "version": "1.2.2", 2300 - "resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz", 2301 - "integrity": "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==", 2302 - "license": "Apache-2.0" 2303 - }, 2304 - "node_modules/dlv": { 2305 - "version": "1.1.3", 2306 - "resolved": "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz", 2307 - "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==", 2308 - "license": "MIT" 2309 - }, 2310 - "node_modules/eastasianwidth": { 2311 - "version": "0.2.0", 2312 - "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", 2313 - "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", 2314 - "license": "MIT" 2315 - }, 2316 - "node_modules/electron-to-chromium": { 2317 - "version": "1.5.88", 2318 - "dev": true, 2319 - "license": "ISC" 2320 - }, 2321 - "node_modules/emoji-regex": { 2322 - "version": "9.2.2", 2323 - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", 2324 - "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", 2325 - "license": "MIT" 2326 - }, 2327 - "node_modules/enhanced-resolve": { 2328 - "version": "5.18.0", 2329 - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.18.0.tgz", 2330 - "integrity": "sha512-0/r0MySGYG8YqlayBZ6MuCfECmHFdJ5qyPh8s8wa5Hnm6SaFLSK1VYCbj+NKp090Nm1caZhD+QTnmxO7esYGyQ==", 2331 - "license": "MIT", 2332 - "dependencies": { 2333 - "graceful-fs": "^4.2.4", 2334 - "tapable": "^2.2.0" 2335 - }, 2336 - "engines": { 2337 - "node": ">=10.13.0" 2338 - } 2339 - }, 2340 - "node_modules/error-ex": { 2341 - "version": "1.3.2", 2342 - "license": "MIT", 2343 - "dependencies": { 2344 - "is-arrayish": "^0.2.1" 2345 - } 2346 - }, 2347 - "node_modules/esbuild": { 2348 - "version": "0.24.2", 2349 - "hasInstallScript": true, 2350 - "license": "MIT", 2351 - "bin": { 2352 - "esbuild": "bin/esbuild" 2353 - }, 2354 - "engines": { 2355 - "node": ">=18" 2356 - }, 2357 - "optionalDependencies": { 2358 - "@esbuild/aix-ppc64": "0.24.2", 2359 - "@esbuild/android-arm": "0.24.2", 2360 - "@esbuild/android-arm64": "0.24.2", 2361 - "@esbuild/android-x64": "0.24.2", 2362 - "@esbuild/darwin-arm64": "0.24.2", 2363 - "@esbuild/darwin-x64": "0.24.2", 2364 - "@esbuild/freebsd-arm64": "0.24.2", 2365 - "@esbuild/freebsd-x64": "0.24.2", 2366 - "@esbuild/linux-arm": "0.24.2", 2367 - "@esbuild/linux-arm64": "0.24.2", 2368 - "@esbuild/linux-ia32": "0.24.2", 2369 - "@esbuild/linux-loong64": "0.24.2", 2370 - "@esbuild/linux-mips64el": "0.24.2", 2371 - "@esbuild/linux-ppc64": "0.24.2", 2372 - "@esbuild/linux-riscv64": "0.24.2", 2373 - "@esbuild/linux-s390x": "0.24.2", 2374 - "@esbuild/linux-x64": "0.24.2", 2375 - "@esbuild/netbsd-arm64": "0.24.2", 2376 - "@esbuild/netbsd-x64": "0.24.2", 2377 - "@esbuild/openbsd-arm64": "0.24.2", 2378 - "@esbuild/openbsd-x64": "0.24.2", 2379 - "@esbuild/sunos-x64": "0.24.2", 2380 - "@esbuild/win32-arm64": "0.24.2", 2381 - "@esbuild/win32-ia32": "0.24.2", 2382 - "@esbuild/win32-x64": "0.24.2" 2383 - } 2384 - }, 2385 - "node_modules/escalade": { 2386 - "version": "3.2.0", 2387 - "dev": true, 2388 - "license": "MIT", 2389 - "engines": { 2390 - "node": ">=6" 2391 - } 2392 - }, 2393 - "node_modules/escape-string-regexp": { 2394 - "version": "4.0.0", 2395 - "license": "MIT", 2396 - "engines": { 2397 - "node": ">=10" 2398 - }, 2399 - "funding": { 2400 - "url": "https://github.com/sponsors/sindresorhus" 2401 - } 2402 - }, 2403 - "node_modules/eslint": { 2404 - "version": "9.19.0", 2405 - "dev": true, 2406 - "license": "MIT", 2407 - "dependencies": { 2408 - "@eslint-community/eslint-utils": "^4.2.0", 2409 - "@eslint-community/regexpp": "^4.12.1", 2410 - "@eslint/config-array": "^0.19.0", 2411 - "@eslint/core": "^0.10.0", 2412 - "@eslint/eslintrc": "^3.2.0", 2413 - "@eslint/js": "9.19.0", 2414 - "@eslint/plugin-kit": "^0.2.5", 2415 - "@humanfs/node": "^0.16.6", 2416 - "@humanwhocodes/module-importer": "^1.0.1", 2417 - "@humanwhocodes/retry": "^0.4.1", 2418 - "@types/estree": "^1.0.6", 2419 - "@types/json-schema": "^7.0.15", 2420 - "ajv": "^6.12.4", 2421 - "chalk": "^4.0.0", 2422 - "cross-spawn": "^7.0.6", 2423 - "debug": "^4.3.2", 2424 - "escape-string-regexp": "^4.0.0", 2425 - "eslint-scope": "^8.2.0", 2426 - "eslint-visitor-keys": "^4.2.0", 2427 - "espree": "^10.3.0", 2428 - "esquery": "^1.5.0", 2429 - "esutils": "^2.0.2", 2430 - "fast-deep-equal": "^3.1.3", 2431 - "file-entry-cache": "^8.0.0", 2432 - "find-up": "^5.0.0", 2433 - "glob-parent": "^6.0.2", 2434 - "ignore": "^5.2.0", 2435 - "imurmurhash": "^0.1.4", 2436 - "is-glob": "^4.0.0", 2437 - "json-stable-stringify-without-jsonify": "^1.0.1", 2438 - "lodash.merge": "^4.6.2", 2439 - "minimatch": "^3.1.2", 2440 - "natural-compare": "^1.4.0", 2441 - "optionator": "^0.9.3" 2442 - }, 2443 - "bin": { 2444 - "eslint": "bin/eslint.js" 2445 - }, 2446 - "engines": { 2447 - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 2448 - }, 2449 - "funding": { 2450 - "url": "https://eslint.org/donate" 2451 - }, 2452 - "peerDependencies": { 2453 - "jiti": "*" 2454 - }, 2455 - "peerDependenciesMeta": { 2456 - "jiti": { 2457 - "optional": true 2458 - } 2459 - } 2460 - }, 2461 - "node_modules/eslint-plugin-react-hooks": { 2462 - "version": "5.1.0", 2463 - "dev": true, 2464 - "license": "MIT", 2465 - "engines": { 2466 - "node": ">=10" 2467 - }, 2468 - "peerDependencies": { 2469 - "eslint": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 || ^9.0.0" 2470 - } 2471 - }, 2472 - "node_modules/eslint-plugin-react-refresh": { 2473 - "version": "0.4.18", 2474 - "dev": true, 2475 - "license": "MIT", 2476 - "peerDependencies": { 2477 - "eslint": ">=8.40" 2478 - } 2479 - }, 2480 - "node_modules/eslint-scope": { 2481 - "version": "8.2.0", 2482 - "dev": true, 2483 - "license": "BSD-2-Clause", 2484 - "dependencies": { 2485 - "esrecurse": "^4.3.0", 2486 - "estraverse": "^5.2.0" 2487 - }, 2488 - "engines": { 2489 - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 2490 - }, 2491 - "funding": { 2492 - "url": "https://opencollective.com/eslint" 2493 - } 2494 - }, 2495 - "node_modules/eslint-visitor-keys": { 2496 - "version": "4.2.0", 2497 - "dev": true, 2498 - "license": "Apache-2.0", 2499 - "engines": { 2500 - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 2501 - }, 2502 - "funding": { 2503 - "url": "https://opencollective.com/eslint" 2504 - } 2505 - }, 2506 - "node_modules/espree": { 2507 - "version": "10.3.0", 2508 - "dev": true, 2509 - "license": "BSD-2-Clause", 2510 - "dependencies": { 2511 - "acorn": "^8.14.0", 2512 - "acorn-jsx": "^5.3.2", 2513 - "eslint-visitor-keys": "^4.2.0" 2514 - }, 2515 - "engines": { 2516 - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 2517 - }, 2518 - "funding": { 2519 - "url": "https://opencollective.com/eslint" 2520 - } 2521 - }, 2522 - "node_modules/esquery": { 2523 - "version": "1.6.0", 2524 - "dev": true, 2525 - "license": "BSD-3-Clause", 2526 - "dependencies": { 2527 - "estraverse": "^5.1.0" 2528 - }, 2529 - "engines": { 2530 - "node": ">=0.10" 2531 - } 2532 - }, 2533 - "node_modules/esrecurse": { 2534 - "version": "4.3.0", 2535 - "dev": true, 2536 - "license": "BSD-2-Clause", 2537 - "dependencies": { 2538 - "estraverse": "^5.2.0" 2539 - }, 2540 - "engines": { 2541 - "node": ">=4.0" 2542 - } 2543 - }, 2544 - "node_modules/estraverse": { 2545 - "version": "5.3.0", 2546 - "dev": true, 2547 - "license": "BSD-2-Clause", 2548 - "engines": { 2549 - "node": ">=4.0" 2550 - } 2551 - }, 2552 - "node_modules/esutils": { 2553 - "version": "2.0.3", 2554 - "dev": true, 2555 - "license": "BSD-2-Clause", 2556 - "engines": { 2557 - "node": ">=0.10.0" 2558 - } 2559 - }, 2560 - "node_modules/fast-deep-equal": { 2561 - "version": "3.1.3", 2562 - "license": "MIT" 2563 - }, 2564 - "node_modules/fast-glob": { 2565 - "version": "3.3.3", 2566 - "license": "MIT", 2567 - "dependencies": { 2568 - "@nodelib/fs.stat": "^2.0.2", 2569 - "@nodelib/fs.walk": "^1.2.3", 2570 - "glob-parent": "^5.1.2", 2571 - "merge2": "^1.3.0", 2572 - "micromatch": "^4.0.8" 2573 - }, 2574 - "engines": { 2575 - "node": ">=8.6.0" 2576 - } 2577 - }, 2578 - "node_modules/fast-glob/node_modules/glob-parent": { 2579 - "version": "5.1.2", 2580 - "license": "ISC", 2581 - "dependencies": { 2582 - "is-glob": "^4.0.1" 2583 - }, 2584 - "engines": { 2585 - "node": ">= 6" 2586 - } 2587 - }, 2588 - "node_modules/fast-json-stable-stringify": { 2589 - "version": "2.1.0", 2590 - "dev": true, 2591 - "license": "MIT" 2592 - }, 2593 - "node_modules/fast-levenshtein": { 2594 - "version": "2.0.6", 2595 - "dev": true, 2596 - "license": "MIT" 2597 - }, 2598 - "node_modules/fastq": { 2599 - "version": "1.18.0", 2600 - "license": "ISC", 2601 - "dependencies": { 2602 - "reusify": "^1.0.4" 2603 - } 2604 - }, 2605 - "node_modules/file-entry-cache": { 2606 - "version": "8.0.0", 2607 - "dev": true, 2608 - "license": "MIT", 2609 - "dependencies": { 2610 - "flat-cache": "^4.0.0" 2611 - }, 2612 - "engines": { 2613 - "node": ">=16.0.0" 2614 - } 2615 - }, 2616 - "node_modules/fill-range": { 2617 - "version": "7.1.1", 2618 - "license": "MIT", 2619 - "dependencies": { 2620 - "to-regex-range": "^5.0.1" 2621 - }, 2622 - "engines": { 2623 - "node": ">=8" 2624 - } 2625 - }, 2626 - "node_modules/find-root": { 2627 - "version": "1.1.0", 2628 - "license": "MIT" 2629 - }, 2630 - "node_modules/find-up": { 2631 - "version": "5.0.0", 2632 - "dev": true, 2633 - "license": "MIT", 2634 - "dependencies": { 2635 - "locate-path": "^6.0.0", 2636 - "path-exists": "^4.0.0" 2637 - }, 2638 - "engines": { 2639 - "node": ">=10" 2640 - }, 2641 - "funding": { 2642 - "url": "https://github.com/sponsors/sindresorhus" 2643 - } 2644 - }, 2645 - "node_modules/flat-cache": { 2646 - "version": "4.0.1", 2647 - "dev": true, 2648 - "license": "MIT", 2649 - "dependencies": { 2650 - "flatted": "^3.2.9", 2651 - "keyv": "^4.5.4" 2652 - }, 2653 - "engines": { 2654 - "node": ">=16" 2655 - } 2656 - }, 2657 - "node_modules/flatted": { 2658 - "version": "3.3.2", 2659 - "dev": true, 2660 - "license": "ISC" 2661 - }, 2662 - "node_modules/follow-redirects": { 2663 - "version": "1.15.9", 2664 - "funding": [ 2665 - { 2666 - "type": "individual", 2667 - "url": "https://github.com/sponsors/RubenVerborgh" 2668 - } 2669 - ], 2670 - "license": "MIT", 2671 - "engines": { 2672 - "node": ">=4.0" 2673 - }, 2674 - "peerDependenciesMeta": { 2675 - "debug": { 2676 - "optional": true 2677 - } 2678 - } 2679 - }, 2680 - "node_modules/foreground-child": { 2681 - "version": "3.3.0", 2682 - "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.0.tgz", 2683 - "integrity": "sha512-Ld2g8rrAyMYFXBhEqMz8ZAHBi4J4uS1i/CxGMDnjyFWddMXLVcDp051DZfu+t7+ab7Wv6SMqpWmyFIj5UbfFvg==", 2684 - "license": "ISC", 2685 - "dependencies": { 2686 - "cross-spawn": "^7.0.0", 2687 - "signal-exit": "^4.0.1" 2688 - }, 2689 - "engines": { 2690 - "node": ">=14" 2691 - }, 2692 - "funding": { 2693 - "url": "https://github.com/sponsors/isaacs" 2694 - } 2695 - }, 2696 - "node_modules/form-data": { 2697 - "version": "4.0.1", 2698 - "license": "MIT", 2699 - "dependencies": { 2700 - "asynckit": "^0.4.0", 2701 - "combined-stream": "^1.0.8", 2702 - "mime-types": "^2.1.12" 2703 - }, 2704 - "engines": { 2705 - "node": ">= 6" 2706 - } 2707 - }, 2708 - "node_modules/fraction.js": { 2709 - "version": "4.3.7", 2710 - "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.3.7.tgz", 2711 - "integrity": "sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==", 2712 - "dev": true, 2713 - "license": "MIT", 2714 - "engines": { 2715 - "node": "*" 2716 - }, 2717 - "funding": { 2718 - "type": "patreon", 2719 - "url": "https://github.com/sponsors/rawify" 2720 - } 2721 - }, 2722 - "node_modules/fsevents": { 2723 - "version": "2.3.3", 2724 - "license": "MIT", 2725 - "optional": true, 2726 - "os": [ 2727 - "darwin" 2728 - ], 2729 - "engines": { 2730 - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" 2731 - } 2732 - }, 2733 - "node_modules/function-bind": { 2734 - "version": "1.1.2", 2735 - "license": "MIT", 2736 - "funding": { 2737 - "url": "https://github.com/sponsors/ljharb" 2738 - } 2739 - }, 2740 - "node_modules/gensync": { 2741 - "version": "1.0.0-beta.2", 2742 - "dev": true, 2743 - "license": "MIT", 2744 - "engines": { 2745 - "node": ">=6.9.0" 2746 - } 2747 - }, 2748 - "node_modules/get-nonce": { 2749 - "version": "1.0.1", 2750 - "license": "MIT", 2751 - "engines": { 2752 - "node": ">=6" 2753 - } 2754 - }, 2755 - "node_modules/glob": { 2756 - "version": "10.4.5", 2757 - "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz", 2758 - "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==", 2759 - "license": "ISC", 2760 - "dependencies": { 2761 - "foreground-child": "^3.1.0", 2762 - "jackspeak": "^3.1.2", 2763 - "minimatch": "^9.0.4", 2764 - "minipass": "^7.1.2", 2765 - "package-json-from-dist": "^1.0.0", 2766 - "path-scurry": "^1.11.1" 2767 - }, 2768 - "bin": { 2769 - "glob": "dist/esm/bin.mjs" 2770 - }, 2771 - "funding": { 2772 - "url": "https://github.com/sponsors/isaacs" 2773 - } 2774 - }, 2775 - "node_modules/glob-parent": { 2776 - "version": "6.0.2", 2777 - "license": "ISC", 2778 - "dependencies": { 2779 - "is-glob": "^4.0.3" 2780 - }, 2781 - "engines": { 2782 - "node": ">=10.13.0" 2783 - } 2784 - }, 2785 - "node_modules/glob/node_modules/brace-expansion": { 2786 - "version": "2.0.1", 2787 - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", 2788 - "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", 2789 - "license": "MIT", 2790 - "dependencies": { 2791 - "balanced-match": "^1.0.0" 2792 - } 2793 - }, 2794 - "node_modules/glob/node_modules/minimatch": { 2795 - "version": "9.0.5", 2796 - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", 2797 - "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", 2798 - "license": "ISC", 2799 - "dependencies": { 2800 - "brace-expansion": "^2.0.1" 2801 - }, 2802 - "engines": { 2803 - "node": ">=16 || 14 >=14.17" 2804 - }, 2805 - "funding": { 2806 - "url": "https://github.com/sponsors/isaacs" 2807 - } 2808 - }, 2809 - "node_modules/globals": { 2810 - "version": "15.14.0", 2811 - "dev": true, 2812 - "license": "MIT", 2813 - "engines": { 2814 - "node": ">=18" 2815 - }, 2816 - "funding": { 2817 - "url": "https://github.com/sponsors/sindresorhus" 2818 - } 2819 - }, 2820 - "node_modules/graceful-fs": { 2821 - "version": "4.2.11", 2822 - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", 2823 - "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", 2824 - "license": "ISC" 2825 - }, 2826 - "node_modules/graphemer": { 2827 - "version": "1.4.0", 2828 - "dev": true, 2829 - "license": "MIT" 2830 - }, 2831 - "node_modules/has-flag": { 2832 - "version": "4.0.0", 2833 - "dev": true, 2834 - "license": "MIT", 2835 - "engines": { 2836 - "node": ">=8" 2837 - } 2838 - }, 2839 - "node_modules/hasown": { 2840 - "version": "2.0.2", 2841 - "license": "MIT", 2842 - "dependencies": { 2843 - "function-bind": "^1.1.2" 2844 - }, 2845 - "engines": { 2846 - "node": ">= 0.4" 2847 - } 2848 - }, 2849 - "node_modules/hoist-non-react-statics": { 2850 - "version": "3.3.2", 2851 - "license": "BSD-3-Clause", 2852 - "dependencies": { 2853 - "react-is": "^16.7.0" 2854 - } 2855 - }, 2856 - "node_modules/ignore": { 2857 - "version": "5.3.2", 2858 - "dev": true, 2859 - "license": "MIT", 2860 - "engines": { 2861 - "node": ">= 4" 2862 - } 2863 - }, 2864 - "node_modules/import-fresh": { 2865 - "version": "3.3.0", 2866 - "license": "MIT", 2867 - "dependencies": { 2868 - "parent-module": "^1.0.0", 2869 - "resolve-from": "^4.0.0" 2870 - }, 2871 - "engines": { 2872 - "node": ">=6" 2873 - }, 2874 - "funding": { 2875 - "url": "https://github.com/sponsors/sindresorhus" 2876 - } 2877 - }, 2878 - "node_modules/imurmurhash": { 2879 - "version": "0.1.4", 2880 - "dev": true, 2881 - "license": "MIT", 2882 - "engines": { 2883 - "node": ">=0.8.19" 2884 - } 2885 - }, 2886 - "node_modules/is-arrayish": { 2887 - "version": "0.2.1", 2888 - "license": "MIT" 2889 - }, 2890 - "node_modules/is-binary-path": { 2891 - "version": "2.1.0", 2892 - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", 2893 - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", 2894 - "license": "MIT", 2895 - "dependencies": { 2896 - "binary-extensions": "^2.0.0" 2897 - }, 2898 - "engines": { 2899 - "node": ">=8" 2900 - } 2901 - }, 2902 - "node_modules/is-core-module": { 2903 - "version": "2.16.1", 2904 - "license": "MIT", 2905 - "dependencies": { 2906 - "hasown": "^2.0.2" 2907 - }, 2908 - "engines": { 2909 - "node": ">= 0.4" 2910 - }, 2911 - "funding": { 2912 - "url": "https://github.com/sponsors/ljharb" 2913 - } 2914 - }, 2915 - "node_modules/is-extglob": { 2916 - "version": "2.1.1", 2917 - "license": "MIT", 2918 - "engines": { 2919 - "node": ">=0.10.0" 2920 - } 2921 - }, 2922 - "node_modules/is-fullwidth-code-point": { 2923 - "version": "3.0.0", 2924 - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", 2925 - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", 2926 - "license": "MIT", 2927 - "engines": { 2928 - "node": ">=8" 2929 - } 2930 - }, 2931 - "node_modules/is-glob": { 2932 - "version": "4.0.3", 2933 - "license": "MIT", 2934 - "dependencies": { 2935 - "is-extglob": "^2.1.1" 2936 - }, 2937 - "engines": { 2938 - "node": ">=0.10.0" 2939 - } 2940 - }, 2941 - "node_modules/is-number": { 2942 - "version": "7.0.0", 2943 - "license": "MIT", 2944 - "engines": { 2945 - "node": ">=0.12.0" 2946 - } 2947 - }, 2948 - "node_modules/isexe": { 2949 - "version": "2.0.0", 2950 - "license": "ISC" 2951 - }, 2952 - "node_modules/jackspeak": { 2953 - "version": "3.4.3", 2954 - "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.3.tgz", 2955 - "integrity": "sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==", 2956 - "license": "BlueOak-1.0.0", 2957 - "dependencies": { 2958 - "@isaacs/cliui": "^8.0.2" 2959 - }, 2960 - "funding": { 2961 - "url": "https://github.com/sponsors/isaacs" 2962 - }, 2963 - "optionalDependencies": { 2964 - "@pkgjs/parseargs": "^0.11.0" 2965 - } 2966 - }, 2967 - "node_modules/jiti": { 2968 - "version": "2.4.2", 2969 - "resolved": "https://registry.npmjs.org/jiti/-/jiti-2.4.2.tgz", 2970 - "integrity": "sha512-rg9zJN+G4n2nfJl5MW3BMygZX56zKPNVEYYqq7adpmMh4Jn2QNEwhvQlFy6jPVdcod7txZtKHWnyZiA3a0zP7A==", 2971 - "license": "MIT", 2972 - "bin": { 2973 - "jiti": "lib/jiti-cli.mjs" 2974 - } 2975 - }, 2976 - "node_modules/js-tokens": { 2977 - "version": "4.0.0", 2978 - "license": "MIT" 2979 - }, 2980 - "node_modules/js-yaml": { 2981 - "version": "4.1.0", 2982 - "dev": true, 2983 - "license": "MIT", 2984 - "dependencies": { 2985 - "argparse": "^2.0.1" 2986 - }, 2987 - "bin": { 2988 - "js-yaml": "bin/js-yaml.js" 2989 - } 2990 - }, 2991 - "node_modules/jsesc": { 2992 - "version": "3.1.0", 2993 - "license": "MIT", 2994 - "bin": { 2995 - "jsesc": "bin/jsesc" 2996 - }, 2997 - "engines": { 2998 - "node": ">=6" 2999 - } 3000 - }, 3001 - "node_modules/json-buffer": { 3002 - "version": "3.0.1", 3003 - "dev": true, 3004 - "license": "MIT" 3005 - }, 3006 - "node_modules/json-parse-even-better-errors": { 3007 - "version": "2.3.1", 3008 - "license": "MIT" 3009 - }, 3010 - "node_modules/json-schema-traverse": { 3011 - "version": "0.4.1", 3012 - "dev": true, 3013 - "license": "MIT" 3014 - }, 3015 - "node_modules/json-stable-stringify-without-jsonify": { 3016 - "version": "1.0.1", 3017 - "dev": true, 3018 - "license": "MIT" 3019 - }, 3020 - "node_modules/json5": { 3021 - "version": "2.2.3", 3022 - "dev": true, 3023 - "license": "MIT", 3024 - "bin": { 3025 - "json5": "lib/cli.js" 3026 - }, 3027 - "engines": { 3028 - "node": ">=6" 3029 - } 3030 - }, 3031 - "node_modules/keyv": { 3032 - "version": "4.5.4", 3033 - "dev": true, 3034 - "license": "MIT", 3035 - "dependencies": { 3036 - "json-buffer": "3.0.1" 3037 - } 3038 - }, 3039 - "node_modules/klona": { 3040 - "version": "2.0.6", 3041 - "license": "MIT", 3042 - "engines": { 3043 - "node": ">= 8" 3044 - } 3045 - }, 3046 - "node_modules/levn": { 3047 - "version": "0.4.1", 3048 - "dev": true, 3049 - "license": "MIT", 3050 - "dependencies": { 3051 - "prelude-ls": "^1.2.1", 3052 - "type-check": "~0.4.0" 3053 - }, 3054 - "engines": { 3055 - "node": ">= 0.8.0" 3056 - } 3057 - }, 3058 - "node_modules/lightningcss": { 3059 - "version": "1.29.1", 3060 - "resolved": "https://registry.npmjs.org/lightningcss/-/lightningcss-1.29.1.tgz", 3061 - "integrity": "sha512-FmGoeD4S05ewj+AkhTY+D+myDvXI6eL27FjHIjoyUkO/uw7WZD1fBVs0QxeYWa7E17CUHJaYX/RUGISCtcrG4Q==", 3062 - "license": "MPL-2.0", 3063 - "dependencies": { 3064 - "detect-libc": "^1.0.3" 3065 - }, 3066 - "engines": { 3067 - "node": ">= 12.0.0" 3068 - }, 3069 - "funding": { 3070 - "type": "opencollective", 3071 - "url": "https://opencollective.com/parcel" 3072 - }, 3073 - "optionalDependencies": { 3074 - "lightningcss-darwin-arm64": "1.29.1", 3075 - "lightningcss-darwin-x64": "1.29.1", 3076 - "lightningcss-freebsd-x64": "1.29.1", 3077 - "lightningcss-linux-arm-gnueabihf": "1.29.1", 3078 - "lightningcss-linux-arm64-gnu": "1.29.1", 3079 - "lightningcss-linux-arm64-musl": "1.29.1", 3080 - "lightningcss-linux-x64-gnu": "1.29.1", 3081 - "lightningcss-linux-x64-musl": "1.29.1", 3082 - "lightningcss-win32-arm64-msvc": "1.29.1", 3083 - "lightningcss-win32-x64-msvc": "1.29.1" 3084 - } 3085 - }, 3086 - "node_modules/lightningcss-darwin-arm64": { 3087 - "version": "1.29.1", 3088 - "resolved": "https://registry.npmjs.org/lightningcss-darwin-arm64/-/lightningcss-darwin-arm64-1.29.1.tgz", 3089 - "integrity": "sha512-HtR5XJ5A0lvCqYAoSv2QdZZyoHNttBpa5EP9aNuzBQeKGfbyH5+UipLWvVzpP4Uml5ej4BYs5I9Lco9u1fECqw==", 3090 - "cpu": [ 3091 - "arm64" 3092 - ], 3093 - "license": "MPL-2.0", 3094 - "optional": true, 3095 - "os": [ 3096 - "darwin" 3097 - ], 3098 - "engines": { 3099 - "node": ">= 12.0.0" 3100 - }, 3101 - "funding": { 3102 - "type": "opencollective", 3103 - "url": "https://opencollective.com/parcel" 3104 - } 3105 - }, 3106 - "node_modules/lightningcss-darwin-x64": { 3107 - "version": "1.29.1", 3108 - "resolved": "https://registry.npmjs.org/lightningcss-darwin-x64/-/lightningcss-darwin-x64-1.29.1.tgz", 3109 - "integrity": "sha512-k33G9IzKUpHy/J/3+9MCO4e+PzaFblsgBjSGlpAaFikeBFm8B/CkO3cKU9oI4g+fjS2KlkLM/Bza9K/aw8wsNA==", 3110 - "cpu": [ 3111 - "x64" 3112 - ], 3113 - "license": "MPL-2.0", 3114 - "optional": true, 3115 - "os": [ 3116 - "darwin" 3117 - ], 3118 - "engines": { 3119 - "node": ">= 12.0.0" 3120 - }, 3121 - "funding": { 3122 - "type": "opencollective", 3123 - "url": "https://opencollective.com/parcel" 3124 - } 3125 - }, 3126 - "node_modules/lightningcss-freebsd-x64": { 3127 - "version": "1.29.1", 3128 - "resolved": "https://registry.npmjs.org/lightningcss-freebsd-x64/-/lightningcss-freebsd-x64-1.29.1.tgz", 3129 - "integrity": "sha512-0SUW22fv/8kln2LnIdOCmSuXnxgxVC276W5KLTwoehiO0hxkacBxjHOL5EtHD8BAXg2BvuhsJPmVMasvby3LiQ==", 3130 - "cpu": [ 3131 - "x64" 3132 - ], 3133 - "license": "MPL-2.0", 3134 - "optional": true, 3135 - "os": [ 3136 - "freebsd" 3137 - ], 3138 - "engines": { 3139 - "node": ">= 12.0.0" 3140 - }, 3141 - "funding": { 3142 - "type": "opencollective", 3143 - "url": "https://opencollective.com/parcel" 3144 - } 3145 - }, 3146 - "node_modules/lightningcss-linux-arm-gnueabihf": { 3147 - "version": "1.29.1", 3148 - "resolved": "https://registry.npmjs.org/lightningcss-linux-arm-gnueabihf/-/lightningcss-linux-arm-gnueabihf-1.29.1.tgz", 3149 - "integrity": "sha512-sD32pFvlR0kDlqsOZmYqH/68SqUMPNj+0pucGxToXZi4XZgZmqeX/NkxNKCPsswAXU3UeYgDSpGhu05eAufjDg==", 3150 - "cpu": [ 3151 - "arm" 3152 - ], 3153 - "license": "MPL-2.0", 3154 - "optional": true, 3155 - "os": [ 3156 - "linux" 3157 - ], 3158 - "engines": { 3159 - "node": ">= 12.0.0" 3160 - }, 3161 - "funding": { 3162 - "type": "opencollective", 3163 - "url": "https://opencollective.com/parcel" 3164 - } 3165 - }, 3166 - "node_modules/lightningcss-linux-arm64-gnu": { 3167 - "version": "1.29.1", 3168 - "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-gnu/-/lightningcss-linux-arm64-gnu-1.29.1.tgz", 3169 - "integrity": "sha512-0+vClRIZ6mmJl/dxGuRsE197o1HDEeeRk6nzycSy2GofC2JsY4ifCRnvUWf/CUBQmlrvMzt6SMQNMSEu22csWQ==", 3170 - "cpu": [ 3171 - "arm64" 3172 - ], 3173 - "license": "MPL-2.0", 3174 - "optional": true, 3175 - "os": [ 3176 - "linux" 3177 - ], 3178 - "engines": { 3179 - "node": ">= 12.0.0" 3180 - }, 3181 - "funding": { 3182 - "type": "opencollective", 3183 - "url": "https://opencollective.com/parcel" 3184 - } 3185 - }, 3186 - "node_modules/lightningcss-linux-arm64-musl": { 3187 - "version": "1.29.1", 3188 - "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-musl/-/lightningcss-linux-arm64-musl-1.29.1.tgz", 3189 - "integrity": "sha512-UKMFrG4rL/uHNgelBsDwJcBqVpzNJbzsKkbI3Ja5fg00sgQnHw/VrzUTEc4jhZ+AN2BvQYz/tkHu4vt1kLuJyw==", 3190 - "cpu": [ 3191 - "arm64" 3192 - ], 3193 - "license": "MPL-2.0", 3194 - "optional": true, 3195 - "os": [ 3196 - "linux" 3197 - ], 3198 - "engines": { 3199 - "node": ">= 12.0.0" 3200 - }, 3201 - "funding": { 3202 - "type": "opencollective", 3203 - "url": "https://opencollective.com/parcel" 3204 - } 3205 - }, 3206 - "node_modules/lightningcss-linux-x64-gnu": { 3207 - "version": "1.29.1", 3208 - "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-gnu/-/lightningcss-linux-x64-gnu-1.29.1.tgz", 3209 - "integrity": "sha512-u1S+xdODy/eEtjADqirA774y3jLcm8RPtYztwReEXoZKdzgsHYPl0s5V52Tst+GKzqjebkULT86XMSxejzfISw==", 3210 - "cpu": [ 3211 - "x64" 3212 - ], 3213 - "license": "MPL-2.0", 3214 - "optional": true, 3215 - "os": [ 3216 - "linux" 3217 - ], 3218 - "engines": { 3219 - "node": ">= 12.0.0" 3220 - }, 3221 - "funding": { 3222 - "type": "opencollective", 3223 - "url": "https://opencollective.com/parcel" 3224 - } 3225 - }, 3226 - "node_modules/lightningcss-linux-x64-musl": { 3227 - "version": "1.29.1", 3228 - "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-musl/-/lightningcss-linux-x64-musl-1.29.1.tgz", 3229 - "integrity": "sha512-L0Tx0DtaNUTzXv0lbGCLB/c/qEADanHbu4QdcNOXLIe1i8i22rZRpbT3gpWYsCh9aSL9zFujY/WmEXIatWvXbw==", 3230 - "cpu": [ 3231 - "x64" 3232 - ], 3233 - "license": "MPL-2.0", 3234 - "optional": true, 3235 - "os": [ 3236 - "linux" 3237 - ], 3238 - "engines": { 3239 - "node": ">= 12.0.0" 3240 - }, 3241 - "funding": { 3242 - "type": "opencollective", 3243 - "url": "https://opencollective.com/parcel" 3244 - } 3245 - }, 3246 - "node_modules/lightningcss-win32-arm64-msvc": { 3247 - "version": "1.29.1", 3248 - "resolved": "https://registry.npmjs.org/lightningcss-win32-arm64-msvc/-/lightningcss-win32-arm64-msvc-1.29.1.tgz", 3249 - "integrity": "sha512-QoOVnkIEFfbW4xPi+dpdft/zAKmgLgsRHfJalEPYuJDOWf7cLQzYg0DEh8/sn737FaeMJxHZRc1oBreiwZCjog==", 3250 - "cpu": [ 3251 - "arm64" 3252 - ], 3253 - "license": "MPL-2.0", 3254 - "optional": true, 3255 - "os": [ 3256 - "win32" 3257 - ], 3258 - "engines": { 3259 - "node": ">= 12.0.0" 3260 - }, 3261 - "funding": { 3262 - "type": "opencollective", 3263 - "url": "https://opencollective.com/parcel" 3264 - } 3265 - }, 3266 - "node_modules/lightningcss-win32-x64-msvc": { 3267 - "version": "1.29.1", 3268 - "resolved": "https://registry.npmjs.org/lightningcss-win32-x64-msvc/-/lightningcss-win32-x64-msvc-1.29.1.tgz", 3269 - "integrity": "sha512-NygcbThNBe4JElP+olyTI/doBNGJvLs3bFCRPdvuCcxZCcCZ71B858IHpdm7L1btZex0FvCmM17FK98Y9MRy1Q==", 3270 - "cpu": [ 3271 - "x64" 3272 - ], 3273 - "license": "MPL-2.0", 3274 - "optional": true, 3275 - "os": [ 3276 - "win32" 3277 - ], 3278 - "engines": { 3279 - "node": ">= 12.0.0" 3280 - }, 3281 - "funding": { 3282 - "type": "opencollective", 3283 - "url": "https://opencollective.com/parcel" 3284 - } 3285 - }, 3286 - "node_modules/lilconfig": { 3287 - "version": "3.1.3", 3288 - "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-3.1.3.tgz", 3289 - "integrity": "sha512-/vlFKAoH5Cgt3Ie+JLhRbwOsCQePABiU3tJ1egGvyQ+33R/vcwM2Zl2QR/LzjsBeItPt3oSVXapn+m4nQDvpzw==", 3290 - "license": "MIT", 3291 - "engines": { 3292 - "node": ">=14" 3293 - }, 3294 - "funding": { 3295 - "url": "https://github.com/sponsors/antonk52" 3296 - } 3297 - }, 3298 - "node_modules/lines-and-columns": { 3299 - "version": "1.2.4", 3300 - "license": "MIT" 3301 - }, 3302 - "node_modules/locate-path": { 3303 - "version": "6.0.0", 3304 - "dev": true, 3305 - "license": "MIT", 3306 - "dependencies": { 3307 - "p-locate": "^5.0.0" 3308 - }, 3309 - "engines": { 3310 - "node": ">=10" 3311 - }, 3312 - "funding": { 3313 - "url": "https://github.com/sponsors/sindresorhus" 3314 - } 3315 - }, 3316 - "node_modules/lodash.merge": { 3317 - "version": "4.6.2", 3318 - "dev": true, 3319 - "license": "MIT" 3320 - }, 3321 - "node_modules/loose-envify": { 3322 - "version": "1.4.0", 3323 - "license": "MIT", 3324 - "dependencies": { 3325 - "js-tokens": "^3.0.0 || ^4.0.0" 3326 - }, 3327 - "bin": { 3328 - "loose-envify": "cli.js" 3329 - } 3330 - }, 3331 - "node_modules/lru-cache": { 3332 - "version": "5.1.1", 3333 - "dev": true, 3334 - "license": "ISC", 3335 - "dependencies": { 3336 - "yallist": "^3.0.2" 3337 - } 3338 - }, 3339 - "node_modules/lucide-react": { 3340 - "version": "0.474.0", 3341 - "resolved": "https://registry.npmjs.org/lucide-react/-/lucide-react-0.474.0.tgz", 3342 - "integrity": "sha512-CmghgHkh0OJNmxGKWc0qfPJCYHASPMVSyGY8fj3xgk4v84ItqDg64JNKFZn5hC6E0vHi6gxnbCgwhyVB09wQtA==", 3343 - "license": "ISC", 3344 - "peerDependencies": { 3345 - "react": "^16.5.1 || ^17.0.0 || ^18.0.0 || ^19.0.0" 3346 - } 3347 - }, 3348 - "node_modules/merge2": { 3349 - "version": "1.4.1", 3350 - "license": "MIT", 3351 - "engines": { 3352 - "node": ">= 8" 3353 - } 3354 - }, 3355 - "node_modules/micromatch": { 3356 - "version": "4.0.8", 3357 - "license": "MIT", 3358 - "dependencies": { 3359 - "braces": "^3.0.3", 3360 - "picomatch": "^2.3.1" 3361 - }, 3362 - "engines": { 3363 - "node": ">=8.6" 3364 - } 3365 - }, 3366 - "node_modules/mime-db": { 3367 - "version": "1.52.0", 3368 - "license": "MIT", 3369 - "engines": { 3370 - "node": ">= 0.6" 3371 - } 3372 - }, 3373 - "node_modules/mime-types": { 3374 - "version": "2.1.35", 3375 - "license": "MIT", 3376 - "dependencies": { 3377 - "mime-db": "1.52.0" 3378 - }, 3379 - "engines": { 3380 - "node": ">= 0.6" 3381 - } 3382 - }, 3383 - "node_modules/minimatch": { 3384 - "version": "3.1.2", 3385 - "dev": true, 3386 - "license": "ISC", 3387 - "dependencies": { 3388 - "brace-expansion": "^1.1.7" 3389 - }, 3390 - "engines": { 3391 - "node": "*" 3392 - } 3393 - }, 3394 - "node_modules/minipass": { 3395 - "version": "7.1.2", 3396 - "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", 3397 - "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==", 3398 - "license": "ISC", 3399 - "engines": { 3400 - "node": ">=16 || 14 >=14.17" 3401 - } 3402 - }, 3403 - "node_modules/ms": { 3404 - "version": "2.1.3", 3405 - "license": "MIT" 3406 - }, 3407 - "node_modules/mz": { 3408 - "version": "2.7.0", 3409 - "resolved": "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz", 3410 - "integrity": "sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==", 3411 - "license": "MIT", 3412 - "dependencies": { 3413 - "any-promise": "^1.0.0", 3414 - "object-assign": "^4.0.1", 3415 - "thenify-all": "^1.0.0" 3416 - } 3417 - }, 3418 - "node_modules/nanoid": { 3419 - "version": "3.3.8", 3420 - "funding": [ 3421 - { 3422 - "type": "github", 3423 - "url": "https://github.com/sponsors/ai" 3424 - } 3425 - ], 3426 - "license": "MIT", 3427 - "bin": { 3428 - "nanoid": "bin/nanoid.cjs" 3429 - }, 3430 - "engines": { 3431 - "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" 3432 - } 3433 - }, 3434 - "node_modules/natural-compare": { 3435 - "version": "1.4.0", 3436 - "dev": true, 3437 - "license": "MIT" 3438 - }, 3439 - "node_modules/node-releases": { 3440 - "version": "2.0.19", 3441 - "dev": true, 3442 - "license": "MIT" 3443 - }, 3444 - "node_modules/normalize-path": { 3445 - "version": "3.0.0", 3446 - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", 3447 - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", 3448 - "license": "MIT", 3449 - "engines": { 3450 - "node": ">=0.10.0" 3451 - } 3452 - }, 3453 - "node_modules/normalize-range": { 3454 - "version": "0.1.2", 3455 - "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", 3456 - "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", 3457 - "dev": true, 3458 - "license": "MIT", 3459 - "engines": { 3460 - "node": ">=0.10.0" 3461 - } 3462 - }, 3463 - "node_modules/object-assign": { 3464 - "version": "4.1.1", 3465 - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", 3466 - "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", 3467 - "license": "MIT", 3468 - "engines": { 3469 - "node": ">=0.10.0" 3470 - } 3471 - }, 3472 - "node_modules/object-hash": { 3473 - "version": "3.0.0", 3474 - "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-3.0.0.tgz", 3475 - "integrity": "sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==", 3476 - "license": "MIT", 3477 - "engines": { 3478 - "node": ">= 6" 3479 - } 3480 - }, 3481 - "node_modules/optionator": { 3482 - "version": "0.9.4", 3483 - "dev": true, 3484 - "license": "MIT", 3485 - "dependencies": { 3486 - "deep-is": "^0.1.3", 3487 - "fast-levenshtein": "^2.0.6", 3488 - "levn": "^0.4.1", 3489 - "prelude-ls": "^1.2.1", 3490 - "type-check": "^0.4.0", 3491 - "word-wrap": "^1.2.5" 3492 - }, 3493 - "engines": { 3494 - "node": ">= 0.8.0" 3495 - } 3496 - }, 3497 - "node_modules/p-limit": { 3498 - "version": "3.1.0", 3499 - "dev": true, 3500 - "license": "MIT", 3501 - "dependencies": { 3502 - "yocto-queue": "^0.1.0" 3503 - }, 3504 - "engines": { 3505 - "node": ">=10" 3506 - }, 3507 - "funding": { 3508 - "url": "https://github.com/sponsors/sindresorhus" 3509 - } 3510 - }, 3511 - "node_modules/p-locate": { 3512 - "version": "5.0.0", 3513 - "dev": true, 3514 - "license": "MIT", 3515 - "dependencies": { 3516 - "p-limit": "^3.0.2" 3517 - }, 3518 - "engines": { 3519 - "node": ">=10" 3520 - }, 3521 - "funding": { 3522 - "url": "https://github.com/sponsors/sindresorhus" 3523 - } 3524 - }, 3525 - "node_modules/package-json-from-dist": { 3526 - "version": "1.0.1", 3527 - "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz", 3528 - "integrity": "sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==", 3529 - "license": "BlueOak-1.0.0" 3530 - }, 3531 - "node_modules/parent-module": { 3532 - "version": "1.0.1", 3533 - "license": "MIT", 3534 - "dependencies": { 3535 - "callsites": "^3.0.0" 3536 - }, 3537 - "engines": { 3538 - "node": ">=6" 3539 - } 3540 - }, 3541 - "node_modules/parse-json": { 3542 - "version": "5.2.0", 3543 - "license": "MIT", 3544 - "dependencies": { 3545 - "@babel/code-frame": "^7.0.0", 3546 - "error-ex": "^1.3.1", 3547 - "json-parse-even-better-errors": "^2.3.0", 3548 - "lines-and-columns": "^1.1.6" 3549 - }, 3550 - "engines": { 3551 - "node": ">=8" 3552 - }, 3553 - "funding": { 3554 - "url": "https://github.com/sponsors/sindresorhus" 3555 - } 3556 - }, 3557 - "node_modules/path-exists": { 3558 - "version": "4.0.0", 3559 - "dev": true, 3560 - "license": "MIT", 3561 - "engines": { 3562 - "node": ">=8" 3563 - } 3564 - }, 3565 - "node_modules/path-key": { 3566 - "version": "3.1.1", 3567 - "license": "MIT", 3568 - "engines": { 3569 - "node": ">=8" 3570 - } 3571 - }, 3572 - "node_modules/path-parse": { 3573 - "version": "1.0.7", 3574 - "license": "MIT" 3575 - }, 3576 - "node_modules/path-scurry": { 3577 - "version": "1.11.1", 3578 - "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz", 3579 - "integrity": "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==", 3580 - "license": "BlueOak-1.0.0", 3581 - "dependencies": { 3582 - "lru-cache": "^10.2.0", 3583 - "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" 3584 - }, 3585 - "engines": { 3586 - "node": ">=16 || 14 >=14.18" 3587 - }, 3588 - "funding": { 3589 - "url": "https://github.com/sponsors/isaacs" 3590 - } 3591 - }, 3592 - "node_modules/path-scurry/node_modules/lru-cache": { 3593 - "version": "10.4.3", 3594 - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", 3595 - "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==", 3596 - "license": "ISC" 3597 - }, 3598 - "node_modules/path-type": { 3599 - "version": "4.0.0", 3600 - "license": "MIT", 3601 - "engines": { 3602 - "node": ">=8" 3603 - } 3604 - }, 3605 - "node_modules/picocolors": { 3606 - "version": "1.1.1", 3607 - "license": "ISC" 3608 - }, 3609 - "node_modules/picomatch": { 3610 - "version": "2.3.1", 3611 - "license": "MIT", 3612 - "engines": { 3613 - "node": ">=8.6" 3614 - }, 3615 - "funding": { 3616 - "url": "https://github.com/sponsors/jonschlinkert" 3617 - } 3618 - }, 3619 - "node_modules/pify": { 3620 - "version": "2.3.0", 3621 - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", 3622 - "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", 3623 - "license": "MIT", 3624 - "engines": { 3625 - "node": ">=0.10.0" 3626 - } 3627 - }, 3628 - "node_modules/pirates": { 3629 - "version": "4.0.6", 3630 - "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz", 3631 - "integrity": "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==", 3632 - "license": "MIT", 3633 - "engines": { 3634 - "node": ">= 6" 3635 - } 3636 - }, 3637 - "node_modules/postcss": { 3638 - "version": "8.5.1", 3639 - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.1.tgz", 3640 - "integrity": "sha512-6oz2beyjc5VMn/KV1pPw8fliQkhBXrVn1Z3TVyqZxU8kZpzEKhBdmCFqI6ZbmGtamQvQGuU1sgPTk8ZrXDD7jQ==", 3641 - "funding": [ 3642 - { 3643 - "type": "opencollective", 3644 - "url": "https://opencollective.com/postcss/" 3645 - }, 3646 - { 3647 - "type": "tidelift", 3648 - "url": "https://tidelift.com/funding/github/npm/postcss" 3649 - }, 3650 - { 3651 - "type": "github", 3652 - "url": "https://github.com/sponsors/ai" 3653 - } 3654 - ], 3655 - "license": "MIT", 3656 - "dependencies": { 3657 - "nanoid": "^3.3.8", 3658 - "picocolors": "^1.1.1", 3659 - "source-map-js": "^1.2.1" 3660 - }, 3661 - "engines": { 3662 - "node": "^10 || ^12 || >=14" 3663 - } 3664 - }, 3665 - "node_modules/postcss-import": { 3666 - "version": "15.1.0", 3667 - "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-15.1.0.tgz", 3668 - "integrity": "sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==", 3669 - "license": "MIT", 3670 - "dependencies": { 3671 - "postcss-value-parser": "^4.0.0", 3672 - "read-cache": "^1.0.0", 3673 - "resolve": "^1.1.7" 3674 - }, 3675 - "engines": { 3676 - "node": ">=14.0.0" 3677 - }, 3678 - "peerDependencies": { 3679 - "postcss": "^8.0.0" 3680 - } 3681 - }, 3682 - "node_modules/postcss-js": { 3683 - "version": "4.0.1", 3684 - "resolved": "https://registry.npmjs.org/postcss-js/-/postcss-js-4.0.1.tgz", 3685 - "integrity": "sha512-dDLF8pEO191hJMtlHFPRa8xsizHaM82MLfNkUHdUtVEV3tgTp5oj+8qbEqYM57SLfc74KSbw//4SeJma2LRVIw==", 3686 - "license": "MIT", 3687 - "dependencies": { 3688 - "camelcase-css": "^2.0.1" 3689 - }, 3690 - "engines": { 3691 - "node": "^12 || ^14 || >= 16" 3692 - }, 3693 - "funding": { 3694 - "type": "opencollective", 3695 - "url": "https://opencollective.com/postcss/" 3696 - }, 3697 - "peerDependencies": { 3698 - "postcss": "^8.4.21" 3699 - } 3700 - }, 3701 - "node_modules/postcss-load-config": { 3702 - "version": "4.0.2", 3703 - "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-4.0.2.tgz", 3704 - "integrity": "sha512-bSVhyJGL00wMVoPUzAVAnbEoWyqRxkjv64tUl427SKnPrENtq6hJwUojroMz2VB+Q1edmi4IfrAPpami5VVgMQ==", 3705 - "funding": [ 3706 - { 3707 - "type": "opencollective", 3708 - "url": "https://opencollective.com/postcss/" 3709 - }, 3710 - { 3711 - "type": "github", 3712 - "url": "https://github.com/sponsors/ai" 3713 - } 3714 - ], 3715 - "license": "MIT", 3716 - "dependencies": { 3717 - "lilconfig": "^3.0.0", 3718 - "yaml": "^2.3.4" 3719 - }, 3720 - "engines": { 3721 - "node": ">= 14" 3722 - }, 3723 - "peerDependencies": { 3724 - "postcss": ">=8.0.9", 3725 - "ts-node": ">=9.0.0" 3726 - }, 3727 - "peerDependenciesMeta": { 3728 - "postcss": { 3729 - "optional": true 3730 - }, 3731 - "ts-node": { 3732 - "optional": true 3733 - } 3734 - } 3735 - }, 3736 - "node_modules/postcss-nested": { 3737 - "version": "6.2.0", 3738 - "resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-6.2.0.tgz", 3739 - "integrity": "sha512-HQbt28KulC5AJzG+cZtj9kvKB93CFCdLvog1WFLf1D+xmMvPGlBstkpTEZfK5+AN9hfJocyBFCNiqyS48bpgzQ==", 3740 - "funding": [ 3741 - { 3742 - "type": "opencollective", 3743 - "url": "https://opencollective.com/postcss/" 3744 - }, 3745 - { 3746 - "type": "github", 3747 - "url": "https://github.com/sponsors/ai" 3748 - } 3749 - ], 3750 - "license": "MIT", 3751 - "dependencies": { 3752 - "postcss-selector-parser": "^6.1.1" 3753 - }, 3754 - "engines": { 3755 - "node": ">=12.0" 3756 - }, 3757 - "peerDependencies": { 3758 - "postcss": "^8.2.14" 3759 - } 3760 - }, 3761 - "node_modules/postcss-selector-parser": { 3762 - "version": "6.1.2", 3763 - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz", 3764 - "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==", 3765 - "license": "MIT", 3766 - "dependencies": { 3767 - "cssesc": "^3.0.0", 3768 - "util-deprecate": "^1.0.2" 3769 - }, 3770 - "engines": { 3771 - "node": ">=4" 3772 - } 3773 - }, 3774 - "node_modules/postcss-value-parser": { 3775 - "version": "4.2.0", 3776 - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", 3777 - "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", 3778 - "license": "MIT" 3779 - }, 3780 - "node_modules/prelude-ls": { 3781 - "version": "1.2.1", 3782 - "dev": true, 3783 - "license": "MIT", 3784 - "engines": { 3785 - "node": ">= 0.8.0" 3786 - } 3787 - }, 3788 - "node_modules/proxy-from-env": { 3789 - "version": "1.1.0", 3790 - "license": "MIT" 3791 - }, 3792 - "node_modules/punycode": { 3793 - "version": "2.3.1", 3794 - "dev": true, 3795 - "license": "MIT", 3796 - "engines": { 3797 - "node": ">=6" 3798 - } 3799 - }, 3800 - "node_modules/queue-microtask": { 3801 - "version": "1.2.3", 3802 - "funding": [ 3803 - { 3804 - "type": "github", 3805 - "url": "https://github.com/sponsors/feross" 3806 - }, 3807 - { 3808 - "type": "patreon", 3809 - "url": "https://www.patreon.com/feross" 3810 - }, 3811 - { 3812 - "type": "consulting", 3813 - "url": "https://feross.org/support" 3814 - } 3815 - ], 3816 - "license": "MIT" 3817 - }, 3818 - "node_modules/react": { 3819 - "version": "18.3.1", 3820 - "license": "MIT", 3821 - "dependencies": { 3822 - "loose-envify": "^1.1.0" 3823 - }, 3824 - "engines": { 3825 - "node": ">=0.10.0" 3826 - } 3827 - }, 3828 - "node_modules/react-dom": { 3829 - "version": "18.3.1", 3830 - "license": "MIT", 3831 - "dependencies": { 3832 - "loose-envify": "^1.1.0", 3833 - "scheduler": "^0.23.2" 3834 - }, 3835 - "peerDependencies": { 3836 - "react": "^18.3.1" 3837 - } 3838 - }, 3839 - "node_modules/react-hook-form": { 3840 - "version": "7.54.2", 3841 - "resolved": "https://registry.npmjs.org/react-hook-form/-/react-hook-form-7.54.2.tgz", 3842 - "integrity": "sha512-eHpAUgUjWbZocoQYUHposymRb4ZP6d0uwUnooL2uOybA9/3tPUvoAKqEWK1WaSiTxxOfTpffNZP7QwlnM3/gEg==", 3843 - "license": "MIT", 3844 - "engines": { 3845 - "node": ">=18.0.0" 3846 - }, 3847 - "funding": { 3848 - "type": "opencollective", 3849 - "url": "https://opencollective.com/react-hook-form" 3850 - }, 3851 - "peerDependencies": { 3852 - "react": "^16.8.0 || ^17 || ^18 || ^19" 3853 - } 3854 - }, 3855 - "node_modules/react-is": { 3856 - "version": "16.13.1", 3857 - "license": "MIT" 3858 - }, 3859 - "node_modules/react-number-format": { 3860 - "version": "5.4.3", 3861 - "license": "MIT", 3862 - "peerDependencies": { 3863 - "react": "^0.14 || ^15.0.0 || ^16.0.0 || ^17.0.0 || ^18.0.0 || ^19.0.0", 3864 - "react-dom": "^0.14 || ^15.0.0 || ^16.0.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" 3865 - } 3866 - }, 3867 - "node_modules/react-refresh": { 3868 - "version": "0.14.2", 3869 - "dev": true, 3870 - "license": "MIT", 3871 - "engines": { 3872 - "node": ">=0.10.0" 3873 - } 3874 - }, 3875 - "node_modules/react-remove-scroll": { 3876 - "version": "2.6.3", 3877 - "license": "MIT", 3878 - "dependencies": { 3879 - "react-remove-scroll-bar": "^2.3.7", 3880 - "react-style-singleton": "^2.2.3", 3881 - "tslib": "^2.1.0", 3882 - "use-callback-ref": "^1.3.3", 3883 - "use-sidecar": "^1.1.3" 3884 - }, 3885 - "engines": { 3886 - "node": ">=10" 3887 - }, 3888 - "peerDependencies": { 3889 - "@types/react": "*", 3890 - "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc" 3891 - }, 3892 - "peerDependenciesMeta": { 3893 - "@types/react": { 3894 - "optional": true 3895 - } 3896 - } 3897 - }, 3898 - "node_modules/react-remove-scroll-bar": { 3899 - "version": "2.3.8", 3900 - "license": "MIT", 3901 - "dependencies": { 3902 - "react-style-singleton": "^2.2.2", 3903 - "tslib": "^2.0.0" 3904 - }, 3905 - "engines": { 3906 - "node": ">=10" 3907 - }, 3908 - "peerDependencies": { 3909 - "@types/react": "*", 3910 - "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" 3911 - }, 3912 - "peerDependenciesMeta": { 3913 - "@types/react": { 3914 - "optional": true 3915 - } 3916 - } 3917 - }, 3918 - "node_modules/react-style-singleton": { 3919 - "version": "2.2.3", 3920 - "license": "MIT", 3921 - "dependencies": { 3922 - "get-nonce": "^1.0.0", 3923 - "tslib": "^2.0.0" 3924 - }, 3925 - "engines": { 3926 - "node": ">=10" 3927 - }, 3928 - "peerDependencies": { 3929 - "@types/react": "*", 3930 - "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc" 3931 - }, 3932 - "peerDependenciesMeta": { 3933 - "@types/react": { 3934 - "optional": true 3935 - } 3936 - } 3937 - }, 3938 - "node_modules/react-textarea-autosize": { 3939 - "version": "8.5.6", 3940 - "license": "MIT", 3941 - "dependencies": { 3942 - "@babel/runtime": "^7.20.13", 3943 - "use-composed-ref": "^1.3.0", 3944 - "use-latest": "^1.2.1" 3945 - }, 3946 - "engines": { 3947 - "node": ">=10" 3948 - }, 3949 - "peerDependencies": { 3950 - "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" 3951 - } 3952 - }, 3953 - "node_modules/read-cache": { 3954 - "version": "1.0.0", 3955 - "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", 3956 - "integrity": "sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==", 3957 - "license": "MIT", 3958 - "dependencies": { 3959 - "pify": "^2.3.0" 3960 - } 3961 - }, 3962 - "node_modules/readdirp": { 3963 - "version": "3.6.0", 3964 - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", 3965 - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", 3966 - "license": "MIT", 3967 - "dependencies": { 3968 - "picomatch": "^2.2.1" 3969 - }, 3970 - "engines": { 3971 - "node": ">=8.10.0" 3972 - } 3973 - }, 3974 - "node_modules/regenerator-runtime": { 3975 - "version": "0.14.1", 3976 - "license": "MIT" 3977 - }, 3978 - "node_modules/resolve": { 3979 - "version": "1.22.10", 3980 - "license": "MIT", 3981 - "dependencies": { 3982 - "is-core-module": "^2.16.0", 3983 - "path-parse": "^1.0.7", 3984 - "supports-preserve-symlinks-flag": "^1.0.0" 3985 - }, 3986 - "bin": { 3987 - "resolve": "bin/resolve" 3988 - }, 3989 - "engines": { 3990 - "node": ">= 0.4" 3991 - }, 3992 - "funding": { 3993 - "url": "https://github.com/sponsors/ljharb" 3994 - } 3995 - }, 3996 - "node_modules/resolve-from": { 3997 - "version": "4.0.0", 3998 - "license": "MIT", 3999 - "engines": { 4000 - "node": ">=4" 4001 - } 4002 - }, 4003 - "node_modules/reusify": { 4004 - "version": "1.0.4", 4005 - "license": "MIT", 4006 - "engines": { 4007 - "iojs": ">=1.0.0", 4008 - "node": ">=0.10.0" 4009 - } 4010 - }, 4011 - "node_modules/rollup": { 4012 - "version": "4.32.0", 4013 - "license": "MIT", 4014 - "dependencies": { 4015 - "@types/estree": "1.0.6" 4016 - }, 4017 - "bin": { 4018 - "rollup": "dist/bin/rollup" 4019 - }, 4020 - "engines": { 4021 - "node": ">=18.0.0", 4022 - "npm": ">=8.0.0" 4023 - }, 4024 - "optionalDependencies": { 4025 - "@rollup/rollup-android-arm-eabi": "4.32.0", 4026 - "@rollup/rollup-android-arm64": "4.32.0", 4027 - "@rollup/rollup-darwin-arm64": "4.32.0", 4028 - "@rollup/rollup-darwin-x64": "4.32.0", 4029 - "@rollup/rollup-freebsd-arm64": "4.32.0", 4030 - "@rollup/rollup-freebsd-x64": "4.32.0", 4031 - "@rollup/rollup-linux-arm-gnueabihf": "4.32.0", 4032 - "@rollup/rollup-linux-arm-musleabihf": "4.32.0", 4033 - "@rollup/rollup-linux-arm64-gnu": "4.32.0", 4034 - "@rollup/rollup-linux-arm64-musl": "4.32.0", 4035 - "@rollup/rollup-linux-loongarch64-gnu": "4.32.0", 4036 - "@rollup/rollup-linux-powerpc64le-gnu": "4.32.0", 4037 - "@rollup/rollup-linux-riscv64-gnu": "4.32.0", 4038 - "@rollup/rollup-linux-s390x-gnu": "4.32.0", 4039 - "@rollup/rollup-linux-x64-gnu": "4.32.0", 4040 - "@rollup/rollup-linux-x64-musl": "4.32.0", 4041 - "@rollup/rollup-win32-arm64-msvc": "4.32.0", 4042 - "@rollup/rollup-win32-ia32-msvc": "4.32.0", 4043 - "@rollup/rollup-win32-x64-msvc": "4.32.0", 4044 - "fsevents": "~2.3.2" 4045 - } 4046 - }, 4047 - "node_modules/run-parallel": { 4048 - "version": "1.2.0", 4049 - "funding": [ 4050 - { 4051 - "type": "github", 4052 - "url": "https://github.com/sponsors/feross" 4053 - }, 4054 - { 4055 - "type": "patreon", 4056 - "url": "https://www.patreon.com/feross" 4057 - }, 4058 - { 4059 - "type": "consulting", 4060 - "url": "https://feross.org/support" 4061 - } 4062 - ], 4063 - "license": "MIT", 4064 - "dependencies": { 4065 - "queue-microtask": "^1.2.2" 4066 - } 4067 - }, 4068 - "node_modules/scheduler": { 4069 - "version": "0.23.2", 4070 - "license": "MIT", 4071 - "dependencies": { 4072 - "loose-envify": "^1.1.0" 4073 - } 4074 - }, 4075 - "node_modules/semver": { 4076 - "version": "6.3.1", 4077 - "dev": true, 4078 - "license": "ISC", 4079 - "bin": { 4080 - "semver": "bin/semver.js" 4081 - } 4082 - }, 4083 - "node_modules/shebang-command": { 4084 - "version": "2.0.0", 4085 - "license": "MIT", 4086 - "dependencies": { 4087 - "shebang-regex": "^3.0.0" 4088 - }, 4089 - "engines": { 4090 - "node": ">=8" 4091 - } 4092 - }, 4093 - "node_modules/shebang-regex": { 4094 - "version": "3.0.0", 4095 - "license": "MIT", 4096 - "engines": { 4097 - "node": ">=8" 4098 - } 4099 - }, 4100 - "node_modules/signal-exit": { 4101 - "version": "4.1.0", 4102 - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", 4103 - "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", 4104 - "license": "ISC", 4105 - "engines": { 4106 - "node": ">=14" 4107 - }, 4108 - "funding": { 4109 - "url": "https://github.com/sponsors/isaacs" 4110 - } 4111 - }, 4112 - "node_modules/source-map": { 4113 - "version": "0.5.7", 4114 - "license": "BSD-3-Clause", 4115 - "engines": { 4116 - "node": ">=0.10.0" 4117 - } 4118 - }, 4119 - "node_modules/source-map-js": { 4120 - "version": "1.2.1", 4121 - "license": "BSD-3-Clause", 4122 - "engines": { 4123 - "node": ">=0.10.0" 4124 - } 4125 - }, 4126 - "node_modules/string-width": { 4127 - "version": "5.1.2", 4128 - "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", 4129 - "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", 4130 - "license": "MIT", 4131 - "dependencies": { 4132 - "eastasianwidth": "^0.2.0", 4133 - "emoji-regex": "^9.2.2", 4134 - "strip-ansi": "^7.0.1" 4135 - }, 4136 - "engines": { 4137 - "node": ">=12" 4138 - }, 4139 - "funding": { 4140 - "url": "https://github.com/sponsors/sindresorhus" 4141 - } 4142 - }, 4143 - "node_modules/string-width-cjs": { 4144 - "name": "string-width", 4145 - "version": "4.2.3", 4146 - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", 4147 - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", 4148 - "license": "MIT", 4149 - "dependencies": { 4150 - "emoji-regex": "^8.0.0", 4151 - "is-fullwidth-code-point": "^3.0.0", 4152 - "strip-ansi": "^6.0.1" 4153 - }, 4154 - "engines": { 4155 - "node": ">=8" 4156 - } 4157 - }, 4158 - "node_modules/string-width-cjs/node_modules/ansi-regex": { 4159 - "version": "5.0.1", 4160 - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", 4161 - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", 4162 - "license": "MIT", 4163 - "engines": { 4164 - "node": ">=8" 4165 - } 4166 - }, 4167 - "node_modules/string-width-cjs/node_modules/emoji-regex": { 4168 - "version": "8.0.0", 4169 - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", 4170 - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", 4171 - "license": "MIT" 4172 - }, 4173 - "node_modules/string-width-cjs/node_modules/strip-ansi": { 4174 - "version": "6.0.1", 4175 - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", 4176 - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", 4177 - "license": "MIT", 4178 - "dependencies": { 4179 - "ansi-regex": "^5.0.1" 4180 - }, 4181 - "engines": { 4182 - "node": ">=8" 4183 - } 4184 - }, 4185 - "node_modules/strip-ansi": { 4186 - "version": "7.1.0", 4187 - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", 4188 - "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", 4189 - "license": "MIT", 4190 - "dependencies": { 4191 - "ansi-regex": "^6.0.1" 4192 - }, 4193 - "engines": { 4194 - "node": ">=12" 4195 - }, 4196 - "funding": { 4197 - "url": "https://github.com/chalk/strip-ansi?sponsor=1" 4198 - } 4199 - }, 4200 - "node_modules/strip-ansi-cjs": { 4201 - "name": "strip-ansi", 4202 - "version": "6.0.1", 4203 - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", 4204 - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", 4205 - "license": "MIT", 4206 - "dependencies": { 4207 - "ansi-regex": "^5.0.1" 4208 - }, 4209 - "engines": { 4210 - "node": ">=8" 4211 - } 4212 - }, 4213 - "node_modules/strip-ansi-cjs/node_modules/ansi-regex": { 4214 - "version": "5.0.1", 4215 - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", 4216 - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", 4217 - "license": "MIT", 4218 - "engines": { 4219 - "node": ">=8" 4220 - } 4221 - }, 4222 - "node_modules/strip-json-comments": { 4223 - "version": "3.1.1", 4224 - "dev": true, 4225 - "license": "MIT", 4226 - "engines": { 4227 - "node": ">=8" 4228 - }, 4229 - "funding": { 4230 - "url": "https://github.com/sponsors/sindresorhus" 4231 - } 4232 - }, 4233 - "node_modules/stylis": { 4234 - "version": "4.2.0", 4235 - "license": "MIT" 4236 - }, 4237 - "node_modules/sucrase": { 4238 - "version": "3.35.0", 4239 - "resolved": "https://registry.npmjs.org/sucrase/-/sucrase-3.35.0.tgz", 4240 - "integrity": "sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==", 4241 - "license": "MIT", 4242 - "dependencies": { 4243 - "@jridgewell/gen-mapping": "^0.3.2", 4244 - "commander": "^4.0.0", 4245 - "glob": "^10.3.10", 4246 - "lines-and-columns": "^1.1.6", 4247 - "mz": "^2.7.0", 4248 - "pirates": "^4.0.1", 4249 - "ts-interface-checker": "^0.1.9" 4250 - }, 4251 - "bin": { 4252 - "sucrase": "bin/sucrase", 4253 - "sucrase-node": "bin/sucrase-node" 4254 - }, 4255 - "engines": { 4256 - "node": ">=16 || 14 >=14.17" 4257 - } 4258 - }, 4259 - "node_modules/supports-color": { 4260 - "version": "7.2.0", 4261 - "dev": true, 4262 - "license": "MIT", 4263 - "dependencies": { 4264 - "has-flag": "^4.0.0" 4265 - }, 4266 - "engines": { 4267 - "node": ">=8" 4268 - } 4269 - }, 4270 - "node_modules/supports-preserve-symlinks-flag": { 4271 - "version": "1.0.0", 4272 - "license": "MIT", 4273 - "engines": { 4274 - "node": ">= 0.4" 4275 - }, 4276 - "funding": { 4277 - "url": "https://github.com/sponsors/ljharb" 4278 - } 4279 - }, 4280 - "node_modules/tabbable": { 4281 - "version": "6.2.0", 4282 - "license": "MIT" 4283 - }, 4284 - "node_modules/tailwind-merge": { 4285 - "version": "2.6.0", 4286 - "resolved": "https://registry.npmjs.org/tailwind-merge/-/tailwind-merge-2.6.0.tgz", 4287 - "integrity": "sha512-P+Vu1qXfzediirmHOC3xKGAYeZtPcV9g76X+xg2FD4tYgR71ewMA35Y3sCz3zhiN/dwefRpJX0yBcgwi1fXNQA==", 4288 - "license": "MIT", 4289 - "funding": { 4290 - "type": "github", 4291 - "url": "https://github.com/sponsors/dcastil" 4292 - } 4293 - }, 4294 - "node_modules/tailwindcss": { 4295 - "version": "3.4.17", 4296 - "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.4.17.tgz", 4297 - "integrity": "sha512-w33E2aCvSDP0tW9RZuNXadXlkHXqFzSkQew/aIa2i/Sj8fThxwovwlXHSPXTbAHwEIhBFXAedUhP2tueAKP8Og==", 4298 - "license": "MIT", 4299 - "dependencies": { 4300 - "@alloc/quick-lru": "^5.2.0", 4301 - "arg": "^5.0.2", 4302 - "chokidar": "^3.6.0", 4303 - "didyoumean": "^1.2.2", 4304 - "dlv": "^1.1.3", 4305 - "fast-glob": "^3.3.2", 4306 - "glob-parent": "^6.0.2", 4307 - "is-glob": "^4.0.3", 4308 - "jiti": "^1.21.6", 4309 - "lilconfig": "^3.1.3", 4310 - "micromatch": "^4.0.8", 4311 - "normalize-path": "^3.0.0", 4312 - "object-hash": "^3.0.0", 4313 - "picocolors": "^1.1.1", 4314 - "postcss": "^8.4.47", 4315 - "postcss-import": "^15.1.0", 4316 - "postcss-js": "^4.0.1", 4317 - "postcss-load-config": "^4.0.2", 4318 - "postcss-nested": "^6.2.0", 4319 - "postcss-selector-parser": "^6.1.2", 4320 - "resolve": "^1.22.8", 4321 - "sucrase": "^3.35.0" 4322 - }, 4323 - "bin": { 4324 - "tailwind": "lib/cli.js", 4325 - "tailwindcss": "lib/cli.js" 4326 - }, 4327 - "engines": { 4328 - "node": ">=14.0.0" 4329 - } 4330 - }, 4331 - "node_modules/tailwindcss-animate": { 4332 - "version": "1.0.7", 4333 - "resolved": "https://registry.npmjs.org/tailwindcss-animate/-/tailwindcss-animate-1.0.7.tgz", 4334 - "integrity": "sha512-bl6mpH3T7I3UFxuvDEXLxy/VuFxBk5bbzplh7tXI68mwMokNYd1t9qPBHlnyTwfa4JGC4zP516I1hYYtQ/vspA==", 4335 - "license": "MIT", 4336 - "peerDependencies": { 4337 - "tailwindcss": ">=3.0.0 || insiders" 4338 - } 4339 - }, 4340 - "node_modules/tailwindcss/node_modules/jiti": { 4341 - "version": "1.21.7", 4342 - "resolved": "https://registry.npmjs.org/jiti/-/jiti-1.21.7.tgz", 4343 - "integrity": "sha512-/imKNG4EbWNrVjoNC/1H5/9GFy+tqjGBHCaSsN+P2RnPqjsLmv6UD3Ej+Kj8nBWaRAwyk7kK5ZUc+OEatnTR3A==", 4344 - "license": "MIT", 4345 - "bin": { 4346 - "jiti": "bin/jiti.js" 4347 - } 4348 - }, 4349 - "node_modules/tapable": { 4350 - "version": "2.2.1", 4351 - "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", 4352 - "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", 4353 - "license": "MIT", 4354 - "engines": { 4355 - "node": ">=6" 4356 - } 4357 - }, 4358 - "node_modules/thenify": { 4359 - "version": "3.3.1", 4360 - "resolved": "https://registry.npmjs.org/thenify/-/thenify-3.3.1.tgz", 4361 - "integrity": "sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==", 4362 - "license": "MIT", 4363 - "dependencies": { 4364 - "any-promise": "^1.0.0" 4365 - } 4366 - }, 4367 - "node_modules/thenify-all": { 4368 - "version": "1.6.0", 4369 - "resolved": "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz", 4370 - "integrity": "sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==", 4371 - "license": "MIT", 4372 - "dependencies": { 4373 - "thenify": ">= 3.1.0 < 4" 4374 - }, 4375 - "engines": { 4376 - "node": ">=0.8" 4377 - } 4378 - }, 4379 - "node_modules/to-regex-range": { 4380 - "version": "5.0.1", 4381 - "license": "MIT", 4382 - "dependencies": { 4383 - "is-number": "^7.0.0" 4384 - }, 4385 - "engines": { 4386 - "node": ">=8.0" 4387 - } 4388 - }, 4389 - "node_modules/ts-api-utils": { 4390 - "version": "2.0.0", 4391 - "dev": true, 4392 - "license": "MIT", 4393 - "engines": { 4394 - "node": ">=18.12" 4395 - }, 4396 - "peerDependencies": { 4397 - "typescript": ">=4.8.4" 4398 - } 4399 - }, 4400 - "node_modules/ts-interface-checker": { 4401 - "version": "0.1.13", 4402 - "resolved": "https://registry.npmjs.org/ts-interface-checker/-/ts-interface-checker-0.1.13.tgz", 4403 - "integrity": "sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==", 4404 - "license": "Apache-2.0" 4405 - }, 4406 - "node_modules/tslib": { 4407 - "version": "2.8.1", 4408 - "license": "0BSD" 4409 - }, 4410 - "node_modules/type-check": { 4411 - "version": "0.4.0", 4412 - "dev": true, 4413 - "license": "MIT", 4414 - "dependencies": { 4415 - "prelude-ls": "^1.2.1" 4416 - }, 4417 - "engines": { 4418 - "node": ">= 0.8.0" 4419 - } 4420 - }, 4421 - "node_modules/type-fest": { 4422 - "version": "4.33.0", 4423 - "license": "(MIT OR CC0-1.0)", 4424 - "engines": { 4425 - "node": ">=16" 4426 - }, 4427 - "funding": { 4428 - "url": "https://github.com/sponsors/sindresorhus" 4429 - } 4430 - }, 4431 - "node_modules/typescript": { 4432 - "version": "5.6.3", 4433 - "dev": true, 4434 - "license": "Apache-2.0", 4435 - "bin": { 4436 - "tsc": "bin/tsc", 4437 - "tsserver": "bin/tsserver" 4438 - }, 4439 - "engines": { 4440 - "node": ">=14.17" 4441 - } 4442 - }, 4443 - "node_modules/typescript-eslint": { 4444 - "version": "8.21.0", 4445 - "dev": true, 4446 - "license": "MIT", 4447 - "dependencies": { 4448 - "@typescript-eslint/eslint-plugin": "8.21.0", 4449 - "@typescript-eslint/parser": "8.21.0", 4450 - "@typescript-eslint/utils": "8.21.0" 4451 - }, 4452 - "engines": { 4453 - "node": "^18.18.0 || ^20.9.0 || >=21.1.0" 4454 - }, 4455 - "funding": { 4456 - "type": "opencollective", 4457 - "url": "https://opencollective.com/typescript-eslint" 4458 - }, 4459 - "peerDependencies": { 4460 - "eslint": "^8.57.0 || ^9.0.0", 4461 - "typescript": ">=4.8.4 <5.8.0" 4462 - } 4463 - }, 4464 - "node_modules/undici-types": { 4465 - "version": "6.20.0", 4466 - "devOptional": true, 4467 - "license": "MIT" 4468 - }, 4469 - "node_modules/update-browserslist-db": { 4470 - "version": "1.1.2", 4471 - "dev": true, 4472 - "funding": [ 4473 - { 4474 - "type": "opencollective", 4475 - "url": "https://opencollective.com/browserslist" 4476 - }, 4477 - { 4478 - "type": "tidelift", 4479 - "url": "https://tidelift.com/funding/github/npm/browserslist" 4480 - }, 4481 - { 4482 - "type": "github", 4483 - "url": "https://github.com/sponsors/ai" 4484 - } 4485 - ], 4486 - "license": "MIT", 4487 - "dependencies": { 4488 - "escalade": "^3.2.0", 4489 - "picocolors": "^1.1.1" 4490 - }, 4491 - "bin": { 4492 - "update-browserslist-db": "cli.js" 4493 - }, 4494 - "peerDependencies": { 4495 - "browserslist": ">= 4.21.0" 4496 - } 4497 - }, 4498 - "node_modules/uri-js": { 4499 - "version": "4.4.1", 4500 - "dev": true, 4501 - "license": "BSD-2-Clause", 4502 - "dependencies": { 4503 - "punycode": "^2.1.0" 4504 - } 4505 - }, 4506 - "node_modules/use-callback-ref": { 4507 - "version": "1.3.3", 4508 - "license": "MIT", 4509 - "dependencies": { 4510 - "tslib": "^2.0.0" 4511 - }, 4512 - "engines": { 4513 - "node": ">=10" 4514 - }, 4515 - "peerDependencies": { 4516 - "@types/react": "*", 4517 - "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc" 4518 - }, 4519 - "peerDependenciesMeta": { 4520 - "@types/react": { 4521 - "optional": true 4522 - } 4523 - } 4524 - }, 4525 - "node_modules/use-composed-ref": { 4526 - "version": "1.4.0", 4527 - "license": "MIT", 4528 - "peerDependencies": { 4529 - "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" 4530 - }, 4531 - "peerDependenciesMeta": { 4532 - "@types/react": { 4533 - "optional": true 4534 - } 4535 - } 4536 - }, 4537 - "node_modules/use-isomorphic-layout-effect": { 4538 - "version": "1.2.0", 4539 - "license": "MIT", 4540 - "peerDependencies": { 4541 - "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" 4542 - }, 4543 - "peerDependenciesMeta": { 4544 - "@types/react": { 4545 - "optional": true 4546 - } 4547 - } 4548 - }, 4549 - "node_modules/use-latest": { 4550 - "version": "1.3.0", 4551 - "license": "MIT", 4552 - "dependencies": { 4553 - "use-isomorphic-layout-effect": "^1.1.1" 4554 - }, 4555 - "peerDependencies": { 4556 - "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0" 4557 - }, 4558 - "peerDependenciesMeta": { 4559 - "@types/react": { 4560 - "optional": true 4561 - } 4562 - } 4563 - }, 4564 - "node_modules/use-sidecar": { 4565 - "version": "1.1.3", 4566 - "license": "MIT", 4567 - "dependencies": { 4568 - "detect-node-es": "^1.1.0", 4569 - "tslib": "^2.0.0" 4570 - }, 4571 - "engines": { 4572 - "node": ">=10" 4573 - }, 4574 - "peerDependencies": { 4575 - "@types/react": "*", 4576 - "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc" 4577 - }, 4578 - "peerDependenciesMeta": { 4579 - "@types/react": { 4580 - "optional": true 4581 - } 4582 - } 4583 - }, 4584 - "node_modules/util-deprecate": { 4585 - "version": "1.0.2", 4586 - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", 4587 - "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", 4588 - "license": "MIT" 4589 - }, 4590 - "node_modules/vite": { 4591 - "version": "6.0.11", 4592 - "license": "MIT", 4593 - "dependencies": { 4594 - "esbuild": "^0.24.2", 4595 - "postcss": "^8.4.49", 4596 - "rollup": "^4.23.0" 4597 - }, 4598 - "bin": { 4599 - "vite": "bin/vite.js" 4600 - }, 4601 - "engines": { 4602 - "node": "^18.0.0 || ^20.0.0 || >=22.0.0" 4603 - }, 4604 - "funding": { 4605 - "url": "https://github.com/vitejs/vite?sponsor=1" 4606 - }, 4607 - "optionalDependencies": { 4608 - "fsevents": "~2.3.3" 4609 - }, 4610 - "peerDependencies": { 4611 - "@types/node": "^18.0.0 || ^20.0.0 || >=22.0.0", 4612 - "jiti": ">=1.21.0", 4613 - "less": "*", 4614 - "lightningcss": "^1.21.0", 4615 - "sass": "*", 4616 - "sass-embedded": "*", 4617 - "stylus": "*", 4618 - "sugarss": "*", 4619 - "terser": "^5.16.0", 4620 - "tsx": "^4.8.1", 4621 - "yaml": "^2.4.2" 4622 - }, 4623 - "peerDependenciesMeta": { 4624 - "@types/node": { 4625 - "optional": true 4626 - }, 4627 - "jiti": { 4628 - "optional": true 4629 - }, 4630 - "less": { 4631 - "optional": true 4632 - }, 4633 - "lightningcss": { 4634 - "optional": true 4635 - }, 4636 - "sass": { 4637 - "optional": true 4638 - }, 4639 - "sass-embedded": { 4640 - "optional": true 4641 - }, 4642 - "stylus": { 4643 - "optional": true 4644 - }, 4645 - "sugarss": { 4646 - "optional": true 4647 - }, 4648 - "terser": { 4649 - "optional": true 4650 - }, 4651 - "tsx": { 4652 - "optional": true 4653 - }, 4654 - "yaml": { 4655 - "optional": true 4656 - } 4657 - } 4658 - }, 4659 - "node_modules/which": { 4660 - "version": "2.0.2", 4661 - "license": "ISC", 4662 - "dependencies": { 4663 - "isexe": "^2.0.0" 4664 - }, 4665 - "bin": { 4666 - "node-which": "bin/node-which" 4667 - }, 4668 - "engines": { 4669 - "node": ">= 8" 4670 - } 4671 - }, 4672 - "node_modules/word-wrap": { 4673 - "version": "1.2.5", 4674 - "dev": true, 4675 - "license": "MIT", 4676 - "engines": { 4677 - "node": ">=0.10.0" 4678 - } 4679 - }, 4680 - "node_modules/wrap-ansi": { 4681 - "version": "8.1.0", 4682 - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", 4683 - "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", 4684 - "license": "MIT", 4685 - "dependencies": { 4686 - "ansi-styles": "^6.1.0", 4687 - "string-width": "^5.0.1", 4688 - "strip-ansi": "^7.0.1" 4689 - }, 4690 - "engines": { 4691 - "node": ">=12" 4692 - }, 4693 - "funding": { 4694 - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" 4695 - } 4696 - }, 4697 - "node_modules/wrap-ansi-cjs": { 4698 - "name": "wrap-ansi", 4699 - "version": "7.0.0", 4700 - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", 4701 - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", 4702 - "license": "MIT", 4703 - "dependencies": { 4704 - "ansi-styles": "^4.0.0", 4705 - "string-width": "^4.1.0", 4706 - "strip-ansi": "^6.0.0" 4707 - }, 4708 - "engines": { 4709 - "node": ">=10" 4710 - }, 4711 - "funding": { 4712 - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" 4713 - } 4714 - }, 4715 - "node_modules/wrap-ansi-cjs/node_modules/ansi-regex": { 4716 - "version": "5.0.1", 4717 - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", 4718 - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", 4719 - "license": "MIT", 4720 - "engines": { 4721 - "node": ">=8" 4722 - } 4723 - }, 4724 - "node_modules/wrap-ansi-cjs/node_modules/emoji-regex": { 4725 - "version": "8.0.0", 4726 - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", 4727 - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", 4728 - "license": "MIT" 4729 - }, 4730 - "node_modules/wrap-ansi-cjs/node_modules/string-width": { 4731 - "version": "4.2.3", 4732 - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", 4733 - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", 4734 - "license": "MIT", 4735 - "dependencies": { 4736 - "emoji-regex": "^8.0.0", 4737 - "is-fullwidth-code-point": "^3.0.0", 4738 - "strip-ansi": "^6.0.1" 4739 - }, 4740 - "engines": { 4741 - "node": ">=8" 4742 - } 4743 - }, 4744 - "node_modules/wrap-ansi-cjs/node_modules/strip-ansi": { 4745 - "version": "6.0.1", 4746 - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", 4747 - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", 4748 - "license": "MIT", 4749 - "dependencies": { 4750 - "ansi-regex": "^5.0.1" 4751 - }, 4752 - "engines": { 4753 - "node": ">=8" 4754 - } 4755 - }, 4756 - "node_modules/wrap-ansi/node_modules/ansi-styles": { 4757 - "version": "6.2.1", 4758 - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", 4759 - "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", 4760 - "license": "MIT", 4761 - "engines": { 4762 - "node": ">=12" 4763 - }, 4764 - "funding": { 4765 - "url": "https://github.com/chalk/ansi-styles?sponsor=1" 4766 - } 4767 - }, 4768 - "node_modules/yallist": { 4769 - "version": "3.1.1", 4770 - "dev": true, 4771 - "license": "ISC" 4772 - }, 4773 - "node_modules/yaml": { 4774 - "version": "2.7.0", 4775 - "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.7.0.tgz", 4776 - "integrity": "sha512-+hSoy/QHluxmC9kCIJyL/uyFmLmc+e5CFR5Wa+bpIhIj85LVb9ZH2nVnqrHoSvKogwODv0ClqZkmiSSaIH5LTA==", 4777 - "license": "ISC", 4778 - "bin": { 4779 - "yaml": "bin.mjs" 4780 - }, 4781 - "engines": { 4782 - "node": ">= 14" 4783 - } 4784 - }, 4785 - "node_modules/yocto-queue": { 4786 - "version": "0.1.0", 4787 - "dev": true, 4788 - "license": "MIT", 4789 - "engines": { 4790 - "node": ">=10" 4791 - }, 4792 - "funding": { 4793 - "url": "https://github.com/sponsors/sindresorhus" 4794 - } 4795 - }, 4796 - "node_modules/zod": { 4797 - "version": "3.24.1", 4798 - "resolved": "https://registry.npmjs.org/zod/-/zod-3.24.1.tgz", 4799 - "integrity": "sha512-muH7gBL9sI1nciMZV67X5fTKKBLtwpZ5VBp1vsOQzj1MhrBZ4wlVCm3gedKZWLp0Oyel8sIGfeiz54Su+OVT+A==", 4800 - "license": "MIT", 4801 - "funding": { 4802 - "url": "https://github.com/sponsors/colinhacks" 4803 - } 4804 - } 4805 - } 4806 - }
+3 -2
frontend/package.json
··· 16 16 "@mantine/form": "^7.16.1", 17 17 "@mantine/hooks": "^7.16.1", 18 18 "@radix-ui/react-dialog": "^1.1.5", 19 + "@radix-ui/react-dropdown-menu": "^2.1.5", 19 20 "@radix-ui/react-label": "^2.1.1", 20 21 "@radix-ui/react-slot": "^1.1.1", 21 22 "@radix-ui/react-tabs": "^1.1.2", ··· 34 35 }, 35 36 "devDependencies": { 36 37 "@eslint/js": "^9.17.0", 38 + "@tailwindcss/postcss": "^4.0.0", 37 39 "@types/node": "^22.10.10", 38 40 "@types/react": "^18.3.18", 39 41 "@types/react-dom": "^18.3.5", 40 42 "@vitejs/plugin-react": "^4.3.4", 41 - "autoprefixer": "^10.4.20", 42 43 "eslint": "^9.17.0", 43 44 "eslint-plugin-react-hooks": "^5.0.0", 44 45 "eslint-plugin-react-refresh": "^0.4.16", 45 46 "globals": "^15.14.0", 46 47 "postcss": "^8.5.1", 47 - "tailwindcss": "3.4.17", 48 + "tailwindcss": "^4.0.0", 48 49 "typescript": "~5.6.2", 49 50 "typescript-eslint": "^8.18.2", 50 51 "vite": "^6.0.5"
+1 -2
frontend/postcss.config.js
··· 1 1 export default { 2 2 plugins: { 3 - tailwindcss: {}, 4 - autoprefixer: {}, 3 + '@tailwindcss/postcss': {}, 5 4 }, 6 5 }
-1
frontend/public/vite.svg
··· 1 - <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" class="iconify iconify--logos" width="31.88" height="32" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 257"><defs><linearGradient id="IconifyId1813088fe1fbc01fb466" x1="-.828%" x2="57.636%" y1="7.652%" y2="78.411%"><stop offset="0%" stop-color="#41D1FF"></stop><stop offset="100%" stop-color="#BD34FE"></stop></linearGradient><linearGradient id="IconifyId1813088fe1fbc01fb467" x1="43.376%" x2="50.316%" y1="2.242%" y2="89.03%"><stop offset="0%" stop-color="#FFEA83"></stop><stop offset="8.333%" stop-color="#FFDD35"></stop><stop offset="100%" stop-color="#FFA800"></stop></linearGradient></defs><path fill="url(#IconifyId1813088fe1fbc01fb466)" d="M255.153 37.938L134.897 252.976c-2.483 4.44-8.862 4.466-11.382.048L.875 37.958c-2.746-4.814 1.371-10.646 6.827-9.67l120.385 21.517a6.537 6.537 0 0 0 2.322-.004l117.867-21.483c5.438-.991 9.574 4.796 6.877 9.62Z"></path><path fill="url(#IconifyId1813088fe1fbc01fb467)" d="M185.432.063L96.44 17.501a3.268 3.268 0 0 0-2.634 3.014l-5.474 92.456a3.268 3.268 0 0 0 3.997 3.378l24.777-5.718c2.318-.535 4.413 1.507 3.936 3.838l-7.361 36.047c-.495 2.426 1.782 4.5 4.151 3.78l15.304-4.649c2.372-.72 4.652 1.36 4.15 3.788l-11.698 56.621c-.732 3.542 3.979 5.473 5.943 2.437l1.313-2.028l72.516-144.72c1.215-2.423-.88-5.186-3.54-4.672l-25.505 4.922c-2.396.462-4.435-1.77-3.759-4.114l16.646-57.705c.677-2.35-1.37-4.583-3.769-4.113Z"></path></svg>
+33 -25
frontend/src/App.tsx
··· 1 - import { Container } from './components/ui/container' 1 + import { ThemeProvider } from "@/components/theme-provider" 2 2 import { Button } from './components/ui/button' 3 3 import { LinkForm } from './components/LinkForm' 4 4 import { LinkList } from './components/LinkList' ··· 17 17 } 18 18 19 19 return ( 20 - <div className="container max-w-6xl py-8"> 21 - <div className="space-y-8"> 22 - <div className="flex items-center justify-between"> 23 - <h1 className="text-3xl font-bold">URL Shortener</h1> 24 - {user && ( 25 - <div className="flex items-center gap-4"> 26 - <p className="text-sm text-muted-foreground">Welcome, {user.email}</p> 27 - <Button variant="outline" onClick={logout}> 28 - Logout 29 - </Button> 30 - </div> 20 + <div className="min-h-screen flex flex-col"> 21 + <div className="container max-w-6xl mx-auto py-8 flex-1 flex flex-col"> 22 + <div className="space-y-8 flex-1 flex flex-col justify-center"> 23 + <div className="flex items-center justify-between"> 24 + <h1 className="text-3xl font-bold">SimpleLink</h1> 25 + {user ? ( 26 + <div className="flex items-center gap-4"> 27 + <p className="text-sm text-muted-foreground">Welcome, {user.email}</p> 28 + <Button variant="outline" onClick={logout}> 29 + Logout 30 + </Button> 31 + </div> 32 + ) : ( 33 + <div className="flex items-center gap-4"> 34 + <p className="text-sm text-muted-foreground">A link shortening and tracking service</p> 35 + </div> 36 + )} 37 + </div> 38 + 39 + {user ? ( 40 + <> 41 + <LinkForm onSuccess={handleLinkCreated} /> 42 + <LinkList refresh={refreshCounter} /> 43 + </> 44 + ) : ( 45 + <AuthForms /> 31 46 )} 32 47 </div> 33 - 34 - {user ? ( 35 - <> 36 - <LinkForm onSuccess={handleLinkCreated} /> 37 - <LinkList refresh={refreshCounter} /> 38 - </> 39 - ) : ( 40 - <AuthForms /> 41 - )} 42 48 </div> 43 49 </div> 44 50 ) ··· 46 52 47 53 function App() { 48 54 return ( 49 - <AuthProvider> 50 - <AppContent /> 51 - <Toaster /> 52 - </AuthProvider> 55 + <ThemeProvider defaultTheme="dark" storageKey="vite-ui-theme"> 56 + <AuthProvider> 57 + <AppContent /> 58 + <Toaster /> 59 + </AuthProvider> 60 + </ThemeProvider> 53 61 ) 54 62 } 55 63
-1
frontend/src/assets/react.svg
··· 1 - <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" class="iconify iconify--logos" width="35.93" height="32" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 228"><path fill="#00D8FF" d="M210.483 73.824a171.49 171.49 0 0 0-8.24-2.597c.465-1.9.893-3.777 1.273-5.621c6.238-30.281 2.16-54.676-11.769-62.708c-13.355-7.7-35.196.329-57.254 19.526a171.23 171.23 0 0 0-6.375 5.848a155.866 155.866 0 0 0-4.241-3.917C100.759 3.829 77.587-4.822 63.673 3.233C50.33 10.957 46.379 33.89 51.995 62.588a170.974 170.974 0 0 0 1.892 8.48c-3.28.932-6.445 1.924-9.474 2.98C17.309 83.498 0 98.307 0 113.668c0 15.865 18.582 31.778 46.812 41.427a145.52 145.52 0 0 0 6.921 2.165a167.467 167.467 0 0 0-2.01 9.138c-5.354 28.2-1.173 50.591 12.134 58.266c13.744 7.926 36.812-.22 59.273-19.855a145.567 145.567 0 0 0 5.342-4.923a168.064 168.064 0 0 0 6.92 6.314c21.758 18.722 43.246 26.282 56.54 18.586c13.731-7.949 18.194-32.003 12.4-61.268a145.016 145.016 0 0 0-1.535-6.842c1.62-.48 3.21-.974 4.76-1.488c29.348-9.723 48.443-25.443 48.443-41.52c0-15.417-17.868-30.326-45.517-39.844Zm-6.365 70.984c-1.4.463-2.836.91-4.3 1.345c-3.24-10.257-7.612-21.163-12.963-32.432c5.106-11 9.31-21.767 12.459-31.957c2.619.758 5.16 1.557 7.61 2.4c23.69 8.156 38.14 20.213 38.14 29.504c0 9.896-15.606 22.743-40.946 31.14Zm-10.514 20.834c2.562 12.94 2.927 24.64 1.23 33.787c-1.524 8.219-4.59 13.698-8.382 15.893c-8.067 4.67-25.32-1.4-43.927-17.412a156.726 156.726 0 0 1-6.437-5.87c7.214-7.889 14.423-17.06 21.459-27.246c12.376-1.098 24.068-2.894 34.671-5.345a134.17 134.17 0 0 1 1.386 6.193ZM87.276 214.515c-7.882 2.783-14.16 2.863-17.955.675c-8.075-4.657-11.432-22.636-6.853-46.752a156.923 156.923 0 0 1 1.869-8.499c10.486 2.32 22.093 3.988 34.498 4.994c7.084 9.967 14.501 19.128 21.976 27.15a134.668 134.668 0 0 1-4.877 4.492c-9.933 8.682-19.886 14.842-28.658 17.94ZM50.35 144.747c-12.483-4.267-22.792-9.812-29.858-15.863c-6.35-5.437-9.555-10.836-9.555-15.216c0-9.322 13.897-21.212 37.076-29.293c2.813-.98 5.757-1.905 8.812-2.773c3.204 10.42 7.406 21.315 12.477 32.332c-5.137 11.18-9.399 22.249-12.634 32.792a134.718 134.718 0 0 1-6.318-1.979Zm12.378-84.26c-4.811-24.587-1.616-43.134 6.425-47.789c8.564-4.958 27.502 2.111 47.463 19.835a144.318 144.318 0 0 1 3.841 3.545c-7.438 7.987-14.787 17.08-21.808 26.988c-12.04 1.116-23.565 2.908-34.161 5.309a160.342 160.342 0 0 1-1.76-7.887Zm110.427 27.268a347.8 347.8 0 0 0-7.785-12.803c8.168 1.033 15.994 2.404 23.343 4.08c-2.206 7.072-4.956 14.465-8.193 22.045a381.151 381.151 0 0 0-7.365-13.322Zm-45.032-43.861c5.044 5.465 10.096 11.566 15.065 18.186a322.04 322.04 0 0 0-30.257-.006c4.974-6.559 10.069-12.652 15.192-18.18ZM82.802 87.83a323.167 323.167 0 0 0-7.227 13.238c-3.184-7.553-5.909-14.98-8.134-22.152c7.304-1.634 15.093-2.97 23.209-3.984a321.524 321.524 0 0 0-7.848 12.897Zm8.081 65.352c-8.385-.936-16.291-2.203-23.593-3.793c2.26-7.3 5.045-14.885 8.298-22.6a321.187 321.187 0 0 0 7.257 13.246c2.594 4.48 5.28 8.868 8.038 13.147Zm37.542 31.03c-5.184-5.592-10.354-11.779-15.403-18.433c4.902.192 9.899.29 14.978.29c5.218 0 10.376-.117 15.453-.343c-4.985 6.774-10.018 12.97-15.028 18.486Zm52.198-57.817c3.422 7.8 6.306 15.345 8.596 22.52c-7.422 1.694-15.436 3.058-23.88 4.071a382.417 382.417 0 0 0 7.859-13.026a347.403 347.403 0 0 0 7.425-13.565Zm-16.898 8.101a358.557 358.557 0 0 1-12.281 19.815a329.4 329.4 0 0 1-23.444.823c-7.967 0-15.716-.248-23.178-.732a310.202 310.202 0 0 1-12.513-19.846h.001a307.41 307.41 0 0 1-10.923-20.627a310.278 310.278 0 0 1 10.89-20.637l-.001.001a307.318 307.318 0 0 1 12.413-19.761c7.613-.576 15.42-.876 23.31-.876H128c7.926 0 15.743.303 23.354.883a329.357 329.357 0 0 1 12.335 19.695a358.489 358.489 0 0 1 11.036 20.54a329.472 329.472 0 0 1-11 20.722Zm22.56-122.124c8.572 4.944 11.906 24.881 6.52 51.026c-.344 1.668-.73 3.367-1.15 5.09c-10.622-2.452-22.155-4.275-34.23-5.408c-7.034-10.017-14.323-19.124-21.64-27.008a160.789 160.789 0 0 1 5.888-5.4c18.9-16.447 36.564-22.941 44.612-18.3ZM128 90.808c12.625 0 22.86 10.235 22.86 22.86s-10.235 22.86-22.86 22.86s-22.86-10.235-22.86-22.86s10.235-22.86 22.86-22.86Z"></path></svg>
+37
frontend/src/components/mode-toggle.tsx
··· 1 + import { Moon, Sun } from "lucide-react" 2 + 3 + import { Button } from "@/components/ui/button" 4 + import { 5 + DropdownMenu, 6 + DropdownMenuContent, 7 + DropdownMenuItem, 8 + DropdownMenuTrigger, 9 + } from "@/components/ui/dropdown-menu" 10 + import { useTheme } from "@/components/theme-provider" 11 + 12 + export function ModeToggle() { 13 + const { setTheme } = useTheme() 14 + 15 + return ( 16 + <DropdownMenu> 17 + <DropdownMenuTrigger asChild> 18 + <Button variant="outline" size="icon"> 19 + <Sun className="h-[1.2rem] w-[1.2rem] rotate-0 scale-100 transition-all dark:-rotate-90 dark:scale-0" /> 20 + <Moon className="absolute h-[1.2rem] w-[1.2rem] rotate-90 scale-0 transition-all dark:rotate-0 dark:scale-100" /> 21 + <span className="sr-only">Toggle theme</span> 22 + </Button> 23 + </DropdownMenuTrigger> 24 + <DropdownMenuContent align="end"> 25 + <DropdownMenuItem onClick={() => setTheme("light")}> 26 + Light 27 + </DropdownMenuItem> 28 + <DropdownMenuItem onClick={() => setTheme("dark")}> 29 + Dark 30 + </DropdownMenuItem> 31 + <DropdownMenuItem onClick={() => setTheme("system")}> 32 + System 33 + </DropdownMenuItem> 34 + </DropdownMenuContent> 35 + </DropdownMenu> 36 + ) 37 + }
+73
frontend/src/components/theme-provider.tsx
··· 1 + import { createContext, useContext, useEffect, useState } from "react" 2 + 3 + type Theme = "dark" | "light" | "system" 4 + 5 + type ThemeProviderProps = { 6 + children: React.ReactNode 7 + defaultTheme?: Theme 8 + storageKey?: string 9 + } 10 + 11 + type ThemeProviderState = { 12 + theme: Theme 13 + setTheme: (theme: Theme) => void 14 + } 15 + 16 + const initialState: ThemeProviderState = { 17 + theme: "system", 18 + setTheme: () => null, 19 + } 20 + 21 + const ThemeProviderContext = createContext<ThemeProviderState>(initialState) 22 + 23 + export function ThemeProvider({ 24 + children, 25 + defaultTheme = "system", 26 + storageKey = "vite-ui-theme", 27 + ...props 28 + }: ThemeProviderProps) { 29 + const [theme, setTheme] = useState<Theme>( 30 + () => (localStorage.getItem(storageKey) as Theme) || defaultTheme 31 + ) 32 + 33 + useEffect(() => { 34 + const root = window.document.documentElement 35 + 36 + root.classList.remove("light", "dark") 37 + 38 + if (theme === "system") { 39 + const systemTheme = window.matchMedia("(prefers-color-scheme: dark)") 40 + .matches 41 + ? "dark" 42 + : "light" 43 + 44 + root.classList.add(systemTheme) 45 + return 46 + } 47 + 48 + root.classList.add(theme) 49 + }, [theme]) 50 + 51 + const value = { 52 + theme, 53 + setTheme: (theme: Theme) => { 54 + localStorage.setItem(storageKey, theme) 55 + setTheme(theme) 56 + }, 57 + } 58 + 59 + return ( 60 + <ThemeProviderContext.Provider {...props} value={value}> 61 + {children} 62 + </ThemeProviderContext.Provider> 63 + ) 64 + } 65 + 66 + export const useTheme = () => { 67 + const context = useContext(ThemeProviderContext) 68 + 69 + if (context === undefined) 70 + throw new Error("useTheme must be used within a ThemeProvider") 71 + 72 + return context 73 + }
+5 -5
frontend/src/components/ui/button.tsx
··· 5 5 import { cn } from "@/lib/utils" 6 6 7 7 const buttonVariants = cva( 8 - "inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0", 8 + "inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-hidden focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0", 9 9 { 10 10 variants: { 11 11 variant: { 12 12 default: 13 - "bg-primary text-primary-foreground shadow hover:bg-primary/90", 13 + "bg-primary text-primary-foreground shadow-sm hover:bg-primary/90", 14 14 destructive: 15 - "bg-destructive text-destructive-foreground shadow-sm hover:bg-destructive/90", 15 + "bg-destructive text-destructive-foreground shadow-xs hover:bg-destructive/90", 16 16 outline: 17 - "border border-input bg-background shadow-sm hover:bg-accent hover:text-accent-foreground", 17 + "border border-input bg-background shadow-xs hover:bg-accent hover:text-accent-foreground", 18 18 secondary: 19 - "bg-secondary text-secondary-foreground shadow-sm hover:bg-secondary/80", 19 + "bg-secondary text-secondary-foreground shadow-xs hover:bg-secondary/80", 20 20 ghost: "hover:bg-accent hover:text-accent-foreground", 21 21 link: "text-primary underline-offset-4 hover:underline", 22 22 },
+1 -1
frontend/src/components/ui/card.tsx
··· 9 9 <div 10 10 ref={ref} 11 11 className={cn( 12 - "rounded-xl border bg-card text-card-foreground shadow", 12 + "rounded-xl border bg-card text-card-foreground shadow-sm", 13 13 className 14 14 )} 15 15 {...props}
+1 -1
frontend/src/components/ui/dialog.tsx
··· 42 42 {...props} 43 43 > 44 44 {children} 45 - <DialogPrimitive.Close className="absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-accent data-[state=open]:text-muted-foreground"> 45 + <DialogPrimitive.Close className="absolute right-4 top-4 rounded-xs opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-hidden focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-accent data-[state=open]:text-muted-foreground"> 46 46 <X className="h-4 w-4" /> 47 47 <span className="sr-only">Close</span> 48 48 </DialogPrimitive.Close>
+199
frontend/src/components/ui/dropdown-menu.tsx
··· 1 + import * as React from "react" 2 + import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu" 3 + import { Check, ChevronRight, Circle } from "lucide-react" 4 + 5 + import { cn } from "@/lib/utils" 6 + 7 + const DropdownMenu = DropdownMenuPrimitive.Root 8 + 9 + const DropdownMenuTrigger = DropdownMenuPrimitive.Trigger 10 + 11 + const DropdownMenuGroup = DropdownMenuPrimitive.Group 12 + 13 + const DropdownMenuPortal = DropdownMenuPrimitive.Portal 14 + 15 + const DropdownMenuSub = DropdownMenuPrimitive.Sub 16 + 17 + const DropdownMenuRadioGroup = DropdownMenuPrimitive.RadioGroup 18 + 19 + const DropdownMenuSubTrigger = React.forwardRef< 20 + React.ElementRef<typeof DropdownMenuPrimitive.SubTrigger>, 21 + React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.SubTrigger> & { 22 + inset?: boolean 23 + } 24 + >(({ className, inset, children, ...props }, ref) => ( 25 + <DropdownMenuPrimitive.SubTrigger 26 + ref={ref} 27 + className={cn( 28 + "flex cursor-default gap-2 select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-accent data-[state=open]:bg-accent [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0", 29 + inset && "pl-8", 30 + className 31 + )} 32 + {...props} 33 + > 34 + {children} 35 + <ChevronRight className="ml-auto" /> 36 + </DropdownMenuPrimitive.SubTrigger> 37 + )) 38 + DropdownMenuSubTrigger.displayName = 39 + DropdownMenuPrimitive.SubTrigger.displayName 40 + 41 + const DropdownMenuSubContent = React.forwardRef< 42 + React.ElementRef<typeof DropdownMenuPrimitive.SubContent>, 43 + React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.SubContent> 44 + >(({ className, ...props }, ref) => ( 45 + <DropdownMenuPrimitive.SubContent 46 + ref={ref} 47 + className={cn( 48 + "z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-lg data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2", 49 + className 50 + )} 51 + {...props} 52 + /> 53 + )) 54 + DropdownMenuSubContent.displayName = 55 + DropdownMenuPrimitive.SubContent.displayName 56 + 57 + const DropdownMenuContent = React.forwardRef< 58 + React.ElementRef<typeof DropdownMenuPrimitive.Content>, 59 + React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Content> 60 + >(({ className, sideOffset = 4, ...props }, ref) => ( 61 + <DropdownMenuPrimitive.Portal> 62 + <DropdownMenuPrimitive.Content 63 + ref={ref} 64 + sideOffset={sideOffset} 65 + className={cn( 66 + "z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md", 67 + "data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2", 68 + className 69 + )} 70 + {...props} 71 + /> 72 + </DropdownMenuPrimitive.Portal> 73 + )) 74 + DropdownMenuContent.displayName = DropdownMenuPrimitive.Content.displayName 75 + 76 + const DropdownMenuItem = React.forwardRef< 77 + React.ElementRef<typeof DropdownMenuPrimitive.Item>, 78 + React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Item> & { 79 + inset?: boolean 80 + } 81 + >(({ className, inset, ...props }, ref) => ( 82 + <DropdownMenuPrimitive.Item 83 + ref={ref} 84 + className={cn( 85 + "relative flex cursor-default select-none items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&>svg]:size-4 [&>svg]:shrink-0", 86 + inset && "pl-8", 87 + className 88 + )} 89 + {...props} 90 + /> 91 + )) 92 + DropdownMenuItem.displayName = DropdownMenuPrimitive.Item.displayName 93 + 94 + const DropdownMenuCheckboxItem = React.forwardRef< 95 + React.ElementRef<typeof DropdownMenuPrimitive.CheckboxItem>, 96 + React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.CheckboxItem> 97 + >(({ className, children, checked, ...props }, ref) => ( 98 + <DropdownMenuPrimitive.CheckboxItem 99 + ref={ref} 100 + className={cn( 101 + "relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50", 102 + className 103 + )} 104 + checked={checked} 105 + {...props} 106 + > 107 + <span className="absolute left-2 flex h-3.5 w-3.5 items-center justify-center"> 108 + <DropdownMenuPrimitive.ItemIndicator> 109 + <Check className="h-4 w-4" /> 110 + </DropdownMenuPrimitive.ItemIndicator> 111 + </span> 112 + {children} 113 + </DropdownMenuPrimitive.CheckboxItem> 114 + )) 115 + DropdownMenuCheckboxItem.displayName = 116 + DropdownMenuPrimitive.CheckboxItem.displayName 117 + 118 + const DropdownMenuRadioItem = React.forwardRef< 119 + React.ElementRef<typeof DropdownMenuPrimitive.RadioItem>, 120 + React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.RadioItem> 121 + >(({ className, children, ...props }, ref) => ( 122 + <DropdownMenuPrimitive.RadioItem 123 + ref={ref} 124 + className={cn( 125 + "relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50", 126 + className 127 + )} 128 + {...props} 129 + > 130 + <span className="absolute left-2 flex h-3.5 w-3.5 items-center justify-center"> 131 + <DropdownMenuPrimitive.ItemIndicator> 132 + <Circle className="h-2 w-2 fill-current" /> 133 + </DropdownMenuPrimitive.ItemIndicator> 134 + </span> 135 + {children} 136 + </DropdownMenuPrimitive.RadioItem> 137 + )) 138 + DropdownMenuRadioItem.displayName = DropdownMenuPrimitive.RadioItem.displayName 139 + 140 + const DropdownMenuLabel = React.forwardRef< 141 + React.ElementRef<typeof DropdownMenuPrimitive.Label>, 142 + React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Label> & { 143 + inset?: boolean 144 + } 145 + >(({ className, inset, ...props }, ref) => ( 146 + <DropdownMenuPrimitive.Label 147 + ref={ref} 148 + className={cn( 149 + "px-2 py-1.5 text-sm font-semibold", 150 + inset && "pl-8", 151 + className 152 + )} 153 + {...props} 154 + /> 155 + )) 156 + DropdownMenuLabel.displayName = DropdownMenuPrimitive.Label.displayName 157 + 158 + const DropdownMenuSeparator = React.forwardRef< 159 + React.ElementRef<typeof DropdownMenuPrimitive.Separator>, 160 + React.ComponentPropsWithoutRef<typeof DropdownMenuPrimitive.Separator> 161 + >(({ className, ...props }, ref) => ( 162 + <DropdownMenuPrimitive.Separator 163 + ref={ref} 164 + className={cn("-mx-1 my-1 h-px bg-muted", className)} 165 + {...props} 166 + /> 167 + )) 168 + DropdownMenuSeparator.displayName = DropdownMenuPrimitive.Separator.displayName 169 + 170 + const DropdownMenuShortcut = ({ 171 + className, 172 + ...props 173 + }: React.HTMLAttributes<HTMLSpanElement>) => { 174 + return ( 175 + <span 176 + className={cn("ml-auto text-xs tracking-widest opacity-60", className)} 177 + {...props} 178 + /> 179 + ) 180 + } 181 + DropdownMenuShortcut.displayName = "DropdownMenuShortcut" 182 + 183 + export { 184 + DropdownMenu, 185 + DropdownMenuTrigger, 186 + DropdownMenuContent, 187 + DropdownMenuItem, 188 + DropdownMenuCheckboxItem, 189 + DropdownMenuRadioItem, 190 + DropdownMenuLabel, 191 + DropdownMenuSeparator, 192 + DropdownMenuShortcut, 193 + DropdownMenuGroup, 194 + DropdownMenuPortal, 195 + DropdownMenuSub, 196 + DropdownMenuSubContent, 197 + DropdownMenuSubTrigger, 198 + DropdownMenuRadioGroup, 199 + }
+1 -1
frontend/src/components/ui/input.tsx
··· 8 8 <input 9 9 type={type} 10 10 className={cn( 11 - "flex h-9 w-full rounded-md border border-input bg-transparent px-3 py-1 text-base shadow-sm transition-colors file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50 md:text-sm", 11 + "flex h-9 w-full rounded-md border border-input bg-transparent px-3 py-1 text-base shadow-xs transition-colors file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:outline-hidden focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50 md:text-sm", 12 12 className 13 13 )} 14 14 ref={ref}
+1 -1
frontend/src/components/ui/table.tsx
··· 43 43 <tfoot 44 44 ref={ref} 45 45 className={cn( 46 - "border-t bg-muted/50 font-medium [&>tr]:last:border-b-0", 46 + "border-t bg-muted/50 font-medium last:[&>tr]:border-b-0", 47 47 className 48 48 )} 49 49 {...props}
+2 -2
frontend/src/components/ui/tabs.tsx
··· 27 27 <TabsPrimitive.Trigger 28 28 ref={ref} 29 29 className={cn( 30 - "inline-flex items-center justify-center whitespace-nowrap rounded-md px-3 py-1 text-sm font-medium ring-offset-background transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:bg-background data-[state=active]:text-foreground data-[state=active]:shadow", 30 + "inline-flex items-center justify-center whitespace-nowrap rounded-md px-3 py-1 text-sm font-medium ring-offset-background transition-all focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:bg-background data-[state=active]:text-foreground data-[state=active]:shadow-sm", 31 31 className 32 32 )} 33 33 {...props} ··· 42 42 <TabsPrimitive.Content 43 43 ref={ref} 44 44 className={cn( 45 - "mt-2 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2", 45 + "mt-2 ring-offset-background focus-visible:outline-hidden focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2", 46 46 className 47 47 )} 48 48 {...props}
+3 -3
frontend/src/components/ui/toast.tsx
··· 16 16 <ToastPrimitives.Viewport 17 17 ref={ref} 18 18 className={cn( 19 - "fixed top-0 z-[100] flex max-h-screen w-full flex-col-reverse p-4 sm:bottom-0 sm:right-0 sm:top-auto sm:flex-col md:max-w-[420px]", 19 + "fixed top-0 z-100 flex max-h-screen w-full flex-col-reverse p-4 sm:bottom-0 sm:right-0 sm:top-auto sm:flex-col md:max-w-[420px]", 20 20 className 21 21 )} 22 22 {...props} ··· 62 62 <ToastPrimitives.Action 63 63 ref={ref} 64 64 className={cn( 65 - "inline-flex h-8 shrink-0 items-center justify-center rounded-md border bg-transparent px-3 text-sm font-medium transition-colors hover:bg-secondary focus:outline-none focus:ring-1 focus:ring-ring disabled:pointer-events-none disabled:opacity-50 group-[.destructive]:border-muted/40 group-[.destructive]:hover:border-destructive/30 group-[.destructive]:hover:bg-destructive group-[.destructive]:hover:text-destructive-foreground group-[.destructive]:focus:ring-destructive", 65 + "inline-flex h-8 shrink-0 items-center justify-center rounded-md border bg-transparent px-3 text-sm font-medium transition-colors hover:bg-secondary focus:outline-hidden focus:ring-1 focus:ring-ring disabled:pointer-events-none disabled:opacity-50 group-[.destructive]:border-muted/40 hover:group-[.destructive]:border-destructive/30 hover:group-[.destructive]:bg-destructive hover:group-[.destructive]:text-destructive-foreground focus:group-[.destructive]:ring-destructive", 66 66 className 67 67 )} 68 68 {...props} ··· 77 77 <ToastPrimitives.Close 78 78 ref={ref} 79 79 className={cn( 80 - "absolute right-1 top-1 rounded-md p-1 text-foreground/50 opacity-0 transition-opacity hover:text-foreground focus:opacity-100 focus:outline-none focus:ring-1 group-hover:opacity-100 group-[.destructive]:text-red-300 group-[.destructive]:hover:text-red-50 group-[.destructive]:focus:ring-red-400 group-[.destructive]:focus:ring-offset-red-600", 80 + "absolute right-1 top-1 rounded-md p-1 text-foreground/50 opacity-0 transition-opacity hover:text-foreground focus:opacity-100 focus:outline-hidden focus:ring-1 group-hover:opacity-100 group-[.destructive]:text-red-300 hover:group-[.destructive]:text-red-50 focus:group-[.destructive]:ring-red-400 focus:group-[.destructive]:ring-offset-red-600", 81 81 className 82 82 )} 83 83 toast-close=""
+163 -3
frontend/src/index.css
··· 1 - @tailwind base; 2 - @tailwind components; 3 - @tailwind utilities; 1 + @import "tailwindcss"; 2 + 3 + @variant dark (&:where(.dark, .dark *)); 4 + 5 + @plugin "tailwindcss-animate"; 6 + 7 + @theme inline { 8 + --color-background: var(--background); 9 + --color-foreground: var(--foreground); 10 + --color-card: var(--card); 11 + --color-card-foreground: var(--card-foreground); 12 + --color-popover: var(--popover); 13 + --color-popover-foreground: var(--popover-foreground); 14 + --color-primary: var(--primary); 15 + --color-primary-foreground: var(--primary-foreground); 16 + --color-secondary: var(--secondary); 17 + --color-secondary-foreground: var(--secondary-foreground); 18 + --color-muted: var(--muted); 19 + --color-muted-foreground: var(--muted-foreground); 20 + --color-accent: var(--accent); 21 + --color-accent-foreground: var(--accent-foreground); 22 + --color-destructive: var(--destructive); 23 + --color-destructive-foreground: var(--destructive-foreground); 24 + --color-border: var(--border); 25 + --color-input: var(--input); 26 + --color-ring: var(--ring); 27 + --color-chart-1: var(--chart-1); 28 + --color-chart-2: var(--chart-2); 29 + --color-chart-3: var(--chart-3); 30 + --color-chart-4: var(--chart-4); 31 + --color-chart-5: var(--chart-5); 32 + --radius-lg: var(--radius); 33 + --radius-md: calc(var(--radius) - 2px); 34 + --radius-sm: calc(var(--radius) - 4px); 35 + } 36 + 37 + /* Default theme */ 38 + :root { 39 + --background: var(--color-white); 40 + --foreground: var(--color-slate-900); 41 + --card: var(--color-white); 42 + --card-foreground: var(--color-slate-900); 43 + --popover: var(--color-white); 44 + --popover-foreground: var(--color-slate-900); 45 + --primary: var(--color-slate-900); 46 + --primary-foreground: var(--color-slate-50); 47 + --secondary: var(--color-slate-100); 48 + --secondary-foreground: var(--color-slate-900); 49 + --muted: var(--color-slate-100); 50 + --muted-foreground: var(--color-slate-500); 51 + --accent: var(--color-slate-100); 52 + --accent-foreground: var(--color-slate-900); 53 + --destructive: var(--color-rose-500); 54 + --destructive-foreground: var(--color-slate-50); 55 + --border: var(--color-slate-200); 56 + --input: var(--color-slate-200); 57 + --ring: var(--color-slate-400); 58 + --chart-1: hsl(12 76% 61%); 59 + --chart-2: hsl(173 58% 39%); 60 + --chart-3: hsl(197 37% 24%); 61 + --chart-4: hsl(43 74% 66%); 62 + --chart-5: hsl(27 87% 67%); 63 + --radius: 0.5rem; 64 + } 65 + 66 + .dark { 67 + --background: var(--color-zinc-950); 68 + --foreground: var(--color-zinc-50); 69 + --card: var(--color-zinc-950); 70 + --card-foreground: var(--color-zinc-50); 71 + --popover: var(--color-zinc-950); 72 + --popover-foreground: var(--color-zinc-50); 73 + --primary: var(--color-zinc-50); 74 + --primary-foreground: var(--color-zinc-900); 75 + --secondary: var(--color-zinc-800); 76 + --secondary-foreground: var(--color-zinc-50); 77 + --muted: var(--color-zinc-800); 78 + --muted-foreground: var(--color-zinc-400); 79 + --accent: var(--color-zinc-800); 80 + --accent-foreground: var(--color-zinc-50); 81 + --destructive: var(--color-rose-700); 82 + --destructive-foreground: var(--color-zinc-50); 83 + --border: var(--color-zinc-800); 84 + --input: var(--color-zinc-800); 85 + --ring: var(--color-zinc-300); 86 + --chart-1: hsl(220 70% 50%); 87 + --chart-2: hsl(160 60% 45%); 88 + --chart-3: hsl(30 80% 55%); 89 + --chart-4: hsl(280 65% 60%); 90 + --chart-5: hsl(340 75% 55%); 91 + } 92 + 93 + [data-theme="example"] { 94 + --background: var(--color-blue-50); 95 + --foreground: var(--color-gray-900); 96 + --card: var(--color-blue-100); 97 + --card-foreground: var(--color-gray-800); 98 + --popover: var(--color-blue-50); 99 + --popover-foreground: var(--color-gray-800); 100 + --primary: var(--color-blue-100); 101 + --primary-foreground: var(--color-gray-900); 102 + --secondary: var(--color-blue-400); 103 + --secondary-foreground: var(--color-gray-800); 104 + --muted: var(--color-emerald-100); 105 + --muted-foreground: var(--color-gray-600); 106 + --accent: var(--color-emerald-200); 107 + --accent-foreground: var(--color-gray-800); 108 + --destructive: var(--color-red-700); 109 + --destructive-foreground: var(--color-gray-200); 110 + --border: var(--color-blue-600); 111 + --input: var(--color-blue-800); 112 + --ring: var(--color-blue-100); 113 + --radius: 0.3rem; 114 + } 115 + 116 + .dark [data-theme="example"], 117 + .dark[data-theme="example"] { 118 + --background: var(--color-gray-900); 119 + --foreground: var(--color-gray-200); 120 + --card: var(--color-gray-900); 121 + --card-foreground: var(--color-gray-200); 122 + --popover: var(--color-gray-950); 123 + --popover-foreground: var(--color-gray-200); 124 + --primary: var(--color-blue-500); 125 + --primary-foreground: var(--color-blue-50); 126 + --secondary: var(--color-blue-800); 127 + --secondary-foreground: var(--color-blue-50); 128 + --muted: var(--color-emerald-900); 129 + --muted-foreground: var(--color-gray-500); 130 + --accent: var(--color-emerald-900); 131 + --accent-foreground: var(--color-gray-200); 132 + --destructive: var(--color-red-700); 133 + --destructive-foreground: var(--color-gray-200); 134 + --border: var(--color-blue-800); 135 + --input: var(--color-blue-800); 136 + --ring: var(--color-blue-100); 137 + --radius: 0.3rem; 138 + } 139 + 140 + html, 141 + body { 142 + background-color: var(--background); 143 + color: var(--foreground); 144 + } 145 + 146 + body * { 147 + border-color: var(--border); 148 + } 149 + 150 + /* Animation utilities */ 151 + @keyframes enter { 152 + from { 153 + opacity: var(--tw-enter-opacity, 1); 154 + transform: translate3d(var(--tw-enter-translate-x, 0), var(--tw-enter-translate-y, 0), 0) scale3d(var(--tw-enter-scale, 1), var(--tw-enter-scale, 1), var(--tw-enter-scale, 1)) rotate(var(--tw-enter-rotate, 0)); 155 + } 156 + } 157 + 158 + @keyframes exit { 159 + to { 160 + opacity: var(--tw-exit-opacity, 1); 161 + transform: translate3d(var(--tw-exit-translate-x, 0), var(--tw-exit-translate-y, 0), 0) scale3d(var(--tw-exit-scale, 1), var(--tw-exit-scale, 1), var(--tw-exit-scale, 1)) rotate(var(--tw-exit-rotate, 0)); 162 + } 163 + }
-16
frontend/tailwind.config.js
··· 1 - /** @type {import('tailwindcss').Config} */ 2 - export default { 3 - content: [ 4 - "./index.html", 5 - "./src/**/*.{js,ts,jsx,tsx}", 6 - ], 7 - theme: { 8 - extend: { 9 - colors: { 10 - border: "hsl(var(--border))", 11 - }, 12 - }, 13 - }, 14 - plugins: [], 15 - } 16 -