fullstuckdev commited on
Commit
7ce19a5
1 Parent(s): 3dd0c02

first init

Browse files
Files changed (6) hide show
  1. .gitignore +3 -1
  2. package-lock.json +1202 -101
  3. package.json +6 -2
  4. src/app/api/recommend/route.ts +28 -0
  5. src/app/layout.tsx +27 -23
  6. src/app/page.tsx +169 -96
.gitignore CHANGED
@@ -1 +1,3 @@
1
- node_modules
 
 
 
1
+ node_modules
2
+ .env
3
+ .next
package-lock.json CHANGED
@@ -8,10 +8,14 @@
8
  "name": "drug-recommendation-system",
9
  "version": "0.1.0",
10
  "dependencies": {
 
 
11
  "@huggingface/inference": "^2.8.1",
 
 
12
  "next": "15.0.3",
13
- "react": "19.0.0-rc-66855b96-20241106",
14
- "react-dom": "19.0.0-rc-66855b96-20241106"
15
  },
16
  "devDependencies": {
17
  "@types/node": "^20",
@@ -36,6 +40,137 @@
36
  "url": "https://github.com/sponsors/sindresorhus"
37
  }
38
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
39
  "node_modules/@emnapi/runtime": {
40
  "version": "1.3.1",
41
  "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.3.1.tgz",
@@ -45,6 +180,139 @@
45
  "tslib": "^2.4.0"
46
  }
47
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
48
  "node_modules/@eslint-community/regexpp": {
49
  "version": "4.12.1",
50
  "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.12.1.tgz",
@@ -527,7 +795,6 @@
527
  "version": "0.3.5",
528
  "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz",
529
  "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==",
530
- "dev": true,
531
  "dependencies": {
532
  "@jridgewell/set-array": "^1.2.1",
533
  "@jridgewell/sourcemap-codec": "^1.4.10",
@@ -541,7 +808,6 @@
541
  "version": "3.1.2",
542
  "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz",
543
  "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==",
544
- "dev": true,
545
  "engines": {
546
  "node": ">=6.0.0"
547
  }
@@ -550,7 +816,6 @@
550
  "version": "1.2.1",
551
  "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz",
552
  "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==",
553
- "dev": true,
554
  "engines": {
555
  "node": ">=6.0.0"
556
  }
@@ -558,19 +823,249 @@
558
  "node_modules/@jridgewell/sourcemap-codec": {
559
  "version": "1.5.0",
560
  "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz",
561
- "integrity": "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==",
562
- "dev": true
563
  },
564
  "node_modules/@jridgewell/trace-mapping": {
565
  "version": "0.3.25",
566
  "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz",
567
  "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==",
568
- "dev": true,
569
  "dependencies": {
570
  "@jridgewell/resolve-uri": "^3.1.0",
571
  "@jridgewell/sourcemap-codec": "^1.4.14"
572
  }
573
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
574
  "node_modules/@next/env": {
575
  "version": "15.0.3",
576
  "resolved": "https://registry.npmjs.org/@next/env/-/env-15.0.3.tgz",
@@ -759,6 +1254,15 @@
759
  "node": ">=14"
760
  }
761
  },
 
 
 
 
 
 
 
 
 
762
  "node_modules/@rtsao/scc": {
763
  "version": "1.1.0",
764
  "resolved": "https://registry.npmjs.org/@rtsao/scc/-/scc-1.1.0.tgz",
@@ -799,17 +1303,20 @@
799
  "undici-types": "~6.19.2"
800
  }
801
  },
 
 
 
 
 
802
  "node_modules/@types/prop-types": {
803
  "version": "15.7.13",
804
  "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.13.tgz",
805
- "integrity": "sha512-hCZTSvwbzWGvhqxp/RqVqwU999pBf2vp7hzIjiYOsl8wqOmUxkQ6ddw1cV3l8811+kdUFus/q4d1Y3E3SyEifA==",
806
- "dev": true
807
  },
808
  "node_modules/@types/react": {
809
  "version": "18.3.12",
810
  "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.12.tgz",
811
  "integrity": "sha512-D2wOSq/d6Agt28q7rSI3jhU7G6aiuzljDGZ2hTZHIkrTLUI+AF3WMeKkEZ9nN2fkBAlcktT6vcZjDFiIhMYEQw==",
812
- "dev": true,
813
  "dependencies": {
814
  "@types/prop-types": "*",
815
  "csstype": "^3.0.2"
@@ -824,6 +1331,14 @@
824
  "@types/react": "*"
825
  }
826
  },
 
 
 
 
 
 
 
 
827
  "node_modules/@typescript-eslint/scope-manager": {
828
  "version": "8.16.0",
829
  "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.16.0.tgz",
@@ -1259,6 +1774,20 @@
1259
  "node": ">= 0.4"
1260
  }
1261
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1262
  "node_modules/balanced-match": {
1263
  "version": "1.0.2",
1264
  "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
@@ -1333,7 +1862,6 @@
1333
  "version": "3.1.0",
1334
  "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
1335
  "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==",
1336
- "dev": true,
1337
  "engines": {
1338
  "node": ">=6"
1339
  }
@@ -1423,6 +1951,14 @@
1423
  "resolved": "https://registry.npmjs.org/client-only/-/client-only-0.0.1.tgz",
1424
  "integrity": "sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA=="
1425
  },
 
 
 
 
 
 
 
 
1426
  "node_modules/color": {
1427
  "version": "4.2.3",
1428
  "resolved": "https://registry.npmjs.org/color/-/color-4.2.3.tgz",
@@ -1479,6 +2015,34 @@
1479
  "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==",
1480
  "dev": true
1481
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1482
  "node_modules/cross-spawn": {
1483
  "version": "7.0.6",
1484
  "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz",
@@ -1508,8 +2072,7 @@
1508
  "node_modules/csstype": {
1509
  "version": "3.1.3",
1510
  "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz",
1511
- "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==",
1512
- "dev": true
1513
  },
1514
  "node_modules/damerau-levenshtein": {
1515
  "version": "1.0.8",
@@ -1572,7 +2135,6 @@
1572
  "version": "4.3.7",
1573
  "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz",
1574
  "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==",
1575
- "dev": true,
1576
  "dependencies": {
1577
  "ms": "^2.1.3"
1578
  },
@@ -1658,6 +2220,15 @@
1658
  "node": ">=6.0.0"
1659
  }
1660
  },
 
 
 
 
 
 
 
 
 
1661
  "node_modules/eastasianwidth": {
1662
  "version": "0.2.0",
1663
  "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz",
@@ -1683,6 +2254,19 @@
1683
  "node": ">=10.13.0"
1684
  }
1685
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
1686
  "node_modules/es-abstract": {
1687
  "version": "1.23.5",
1688
  "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.23.5.tgz",
@@ -1846,7 +2430,6 @@
1846
  "version": "4.0.0",
1847
  "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
1848
  "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==",
1849
- "dev": true,
1850
  "engines": {
1851
  "node": ">=10"
1852
  },
@@ -2516,6 +3099,11 @@
2516
  "node": ">=8"
2517
  }
2518
  },
 
 
 
 
 
2519
  "node_modules/find-up": {
2520
  "version": "5.0.0",
2521
  "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz",
@@ -2601,7 +3189,6 @@
2601
  "version": "1.1.2",
2602
  "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz",
2603
  "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==",
2604
- "dev": true,
2605
  "funding": {
2606
  "url": "https://github.com/sponsors/ljharb"
2607
  }
@@ -2842,7 +3429,6 @@
2842
  "version": "2.0.2",
2843
  "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz",
2844
  "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==",
2845
- "dev": true,
2846
  "dependencies": {
2847
  "function-bind": "^1.1.2"
2848
  },
@@ -2850,6 +3436,14 @@
2850
  "node": ">= 0.4"
2851
  }
2852
  },
 
 
 
 
 
 
 
 
2853
  "node_modules/ignore": {
2854
  "version": "5.3.2",
2855
  "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz",
@@ -2863,7 +3457,6 @@
2863
  "version": "3.3.0",
2864
  "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz",
2865
  "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==",
2866
- "dev": true,
2867
  "dependencies": {
2868
  "parent-module": "^1.0.0",
2869
  "resolve-from": "^4.0.0"
@@ -3017,7 +3610,6 @@
3017
  "version": "2.15.1",
3018
  "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.15.1.tgz",
3019
  "integrity": "sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ==",
3020
- "dev": true,
3021
  "dependencies": {
3022
  "hasown": "^2.0.2"
3023
  },
@@ -3358,8 +3950,7 @@
3358
  "node_modules/js-tokens": {
3359
  "version": "4.0.0",
3360
  "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
3361
- "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==",
3362
- "dev": true
3363
  },
3364
  "node_modules/js-yaml": {
3365
  "version": "4.1.0",
@@ -3373,12 +3964,28 @@
3373
  "js-yaml": "bin/js-yaml.js"
3374
  }
3375
  },
 
 
 
 
 
 
 
 
 
 
 
3376
  "node_modules/json-buffer": {
3377
  "version": "3.0.1",
3378
  "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz",
3379
  "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==",
3380
  "dev": true
3381
  },
 
 
 
 
 
3382
  "node_modules/json-schema-traverse": {
3383
  "version": "0.4.1",
3384
  "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
@@ -3470,8 +4077,7 @@
3470
  "node_modules/lines-and-columns": {
3471
  "version": "1.2.4",
3472
  "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz",
3473
- "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==",
3474
- "dev": true
3475
  },
3476
  "node_modules/locate-path": {
3477
  "version": "6.0.0",
@@ -3498,7 +4104,6 @@
3498
  "version": "1.4.0",
3499
  "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz",
3500
  "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==",
3501
- "dev": true,
3502
  "dependencies": {
3503
  "js-tokens": "^3.0.0 || ^4.0.0"
3504
  },
@@ -3567,8 +4172,7 @@
3567
  "node_modules/ms": {
3568
  "version": "2.1.3",
3569
  "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
3570
- "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
3571
- "dev": true
3572
  },
3573
  "node_modules/mz": {
3574
  "version": "2.7.0",
@@ -3719,7 +4323,6 @@
3719
  "version": "4.1.1",
3720
  "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
3721
  "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==",
3722
- "dev": true,
3723
  "engines": {
3724
  "node": ">=0.10.0"
3725
  }
@@ -3901,7 +4504,6 @@
3901
  "version": "1.0.1",
3902
  "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
3903
  "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==",
3904
- "dev": true,
3905
  "dependencies": {
3906
  "callsites": "^3.0.0"
3907
  },
@@ -3909,6 +4511,23 @@
3909
  "node": ">=6"
3910
  }
3911
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3912
  "node_modules/path-exists": {
3913
  "version": "4.0.0",
3914
  "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
@@ -3939,8 +4558,7 @@
3939
  "node_modules/path-parse": {
3940
  "version": "1.0.7",
3941
  "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz",
3942
- "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==",
3943
- "dev": true
3944
  },
3945
  "node_modules/path-scurry": {
3946
  "version": "1.11.1",
@@ -3958,6 +4576,14 @@
3958
  "url": "https://github.com/sponsors/isaacs"
3959
  }
3960
  },
 
 
 
 
 
 
 
 
3961
  "node_modules/picocolors": {
3962
  "version": "1.1.1",
3963
  "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz",
@@ -4123,7 +4749,6 @@
4123
  "version": "15.8.1",
4124
  "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz",
4125
  "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==",
4126
- "dev": true,
4127
  "dependencies": {
4128
  "loose-envify": "^1.4.0",
4129
  "object-assign": "^4.1.1",
@@ -4160,29 +4785,47 @@
4160
  ]
4161
  },
4162
  "node_modules/react": {
4163
- "version": "19.0.0-rc-66855b96-20241106",
4164
- "resolved": "https://registry.npmjs.org/react/-/react-19.0.0-rc-66855b96-20241106.tgz",
4165
- "integrity": "sha512-klH7xkT71SxRCx4hb1hly5FJB21Hz0ACyxbXYAECEqssUjtJeFUAaI2U1DgJAzkGEnvEm3DkxuBchMC/9K4ipg==",
 
 
 
4166
  "engines": {
4167
  "node": ">=0.10.0"
4168
  }
4169
  },
4170
  "node_modules/react-dom": {
4171
- "version": "19.0.0-rc-66855b96-20241106",
4172
- "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-19.0.0-rc-66855b96-20241106.tgz",
4173
- "integrity": "sha512-D25vdaytZ1wFIRiwNU98NPQ/upS2P8Co4/oNoa02PzHbh8deWdepjm5qwZM/46OdSiGv4WSWwxP55RO9obqJEQ==",
4174
  "dependencies": {
4175
- "scheduler": "0.25.0-rc-66855b96-20241106"
 
4176
  },
4177
  "peerDependencies": {
4178
- "react": "19.0.0-rc-66855b96-20241106"
4179
  }
4180
  },
4181
  "node_modules/react-is": {
4182
  "version": "16.13.1",
4183
  "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz",
4184
- "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==",
4185
- "dev": true
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4186
  },
4187
  "node_modules/read-cache": {
4188
  "version": "1.0.0",
@@ -4226,6 +4869,11 @@
4226
  "url": "https://github.com/sponsors/ljharb"
4227
  }
4228
  },
 
 
 
 
 
4229
  "node_modules/regexp.prototype.flags": {
4230
  "version": "1.5.3",
4231
  "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.3.tgz",
@@ -4248,7 +4896,6 @@
4248
  "version": "1.22.8",
4249
  "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz",
4250
  "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==",
4251
- "dev": true,
4252
  "dependencies": {
4253
  "is-core-module": "^2.13.0",
4254
  "path-parse": "^1.0.7",
@@ -4265,7 +4912,6 @@
4265
  "version": "4.0.0",
4266
  "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz",
4267
  "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==",
4268
- "dev": true,
4269
  "engines": {
4270
  "node": ">=4"
4271
  }
@@ -4364,9 +5010,12 @@
4364
  }
4365
  },
4366
  "node_modules/scheduler": {
4367
- "version": "0.25.0-rc-66855b96-20241106",
4368
- "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.25.0-rc-66855b96-20241106.tgz",
4369
- "integrity": "sha512-HQXp/Mnp/MMRSXMQF7urNFla+gmtXW/Gr1KliuR0iboTit4KvZRY8KYaq5ccCTAOJiUqQh2rE2F3wgUekmgdlA=="
 
 
 
4370
  },
4371
  "node_modules/semver": {
4372
  "version": "7.6.3",
@@ -4511,6 +5160,14 @@
4511
  "is-arrayish": "^0.3.1"
4512
  }
4513
  },
 
 
 
 
 
 
 
 
4514
  "node_modules/source-map-js": {
4515
  "version": "1.2.1",
4516
  "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz",
@@ -4737,6 +5394,11 @@
4737
  "url": "https://github.com/sponsors/sindresorhus"
4738
  }
4739
  },
 
 
 
 
 
4740
  "node_modules/sucrase": {
4741
  "version": "3.35.0",
4742
  "resolved": "https://registry.npmjs.org/sucrase/-/sucrase-3.35.0.tgz",
@@ -4819,7 +5481,6 @@
4819
  "version": "1.0.0",
4820
  "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz",
4821
  "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==",
4822
- "dev": true,
4823
  "engines": {
4824
  "node": ">= 0.4"
4825
  },
@@ -5405,6 +6066,103 @@
5405
  "integrity": "sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==",
5406
  "dev": true
5407
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5408
  "@emnapi/runtime": {
5409
  "version": "1.3.1",
5410
  "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.3.1.tgz",
@@ -5414,6 +6172,120 @@
5414
  "tslib": "^2.4.0"
5415
  }
5416
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5417
  "@eslint-community/regexpp": {
5418
  "version": "4.12.1",
5419
  "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.12.1.tgz",
@@ -5655,7 +6527,6 @@
5655
  "version": "0.3.5",
5656
  "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz",
5657
  "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==",
5658
- "dev": true,
5659
  "requires": {
5660
  "@jridgewell/set-array": "^1.2.1",
5661
  "@jridgewell/sourcemap-codec": "^1.4.10",
@@ -5665,31 +6536,130 @@
5665
  "@jridgewell/resolve-uri": {
5666
  "version": "3.1.2",
5667
  "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz",
5668
- "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==",
5669
- "dev": true
5670
  },
5671
  "@jridgewell/set-array": {
5672
  "version": "1.2.1",
5673
  "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz",
5674
- "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==",
5675
- "dev": true
5676
  },
5677
  "@jridgewell/sourcemap-codec": {
5678
  "version": "1.5.0",
5679
  "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz",
5680
- "integrity": "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==",
5681
- "dev": true
5682
  },
5683
  "@jridgewell/trace-mapping": {
5684
  "version": "0.3.25",
5685
  "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz",
5686
  "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==",
5687
- "dev": true,
5688
  "requires": {
5689
  "@jridgewell/resolve-uri": "^3.1.0",
5690
  "@jridgewell/sourcemap-codec": "^1.4.14"
5691
  }
5692
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5693
  "@next/env": {
5694
  "version": "15.0.3",
5695
  "resolved": "https://registry.npmjs.org/@next/env/-/env-15.0.3.tgz",
@@ -5791,6 +6761,11 @@
5791
  "dev": true,
5792
  "optional": true
5793
  },
 
 
 
 
 
5794
  "@rtsao/scc": {
5795
  "version": "1.1.0",
5796
  "resolved": "https://registry.npmjs.org/@rtsao/scc/-/scc-1.1.0.tgz",
@@ -5831,17 +6806,20 @@
5831
  "undici-types": "~6.19.2"
5832
  }
5833
  },
 
 
 
 
 
5834
  "@types/prop-types": {
5835
  "version": "15.7.13",
5836
  "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.13.tgz",
5837
- "integrity": "sha512-hCZTSvwbzWGvhqxp/RqVqwU999pBf2vp7hzIjiYOsl8wqOmUxkQ6ddw1cV3l8811+kdUFus/q4d1Y3E3SyEifA==",
5838
- "dev": true
5839
  },
5840
  "@types/react": {
5841
  "version": "18.3.12",
5842
  "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.12.tgz",
5843
  "integrity": "sha512-D2wOSq/d6Agt28q7rSI3jhU7G6aiuzljDGZ2hTZHIkrTLUI+AF3WMeKkEZ9nN2fkBAlcktT6vcZjDFiIhMYEQw==",
5844
- "dev": true,
5845
  "requires": {
5846
  "@types/prop-types": "*",
5847
  "csstype": "^3.0.2"
@@ -5856,6 +6834,14 @@
5856
  "@types/react": "*"
5857
  }
5858
  },
 
 
 
 
 
 
 
 
5859
  "@typescript-eslint/scope-manager": {
5860
  "version": "8.16.0",
5861
  "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.16.0.tgz",
@@ -6160,6 +7146,16 @@
6160
  "integrity": "sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==",
6161
  "dev": true
6162
  },
 
 
 
 
 
 
 
 
 
 
6163
  "balanced-match": {
6164
  "version": "1.0.2",
6165
  "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
@@ -6215,8 +7211,7 @@
6215
  "callsites": {
6216
  "version": "3.1.0",
6217
  "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
6218
- "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==",
6219
- "dev": true
6220
  },
6221
  "camelcase-css": {
6222
  "version": "2.0.1",
@@ -6271,6 +7266,11 @@
6271
  "resolved": "https://registry.npmjs.org/client-only/-/client-only-0.0.1.tgz",
6272
  "integrity": "sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA=="
6273
  },
 
 
 
 
 
6274
  "color": {
6275
  "version": "4.2.3",
6276
  "resolved": "https://registry.npmjs.org/color/-/color-4.2.3.tgz",
@@ -6318,6 +7318,30 @@
6318
  "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==",
6319
  "dev": true
6320
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6321
  "cross-spawn": {
6322
  "version": "7.0.6",
6323
  "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz",
@@ -6338,8 +7362,7 @@
6338
  "csstype": {
6339
  "version": "3.1.3",
6340
  "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz",
6341
- "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==",
6342
- "dev": true
6343
  },
6344
  "damerau-levenshtein": {
6345
  "version": "1.0.8",
@@ -6384,7 +7407,6 @@
6384
  "version": "4.3.7",
6385
  "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz",
6386
  "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==",
6387
- "dev": true,
6388
  "requires": {
6389
  "ms": "^2.1.3"
6390
  }
@@ -6444,6 +7466,15 @@
6444
  "esutils": "^2.0.2"
6445
  }
6446
  },
 
 
 
 
 
 
 
 
 
6447
  "eastasianwidth": {
6448
  "version": "0.2.0",
6449
  "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz",
@@ -6466,6 +7497,21 @@
6466
  "tapable": "^2.2.0"
6467
  }
6468
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6469
  "es-abstract": {
6470
  "version": "1.23.5",
6471
  "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.23.5.tgz",
@@ -6601,8 +7647,7 @@
6601
  "escape-string-regexp": {
6602
  "version": "4.0.0",
6603
  "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
6604
- "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==",
6605
- "dev": true
6606
  },
6607
  "eslint": {
6608
  "version": "8.57.1",
@@ -7074,6 +8119,11 @@
7074
  "to-regex-range": "^5.0.1"
7075
  }
7076
  },
 
 
 
 
 
7077
  "find-up": {
7078
  "version": "5.0.0",
7079
  "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz",
@@ -7136,8 +8186,7 @@
7136
  "function-bind": {
7137
  "version": "1.1.2",
7138
  "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz",
7139
- "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==",
7140
- "dev": true
7141
  },
7142
  "function.prototype.name": {
7143
  "version": "1.1.6",
@@ -7299,11 +8348,18 @@
7299
  "version": "2.0.2",
7300
  "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz",
7301
  "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==",
7302
- "dev": true,
7303
  "requires": {
7304
  "function-bind": "^1.1.2"
7305
  }
7306
  },
 
 
 
 
 
 
 
 
7307
  "ignore": {
7308
  "version": "5.3.2",
7309
  "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz",
@@ -7314,7 +8370,6 @@
7314
  "version": "3.3.0",
7315
  "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz",
7316
  "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==",
7317
- "dev": true,
7318
  "requires": {
7319
  "parent-module": "^1.0.0",
7320
  "resolve-from": "^4.0.0"
@@ -7425,7 +8480,6 @@
7425
  "version": "2.15.1",
7426
  "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.15.1.tgz",
7427
  "integrity": "sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ==",
7428
- "dev": true,
7429
  "requires": {
7430
  "hasown": "^2.0.2"
7431
  }
@@ -7641,8 +8695,7 @@
7641
  "js-tokens": {
7642
  "version": "4.0.0",
7643
  "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
7644
- "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==",
7645
- "dev": true
7646
  },
7647
  "js-yaml": {
7648
  "version": "4.1.0",
@@ -7653,12 +8706,22 @@
7653
  "argparse": "^2.0.1"
7654
  }
7655
  },
 
 
 
 
 
7656
  "json-buffer": {
7657
  "version": "3.0.1",
7658
  "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz",
7659
  "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==",
7660
  "dev": true
7661
  },
 
 
 
 
 
7662
  "json-schema-traverse": {
7663
  "version": "0.4.1",
7664
  "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
@@ -7735,8 +8798,7 @@
7735
  "lines-and-columns": {
7736
  "version": "1.2.4",
7737
  "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz",
7738
- "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==",
7739
- "dev": true
7740
  },
7741
  "locate-path": {
7742
  "version": "6.0.0",
@@ -7757,7 +8819,6 @@
7757
  "version": "1.4.0",
7758
  "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz",
7759
  "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==",
7760
- "dev": true,
7761
  "requires": {
7762
  "js-tokens": "^3.0.0 || ^4.0.0"
7763
  }
@@ -7808,8 +8869,7 @@
7808
  "ms": {
7809
  "version": "2.1.3",
7810
  "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
7811
- "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
7812
- "dev": true
7813
  },
7814
  "mz": {
7815
  "version": "2.7.0",
@@ -7885,8 +8945,7 @@
7885
  "object-assign": {
7886
  "version": "4.1.1",
7887
  "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
7888
- "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==",
7889
- "dev": true
7890
  },
7891
  "object-hash": {
7892
  "version": "3.0.0",
@@ -8014,11 +9073,21 @@
8014
  "version": "1.0.1",
8015
  "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
8016
  "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==",
8017
- "dev": true,
8018
  "requires": {
8019
  "callsites": "^3.0.0"
8020
  }
8021
  },
 
 
 
 
 
 
 
 
 
 
 
8022
  "path-exists": {
8023
  "version": "4.0.0",
8024
  "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
@@ -8040,8 +9109,7 @@
8040
  "path-parse": {
8041
  "version": "1.0.7",
8042
  "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz",
8043
- "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==",
8044
- "dev": true
8045
  },
8046
  "path-scurry": {
8047
  "version": "1.11.1",
@@ -8053,6 +9121,11 @@
8053
  "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0"
8054
  }
8055
  },
 
 
 
 
 
8056
  "picocolors": {
8057
  "version": "1.1.1",
8058
  "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz",
@@ -8148,7 +9221,6 @@
8148
  "version": "15.8.1",
8149
  "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz",
8150
  "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==",
8151
- "dev": true,
8152
  "requires": {
8153
  "loose-envify": "^1.4.0",
8154
  "object-assign": "^4.1.1",
@@ -8168,23 +9240,37 @@
8168
  "dev": true
8169
  },
8170
  "react": {
8171
- "version": "19.0.0-rc-66855b96-20241106",
8172
- "resolved": "https://registry.npmjs.org/react/-/react-19.0.0-rc-66855b96-20241106.tgz",
8173
- "integrity": "sha512-klH7xkT71SxRCx4hb1hly5FJB21Hz0ACyxbXYAECEqssUjtJeFUAaI2U1DgJAzkGEnvEm3DkxuBchMC/9K4ipg=="
 
 
 
8174
  },
8175
  "react-dom": {
8176
- "version": "19.0.0-rc-66855b96-20241106",
8177
- "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-19.0.0-rc-66855b96-20241106.tgz",
8178
- "integrity": "sha512-D25vdaytZ1wFIRiwNU98NPQ/upS2P8Co4/oNoa02PzHbh8deWdepjm5qwZM/46OdSiGv4WSWwxP55RO9obqJEQ==",
8179
  "requires": {
8180
- "scheduler": "0.25.0-rc-66855b96-20241106"
 
8181
  }
8182
  },
8183
  "react-is": {
8184
  "version": "16.13.1",
8185
  "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz",
8186
- "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==",
8187
- "dev": true
 
 
 
 
 
 
 
 
 
 
8188
  },
8189
  "read-cache": {
8190
  "version": "1.0.0",
@@ -8219,6 +9305,11 @@
8219
  "which-builtin-type": "^1.1.4"
8220
  }
8221
  },
 
 
 
 
 
8222
  "regexp.prototype.flags": {
8223
  "version": "1.5.3",
8224
  "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.3.tgz",
@@ -8235,7 +9326,6 @@
8235
  "version": "1.22.8",
8236
  "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz",
8237
  "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==",
8238
- "dev": true,
8239
  "requires": {
8240
  "is-core-module": "^2.13.0",
8241
  "path-parse": "^1.0.7",
@@ -8245,8 +9335,7 @@
8245
  "resolve-from": {
8246
  "version": "4.0.0",
8247
  "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz",
8248
- "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==",
8249
- "dev": true
8250
  },
8251
  "resolve-pkg-maps": {
8252
  "version": "1.0.0",
@@ -8302,9 +9391,12 @@
8302
  }
8303
  },
8304
  "scheduler": {
8305
- "version": "0.25.0-rc-66855b96-20241106",
8306
- "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.25.0-rc-66855b96-20241106.tgz",
8307
- "integrity": "sha512-HQXp/Mnp/MMRSXMQF7urNFla+gmtXW/Gr1KliuR0iboTit4KvZRY8KYaq5ccCTAOJiUqQh2rE2F3wgUekmgdlA=="
 
 
 
8308
  },
8309
  "semver": {
8310
  "version": "7.6.3",
@@ -8410,6 +9502,11 @@
8410
  "is-arrayish": "^0.3.1"
8411
  }
8412
  },
 
 
 
 
 
8413
  "source-map-js": {
8414
  "version": "1.2.1",
8415
  "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz",
@@ -8572,6 +9669,11 @@
8572
  "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==",
8573
  "dev": true
8574
  },
 
 
 
 
 
8575
  "sucrase": {
8576
  "version": "3.35.0",
8577
  "resolved": "https://registry.npmjs.org/sucrase/-/sucrase-3.35.0.tgz",
@@ -8633,8 +9735,7 @@
8633
  "supports-preserve-symlinks-flag": {
8634
  "version": "1.0.0",
8635
  "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz",
8636
- "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==",
8637
- "dev": true
8638
  },
8639
  "tailwindcss": {
8640
  "version": "3.4.15",
 
8
  "name": "drug-recommendation-system",
9
  "version": "0.1.0",
10
  "dependencies": {
11
+ "@emotion/react": "^11.13.5",
12
+ "@emotion/styled": "^11.13.5",
13
  "@huggingface/inference": "^2.8.1",
14
+ "@mui/icons-material": "^6.1.8",
15
+ "@mui/material": "^6.1.8",
16
  "next": "15.0.3",
17
+ "react": "^18.2.0",
18
+ "react-dom": "^18.2.0"
19
  },
20
  "devDependencies": {
21
  "@types/node": "^20",
 
40
  "url": "https://github.com/sponsors/sindresorhus"
41
  }
42
  },
43
+ "node_modules/@babel/code-frame": {
44
+ "version": "7.26.2",
45
+ "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.26.2.tgz",
46
+ "integrity": "sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ==",
47
+ "dependencies": {
48
+ "@babel/helper-validator-identifier": "^7.25.9",
49
+ "js-tokens": "^4.0.0",
50
+ "picocolors": "^1.0.0"
51
+ },
52
+ "engines": {
53
+ "node": ">=6.9.0"
54
+ }
55
+ },
56
+ "node_modules/@babel/generator": {
57
+ "version": "7.26.2",
58
+ "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.26.2.tgz",
59
+ "integrity": "sha512-zevQbhbau95nkoxSq3f/DC/SC+EEOUZd3DYqfSkMhY2/wfSeaHV1Ew4vk8e+x8lja31IbyuUa2uQ3JONqKbysw==",
60
+ "dependencies": {
61
+ "@babel/parser": "^7.26.2",
62
+ "@babel/types": "^7.26.0",
63
+ "@jridgewell/gen-mapping": "^0.3.5",
64
+ "@jridgewell/trace-mapping": "^0.3.25",
65
+ "jsesc": "^3.0.2"
66
+ },
67
+ "engines": {
68
+ "node": ">=6.9.0"
69
+ }
70
+ },
71
+ "node_modules/@babel/helper-module-imports": {
72
+ "version": "7.25.9",
73
+ "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.25.9.tgz",
74
+ "integrity": "sha512-tnUA4RsrmflIM6W6RFTLFSXITtl0wKjgpnLgXyowocVPrbYrLUXSBXDgTs8BlbmIzIdlBySRQjINYs2BAkiLtw==",
75
+ "dependencies": {
76
+ "@babel/traverse": "^7.25.9",
77
+ "@babel/types": "^7.25.9"
78
+ },
79
+ "engines": {
80
+ "node": ">=6.9.0"
81
+ }
82
+ },
83
+ "node_modules/@babel/helper-string-parser": {
84
+ "version": "7.25.9",
85
+ "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.25.9.tgz",
86
+ "integrity": "sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA==",
87
+ "engines": {
88
+ "node": ">=6.9.0"
89
+ }
90
+ },
91
+ "node_modules/@babel/helper-validator-identifier": {
92
+ "version": "7.25.9",
93
+ "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.9.tgz",
94
+ "integrity": "sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==",
95
+ "engines": {
96
+ "node": ">=6.9.0"
97
+ }
98
+ },
99
+ "node_modules/@babel/parser": {
100
+ "version": "7.26.2",
101
+ "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.26.2.tgz",
102
+ "integrity": "sha512-DWMCZH9WA4Maitz2q21SRKHo9QXZxkDsbNZoVD62gusNtNBBqDg9i7uOhASfTfIGNzW+O+r7+jAlM8dwphcJKQ==",
103
+ "dependencies": {
104
+ "@babel/types": "^7.26.0"
105
+ },
106
+ "bin": {
107
+ "parser": "bin/babel-parser.js"
108
+ },
109
+ "engines": {
110
+ "node": ">=6.0.0"
111
+ }
112
+ },
113
+ "node_modules/@babel/runtime": {
114
+ "version": "7.26.0",
115
+ "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.26.0.tgz",
116
+ "integrity": "sha512-FDSOghenHTiToteC/QRlv2q3DhPZ/oOXTBoirfWNx1Cx3TMVcGWQtMMmQcSvb/JjpNeGzx8Pq/b4fKEJuWm1sw==",
117
+ "dependencies": {
118
+ "regenerator-runtime": "^0.14.0"
119
+ },
120
+ "engines": {
121
+ "node": ">=6.9.0"
122
+ }
123
+ },
124
+ "node_modules/@babel/template": {
125
+ "version": "7.25.9",
126
+ "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.25.9.tgz",
127
+ "integrity": "sha512-9DGttpmPvIxBb/2uwpVo3dqJ+O6RooAFOS+lB+xDqoE2PVCE8nfoHMdZLpfCQRLwvohzXISPZcgxt80xLfsuwg==",
128
+ "dependencies": {
129
+ "@babel/code-frame": "^7.25.9",
130
+ "@babel/parser": "^7.25.9",
131
+ "@babel/types": "^7.25.9"
132
+ },
133
+ "engines": {
134
+ "node": ">=6.9.0"
135
+ }
136
+ },
137
+ "node_modules/@babel/traverse": {
138
+ "version": "7.25.9",
139
+ "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.25.9.tgz",
140
+ "integrity": "sha512-ZCuvfwOwlz/bawvAuvcj8rrithP2/N55Tzz342AkTvq4qaWbGfmCk/tKhNaV2cthijKrPAA8SRJV5WWe7IBMJw==",
141
+ "dependencies": {
142
+ "@babel/code-frame": "^7.25.9",
143
+ "@babel/generator": "^7.25.9",
144
+ "@babel/parser": "^7.25.9",
145
+ "@babel/template": "^7.25.9",
146
+ "@babel/types": "^7.25.9",
147
+ "debug": "^4.3.1",
148
+ "globals": "^11.1.0"
149
+ },
150
+ "engines": {
151
+ "node": ">=6.9.0"
152
+ }
153
+ },
154
+ "node_modules/@babel/traverse/node_modules/globals": {
155
+ "version": "11.12.0",
156
+ "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz",
157
+ "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==",
158
+ "engines": {
159
+ "node": ">=4"
160
+ }
161
+ },
162
+ "node_modules/@babel/types": {
163
+ "version": "7.26.0",
164
+ "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.26.0.tgz",
165
+ "integrity": "sha512-Z/yiTPj+lDVnF7lWeKCIJzaIkI0vYO87dMpZ4bg4TDrFe4XXLFWL1TbXU27gBP3QccxV9mZICCrnjnYlJjXHOA==",
166
+ "dependencies": {
167
+ "@babel/helper-string-parser": "^7.25.9",
168
+ "@babel/helper-validator-identifier": "^7.25.9"
169
+ },
170
+ "engines": {
171
+ "node": ">=6.9.0"
172
+ }
173
+ },
174
  "node_modules/@emnapi/runtime": {
175
  "version": "1.3.1",
176
  "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.3.1.tgz",
 
180
  "tslib": "^2.4.0"
181
  }
182
  },
183
+ "node_modules/@emotion/babel-plugin": {
184
+ "version": "11.13.5",
185
+ "resolved": "https://registry.npmjs.org/@emotion/babel-plugin/-/babel-plugin-11.13.5.tgz",
186
+ "integrity": "sha512-pxHCpT2ex+0q+HH91/zsdHkw/lXd468DIN2zvfvLtPKLLMo6gQj7oLObq8PhkrxOZb/gGCq03S3Z7PDhS8pduQ==",
187
+ "dependencies": {
188
+ "@babel/helper-module-imports": "^7.16.7",
189
+ "@babel/runtime": "^7.18.3",
190
+ "@emotion/hash": "^0.9.2",
191
+ "@emotion/memoize": "^0.9.0",
192
+ "@emotion/serialize": "^1.3.3",
193
+ "babel-plugin-macros": "^3.1.0",
194
+ "convert-source-map": "^1.5.0",
195
+ "escape-string-regexp": "^4.0.0",
196
+ "find-root": "^1.1.0",
197
+ "source-map": "^0.5.7",
198
+ "stylis": "4.2.0"
199
+ }
200
+ },
201
+ "node_modules/@emotion/cache": {
202
+ "version": "11.13.5",
203
+ "resolved": "https://registry.npmjs.org/@emotion/cache/-/cache-11.13.5.tgz",
204
+ "integrity": "sha512-Z3xbtJ+UcK76eWkagZ1onvn/wAVb1GOMuR15s30Fm2wrMgC7jzpnO2JZXr4eujTTqoQFUrZIw/rT0c6Zzjca1g==",
205
+ "dependencies": {
206
+ "@emotion/memoize": "^0.9.0",
207
+ "@emotion/sheet": "^1.4.0",
208
+ "@emotion/utils": "^1.4.2",
209
+ "@emotion/weak-memoize": "^0.4.0",
210
+ "stylis": "4.2.0"
211
+ }
212
+ },
213
+ "node_modules/@emotion/hash": {
214
+ "version": "0.9.2",
215
+ "resolved": "https://registry.npmjs.org/@emotion/hash/-/hash-0.9.2.tgz",
216
+ "integrity": "sha512-MyqliTZGuOm3+5ZRSaaBGP3USLw6+EGykkwZns2EPC5g8jJ4z9OrdZY9apkl3+UP9+sdz76YYkwCKP5gh8iY3g=="
217
+ },
218
+ "node_modules/@emotion/is-prop-valid": {
219
+ "version": "1.3.1",
220
+ "resolved": "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-1.3.1.tgz",
221
+ "integrity": "sha512-/ACwoqx7XQi9knQs/G0qKvv5teDMhD7bXYns9N/wM8ah8iNb8jZ2uNO0YOgiq2o2poIvVtJS2YALasQuMSQ7Kw==",
222
+ "dependencies": {
223
+ "@emotion/memoize": "^0.9.0"
224
+ }
225
+ },
226
+ "node_modules/@emotion/memoize": {
227
+ "version": "0.9.0",
228
+ "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.9.0.tgz",
229
+ "integrity": "sha512-30FAj7/EoJ5mwVPOWhAyCX+FPfMDrVecJAM+Iw9NRoSl4BBAQeqj4cApHHUXOVvIPgLVDsCFoz/hGD+5QQD1GQ=="
230
+ },
231
+ "node_modules/@emotion/react": {
232
+ "version": "11.13.5",
233
+ "resolved": "https://registry.npmjs.org/@emotion/react/-/react-11.13.5.tgz",
234
+ "integrity": "sha512-6zeCUxUH+EPF1s+YF/2hPVODeV/7V07YU5x+2tfuRL8MdW6rv5vb2+CBEGTGwBdux0OIERcOS+RzxeK80k2DsQ==",
235
+ "dependencies": {
236
+ "@babel/runtime": "^7.18.3",
237
+ "@emotion/babel-plugin": "^11.13.5",
238
+ "@emotion/cache": "^11.13.5",
239
+ "@emotion/serialize": "^1.3.3",
240
+ "@emotion/use-insertion-effect-with-fallbacks": "^1.1.0",
241
+ "@emotion/utils": "^1.4.2",
242
+ "@emotion/weak-memoize": "^0.4.0",
243
+ "hoist-non-react-statics": "^3.3.1"
244
+ },
245
+ "peerDependencies": {
246
+ "react": ">=16.8.0"
247
+ },
248
+ "peerDependenciesMeta": {
249
+ "@types/react": {
250
+ "optional": true
251
+ }
252
+ }
253
+ },
254
+ "node_modules/@emotion/serialize": {
255
+ "version": "1.3.3",
256
+ "resolved": "https://registry.npmjs.org/@emotion/serialize/-/serialize-1.3.3.tgz",
257
+ "integrity": "sha512-EISGqt7sSNWHGI76hC7x1CksiXPahbxEOrC5RjmFRJTqLyEK9/9hZvBbiYn70dw4wuwMKiEMCUlR6ZXTSWQqxA==",
258
+ "dependencies": {
259
+ "@emotion/hash": "^0.9.2",
260
+ "@emotion/memoize": "^0.9.0",
261
+ "@emotion/unitless": "^0.10.0",
262
+ "@emotion/utils": "^1.4.2",
263
+ "csstype": "^3.0.2"
264
+ }
265
+ },
266
+ "node_modules/@emotion/sheet": {
267
+ "version": "1.4.0",
268
+ "resolved": "https://registry.npmjs.org/@emotion/sheet/-/sheet-1.4.0.tgz",
269
+ "integrity": "sha512-fTBW9/8r2w3dXWYM4HCB1Rdp8NLibOw2+XELH5m5+AkWiL/KqYX6dc0kKYlaYyKjrQ6ds33MCdMPEwgs2z1rqg=="
270
+ },
271
+ "node_modules/@emotion/styled": {
272
+ "version": "11.13.5",
273
+ "resolved": "https://registry.npmjs.org/@emotion/styled/-/styled-11.13.5.tgz",
274
+ "integrity": "sha512-gnOQ+nGLPvDXgIx119JqGalys64lhMdnNQA9TMxhDA4K0Hq5+++OE20Zs5GxiCV9r814xQ2K5WmtofSpHVW6BQ==",
275
+ "dependencies": {
276
+ "@babel/runtime": "^7.18.3",
277
+ "@emotion/babel-plugin": "^11.13.5",
278
+ "@emotion/is-prop-valid": "^1.3.0",
279
+ "@emotion/serialize": "^1.3.3",
280
+ "@emotion/use-insertion-effect-with-fallbacks": "^1.1.0",
281
+ "@emotion/utils": "^1.4.2"
282
+ },
283
+ "peerDependencies": {
284
+ "@emotion/react": "^11.0.0-rc.0",
285
+ "react": ">=16.8.0"
286
+ },
287
+ "peerDependenciesMeta": {
288
+ "@types/react": {
289
+ "optional": true
290
+ }
291
+ }
292
+ },
293
+ "node_modules/@emotion/unitless": {
294
+ "version": "0.10.0",
295
+ "resolved": "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.10.0.tgz",
296
+ "integrity": "sha512-dFoMUuQA20zvtVTuxZww6OHoJYgrzfKM1t52mVySDJnMSEa08ruEvdYQbhvyu6soU+NeLVd3yKfTfT0NeV6qGg=="
297
+ },
298
+ "node_modules/@emotion/use-insertion-effect-with-fallbacks": {
299
+ "version": "1.1.0",
300
+ "resolved": "https://registry.npmjs.org/@emotion/use-insertion-effect-with-fallbacks/-/use-insertion-effect-with-fallbacks-1.1.0.tgz",
301
+ "integrity": "sha512-+wBOcIV5snwGgI2ya3u99D7/FJquOIniQT1IKyDsBmEgwvpxMNeS65Oib7OnE2d2aY+3BU4OiH+0Wchf8yk3Hw==",
302
+ "peerDependencies": {
303
+ "react": ">=16.8.0"
304
+ }
305
+ },
306
+ "node_modules/@emotion/utils": {
307
+ "version": "1.4.2",
308
+ "resolved": "https://registry.npmjs.org/@emotion/utils/-/utils-1.4.2.tgz",
309
+ "integrity": "sha512-3vLclRofFziIa3J2wDh9jjbkUz9qk5Vi3IZ/FSTKViB0k+ef0fPV7dYrUIugbgupYDx7v9ud/SjrtEP8Y4xLoA=="
310
+ },
311
+ "node_modules/@emotion/weak-memoize": {
312
+ "version": "0.4.0",
313
+ "resolved": "https://registry.npmjs.org/@emotion/weak-memoize/-/weak-memoize-0.4.0.tgz",
314
+ "integrity": "sha512-snKqtPW01tN0ui7yu9rGv69aJXr/a/Ywvl11sUjNtEcRc+ng/mQriFL0wLXMef74iHa/EkftbDzU9F8iFbH+zg=="
315
+ },
316
  "node_modules/@eslint-community/regexpp": {
317
  "version": "4.12.1",
318
  "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.12.1.tgz",
 
795
  "version": "0.3.5",
796
  "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz",
797
  "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==",
 
798
  "dependencies": {
799
  "@jridgewell/set-array": "^1.2.1",
800
  "@jridgewell/sourcemap-codec": "^1.4.10",
 
808
  "version": "3.1.2",
809
  "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz",
810
  "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==",
 
811
  "engines": {
812
  "node": ">=6.0.0"
813
  }
 
816
  "version": "1.2.1",
817
  "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz",
818
  "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==",
 
819
  "engines": {
820
  "node": ">=6.0.0"
821
  }
 
823
  "node_modules/@jridgewell/sourcemap-codec": {
824
  "version": "1.5.0",
825
  "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz",
826
+ "integrity": "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ=="
 
827
  },
828
  "node_modules/@jridgewell/trace-mapping": {
829
  "version": "0.3.25",
830
  "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz",
831
  "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==",
 
832
  "dependencies": {
833
  "@jridgewell/resolve-uri": "^3.1.0",
834
  "@jridgewell/sourcemap-codec": "^1.4.14"
835
  }
836
  },
837
+ "node_modules/@mui/core-downloads-tracker": {
838
+ "version": "6.1.8",
839
+ "resolved": "https://registry.npmjs.org/@mui/core-downloads-tracker/-/core-downloads-tracker-6.1.8.tgz",
840
+ "integrity": "sha512-TGAvzwUg9hybDacwfIGFjI2bXYXrIqky+vMfaeay8rvT56/PNAlvIDUJ54kpT5KRc9AWAihOvtDI7/LJOThOmQ==",
841
+ "funding": {
842
+ "type": "opencollective",
843
+ "url": "https://opencollective.com/mui-org"
844
+ }
845
+ },
846
+ "node_modules/@mui/icons-material": {
847
+ "version": "6.1.8",
848
+ "resolved": "https://registry.npmjs.org/@mui/icons-material/-/icons-material-6.1.8.tgz",
849
+ "integrity": "sha512-6frsXcf1TcJKWevWwRup6V4L8lzI33cbHcAjT83YLgKw0vYRZKY0kjMI9fhrJZdRWXgFFgKKvEv3GjoxbqFF7A==",
850
+ "dependencies": {
851
+ "@babel/runtime": "^7.26.0"
852
+ },
853
+ "engines": {
854
+ "node": ">=14.0.0"
855
+ },
856
+ "funding": {
857
+ "type": "opencollective",
858
+ "url": "https://opencollective.com/mui-org"
859
+ },
860
+ "peerDependencies": {
861
+ "@mui/material": "^6.1.8",
862
+ "@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0",
863
+ "react": "^17.0.0 || ^18.0.0 || ^19.0.0"
864
+ },
865
+ "peerDependenciesMeta": {
866
+ "@types/react": {
867
+ "optional": true
868
+ }
869
+ }
870
+ },
871
+ "node_modules/@mui/material": {
872
+ "version": "6.1.8",
873
+ "resolved": "https://registry.npmjs.org/@mui/material/-/material-6.1.8.tgz",
874
+ "integrity": "sha512-QZdQFnXct+7NXIzHgT3qt+sQiO7HYGZU2vymP9Xl9tUMXEOA/S1mZMMb7+WGZrk5TzNlU/kP/85K0da5V1jXoQ==",
875
+ "dependencies": {
876
+ "@babel/runtime": "^7.26.0",
877
+ "@mui/core-downloads-tracker": "^6.1.8",
878
+ "@mui/system": "^6.1.8",
879
+ "@mui/types": "^7.2.19",
880
+ "@mui/utils": "^6.1.8",
881
+ "@popperjs/core": "^2.11.8",
882
+ "@types/react-transition-group": "^4.4.11",
883
+ "clsx": "^2.1.1",
884
+ "csstype": "^3.1.3",
885
+ "prop-types": "^15.8.1",
886
+ "react-is": "^18.3.1",
887
+ "react-transition-group": "^4.4.5"
888
+ },
889
+ "engines": {
890
+ "node": ">=14.0.0"
891
+ },
892
+ "funding": {
893
+ "type": "opencollective",
894
+ "url": "https://opencollective.com/mui-org"
895
+ },
896
+ "peerDependencies": {
897
+ "@emotion/react": "^11.5.0",
898
+ "@emotion/styled": "^11.3.0",
899
+ "@mui/material-pigment-css": "^6.1.8",
900
+ "@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0",
901
+ "react": "^17.0.0 || ^18.0.0 || ^19.0.0",
902
+ "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0"
903
+ },
904
+ "peerDependenciesMeta": {
905
+ "@emotion/react": {
906
+ "optional": true
907
+ },
908
+ "@emotion/styled": {
909
+ "optional": true
910
+ },
911
+ "@mui/material-pigment-css": {
912
+ "optional": true
913
+ },
914
+ "@types/react": {
915
+ "optional": true
916
+ }
917
+ }
918
+ },
919
+ "node_modules/@mui/material/node_modules/react-is": {
920
+ "version": "18.3.1",
921
+ "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz",
922
+ "integrity": "sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg=="
923
+ },
924
+ "node_modules/@mui/private-theming": {
925
+ "version": "6.1.8",
926
+ "resolved": "https://registry.npmjs.org/@mui/private-theming/-/private-theming-6.1.8.tgz",
927
+ "integrity": "sha512-TuKl7msynCNCVvhX3c0ef1sF0Qb3VHcPs8XOGB/8bdOGBr/ynmIG1yTMjZeiFQXk8yN9fzK/FDEKMFxILNn3wg==",
928
+ "dependencies": {
929
+ "@babel/runtime": "^7.26.0",
930
+ "@mui/utils": "^6.1.8",
931
+ "prop-types": "^15.8.1"
932
+ },
933
+ "engines": {
934
+ "node": ">=14.0.0"
935
+ },
936
+ "funding": {
937
+ "type": "opencollective",
938
+ "url": "https://opencollective.com/mui-org"
939
+ },
940
+ "peerDependencies": {
941
+ "@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0",
942
+ "react": "^17.0.0 || ^18.0.0 || ^19.0.0"
943
+ },
944
+ "peerDependenciesMeta": {
945
+ "@types/react": {
946
+ "optional": true
947
+ }
948
+ }
949
+ },
950
+ "node_modules/@mui/styled-engine": {
951
+ "version": "6.1.8",
952
+ "resolved": "https://registry.npmjs.org/@mui/styled-engine/-/styled-engine-6.1.8.tgz",
953
+ "integrity": "sha512-ZvEoT0U2nPLSLI+B4by4cVjaZnPT2f20f4JUPkyHdwLv65ZzuoHiTlwyhqX1Ch63p8bcJzKTHQVGisEoMK6PGA==",
954
+ "dependencies": {
955
+ "@babel/runtime": "^7.26.0",
956
+ "@emotion/cache": "^11.13.1",
957
+ "@emotion/serialize": "^1.3.2",
958
+ "@emotion/sheet": "^1.4.0",
959
+ "csstype": "^3.1.3",
960
+ "prop-types": "^15.8.1"
961
+ },
962
+ "engines": {
963
+ "node": ">=14.0.0"
964
+ },
965
+ "funding": {
966
+ "type": "opencollective",
967
+ "url": "https://opencollective.com/mui-org"
968
+ },
969
+ "peerDependencies": {
970
+ "@emotion/react": "^11.4.1",
971
+ "@emotion/styled": "^11.3.0",
972
+ "react": "^17.0.0 || ^18.0.0 || ^19.0.0"
973
+ },
974
+ "peerDependenciesMeta": {
975
+ "@emotion/react": {
976
+ "optional": true
977
+ },
978
+ "@emotion/styled": {
979
+ "optional": true
980
+ }
981
+ }
982
+ },
983
+ "node_modules/@mui/system": {
984
+ "version": "6.1.8",
985
+ "resolved": "https://registry.npmjs.org/@mui/system/-/system-6.1.8.tgz",
986
+ "integrity": "sha512-i1kLfQoWxzFpXTBQIuPoA3xKnAnP3en4I2T8xIolovSolGQX5k8vGjw1JaydQS40td++cFsgCdEU458HDNTGUA==",
987
+ "dependencies": {
988
+ "@babel/runtime": "^7.26.0",
989
+ "@mui/private-theming": "^6.1.8",
990
+ "@mui/styled-engine": "^6.1.8",
991
+ "@mui/types": "^7.2.19",
992
+ "@mui/utils": "^6.1.8",
993
+ "clsx": "^2.1.1",
994
+ "csstype": "^3.1.3",
995
+ "prop-types": "^15.8.1"
996
+ },
997
+ "engines": {
998
+ "node": ">=14.0.0"
999
+ },
1000
+ "funding": {
1001
+ "type": "opencollective",
1002
+ "url": "https://opencollective.com/mui-org"
1003
+ },
1004
+ "peerDependencies": {
1005
+ "@emotion/react": "^11.5.0",
1006
+ "@emotion/styled": "^11.3.0",
1007
+ "@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0",
1008
+ "react": "^17.0.0 || ^18.0.0 || ^19.0.0"
1009
+ },
1010
+ "peerDependenciesMeta": {
1011
+ "@emotion/react": {
1012
+ "optional": true
1013
+ },
1014
+ "@emotion/styled": {
1015
+ "optional": true
1016
+ },
1017
+ "@types/react": {
1018
+ "optional": true
1019
+ }
1020
+ }
1021
+ },
1022
+ "node_modules/@mui/types": {
1023
+ "version": "7.2.19",
1024
+ "resolved": "https://registry.npmjs.org/@mui/types/-/types-7.2.19.tgz",
1025
+ "integrity": "sha512-6XpZEM/Q3epK9RN8ENoXuygnqUQxE+siN/6rGRi2iwJPgBUR25mphYQ9ZI87plGh58YoZ5pp40bFvKYOCDJ3tA==",
1026
+ "peerDependencies": {
1027
+ "@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0"
1028
+ },
1029
+ "peerDependenciesMeta": {
1030
+ "@types/react": {
1031
+ "optional": true
1032
+ }
1033
+ }
1034
+ },
1035
+ "node_modules/@mui/utils": {
1036
+ "version": "6.1.8",
1037
+ "resolved": "https://registry.npmjs.org/@mui/utils/-/utils-6.1.8.tgz",
1038
+ "integrity": "sha512-O2DWb1kz8hiANVcR7Z4gOB3SvPPsSQGUmStpyBDzde6dJIfBzgV9PbEQOBZd3EBsd1pB+Uv1z5LAJAbymmawrA==",
1039
+ "dependencies": {
1040
+ "@babel/runtime": "^7.26.0",
1041
+ "@mui/types": "^7.2.19",
1042
+ "@types/prop-types": "^15.7.13",
1043
+ "clsx": "^2.1.1",
1044
+ "prop-types": "^15.8.1",
1045
+ "react-is": "^18.3.1"
1046
+ },
1047
+ "engines": {
1048
+ "node": ">=14.0.0"
1049
+ },
1050
+ "funding": {
1051
+ "type": "opencollective",
1052
+ "url": "https://opencollective.com/mui-org"
1053
+ },
1054
+ "peerDependencies": {
1055
+ "@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0",
1056
+ "react": "^17.0.0 || ^18.0.0 || ^19.0.0"
1057
+ },
1058
+ "peerDependenciesMeta": {
1059
+ "@types/react": {
1060
+ "optional": true
1061
+ }
1062
+ }
1063
+ },
1064
+ "node_modules/@mui/utils/node_modules/react-is": {
1065
+ "version": "18.3.1",
1066
+ "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz",
1067
+ "integrity": "sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg=="
1068
+ },
1069
  "node_modules/@next/env": {
1070
  "version": "15.0.3",
1071
  "resolved": "https://registry.npmjs.org/@next/env/-/env-15.0.3.tgz",
 
1254
  "node": ">=14"
1255
  }
1256
  },
1257
+ "node_modules/@popperjs/core": {
1258
+ "version": "2.11.8",
1259
+ "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz",
1260
+ "integrity": "sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==",
1261
+ "funding": {
1262
+ "type": "opencollective",
1263
+ "url": "https://opencollective.com/popperjs"
1264
+ }
1265
+ },
1266
  "node_modules/@rtsao/scc": {
1267
  "version": "1.1.0",
1268
  "resolved": "https://registry.npmjs.org/@rtsao/scc/-/scc-1.1.0.tgz",
 
1303
  "undici-types": "~6.19.2"
1304
  }
1305
  },
1306
+ "node_modules/@types/parse-json": {
1307
+ "version": "4.0.2",
1308
+ "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.2.tgz",
1309
+ "integrity": "sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw=="
1310
+ },
1311
  "node_modules/@types/prop-types": {
1312
  "version": "15.7.13",
1313
  "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.13.tgz",
1314
+ "integrity": "sha512-hCZTSvwbzWGvhqxp/RqVqwU999pBf2vp7hzIjiYOsl8wqOmUxkQ6ddw1cV3l8811+kdUFus/q4d1Y3E3SyEifA=="
 
1315
  },
1316
  "node_modules/@types/react": {
1317
  "version": "18.3.12",
1318
  "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.12.tgz",
1319
  "integrity": "sha512-D2wOSq/d6Agt28q7rSI3jhU7G6aiuzljDGZ2hTZHIkrTLUI+AF3WMeKkEZ9nN2fkBAlcktT6vcZjDFiIhMYEQw==",
 
1320
  "dependencies": {
1321
  "@types/prop-types": "*",
1322
  "csstype": "^3.0.2"
 
1331
  "@types/react": "*"
1332
  }
1333
  },
1334
+ "node_modules/@types/react-transition-group": {
1335
+ "version": "4.4.11",
1336
+ "resolved": "https://registry.npmjs.org/@types/react-transition-group/-/react-transition-group-4.4.11.tgz",
1337
+ "integrity": "sha512-RM05tAniPZ5DZPzzNFP+DmrcOdD0efDUxMy3145oljWSl3x9ZV5vhme98gTxFrj2lhXvmGNnUiuDyJgY9IKkNA==",
1338
+ "dependencies": {
1339
+ "@types/react": "*"
1340
+ }
1341
+ },
1342
  "node_modules/@typescript-eslint/scope-manager": {
1343
  "version": "8.16.0",
1344
  "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.16.0.tgz",
 
1774
  "node": ">= 0.4"
1775
  }
1776
  },
1777
+ "node_modules/babel-plugin-macros": {
1778
+ "version": "3.1.0",
1779
+ "resolved": "https://registry.npmjs.org/babel-plugin-macros/-/babel-plugin-macros-3.1.0.tgz",
1780
+ "integrity": "sha512-Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg==",
1781
+ "dependencies": {
1782
+ "@babel/runtime": "^7.12.5",
1783
+ "cosmiconfig": "^7.0.0",
1784
+ "resolve": "^1.19.0"
1785
+ },
1786
+ "engines": {
1787
+ "node": ">=10",
1788
+ "npm": ">=6"
1789
+ }
1790
+ },
1791
  "node_modules/balanced-match": {
1792
  "version": "1.0.2",
1793
  "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
 
1862
  "version": "3.1.0",
1863
  "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
1864
  "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==",
 
1865
  "engines": {
1866
  "node": ">=6"
1867
  }
 
1951
  "resolved": "https://registry.npmjs.org/client-only/-/client-only-0.0.1.tgz",
1952
  "integrity": "sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA=="
1953
  },
1954
+ "node_modules/clsx": {
1955
+ "version": "2.1.1",
1956
+ "resolved": "https://registry.npmjs.org/clsx/-/clsx-2.1.1.tgz",
1957
+ "integrity": "sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==",
1958
+ "engines": {
1959
+ "node": ">=6"
1960
+ }
1961
+ },
1962
  "node_modules/color": {
1963
  "version": "4.2.3",
1964
  "resolved": "https://registry.npmjs.org/color/-/color-4.2.3.tgz",
 
2015
  "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==",
2016
  "dev": true
2017
  },
2018
+ "node_modules/convert-source-map": {
2019
+ "version": "1.9.0",
2020
+ "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz",
2021
+ "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A=="
2022
+ },
2023
+ "node_modules/cosmiconfig": {
2024
+ "version": "7.1.0",
2025
+ "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz",
2026
+ "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==",
2027
+ "dependencies": {
2028
+ "@types/parse-json": "^4.0.0",
2029
+ "import-fresh": "^3.2.1",
2030
+ "parse-json": "^5.0.0",
2031
+ "path-type": "^4.0.0",
2032
+ "yaml": "^1.10.0"
2033
+ },
2034
+ "engines": {
2035
+ "node": ">=10"
2036
+ }
2037
+ },
2038
+ "node_modules/cosmiconfig/node_modules/yaml": {
2039
+ "version": "1.10.2",
2040
+ "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz",
2041
+ "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==",
2042
+ "engines": {
2043
+ "node": ">= 6"
2044
+ }
2045
+ },
2046
  "node_modules/cross-spawn": {
2047
  "version": "7.0.6",
2048
  "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz",
 
2072
  "node_modules/csstype": {
2073
  "version": "3.1.3",
2074
  "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz",
2075
+ "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw=="
 
2076
  },
2077
  "node_modules/damerau-levenshtein": {
2078
  "version": "1.0.8",
 
2135
  "version": "4.3.7",
2136
  "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz",
2137
  "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==",
 
2138
  "dependencies": {
2139
  "ms": "^2.1.3"
2140
  },
 
2220
  "node": ">=6.0.0"
2221
  }
2222
  },
2223
+ "node_modules/dom-helpers": {
2224
+ "version": "5.2.1",
2225
+ "resolved": "https://registry.npmjs.org/dom-helpers/-/dom-helpers-5.2.1.tgz",
2226
+ "integrity": "sha512-nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA==",
2227
+ "dependencies": {
2228
+ "@babel/runtime": "^7.8.7",
2229
+ "csstype": "^3.0.2"
2230
+ }
2231
+ },
2232
  "node_modules/eastasianwidth": {
2233
  "version": "0.2.0",
2234
  "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz",
 
2254
  "node": ">=10.13.0"
2255
  }
2256
  },
2257
+ "node_modules/error-ex": {
2258
+ "version": "1.3.2",
2259
+ "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz",
2260
+ "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==",
2261
+ "dependencies": {
2262
+ "is-arrayish": "^0.2.1"
2263
+ }
2264
+ },
2265
+ "node_modules/error-ex/node_modules/is-arrayish": {
2266
+ "version": "0.2.1",
2267
+ "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz",
2268
+ "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg=="
2269
+ },
2270
  "node_modules/es-abstract": {
2271
  "version": "1.23.5",
2272
  "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.23.5.tgz",
 
2430
  "version": "4.0.0",
2431
  "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
2432
  "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==",
 
2433
  "engines": {
2434
  "node": ">=10"
2435
  },
 
3099
  "node": ">=8"
3100
  }
3101
  },
3102
+ "node_modules/find-root": {
3103
+ "version": "1.1.0",
3104
+ "resolved": "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz",
3105
+ "integrity": "sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng=="
3106
+ },
3107
  "node_modules/find-up": {
3108
  "version": "5.0.0",
3109
  "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz",
 
3189
  "version": "1.1.2",
3190
  "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz",
3191
  "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==",
 
3192
  "funding": {
3193
  "url": "https://github.com/sponsors/ljharb"
3194
  }
 
3429
  "version": "2.0.2",
3430
  "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz",
3431
  "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==",
 
3432
  "dependencies": {
3433
  "function-bind": "^1.1.2"
3434
  },
 
3436
  "node": ">= 0.4"
3437
  }
3438
  },
3439
+ "node_modules/hoist-non-react-statics": {
3440
+ "version": "3.3.2",
3441
+ "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz",
3442
+ "integrity": "sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==",
3443
+ "dependencies": {
3444
+ "react-is": "^16.7.0"
3445
+ }
3446
+ },
3447
  "node_modules/ignore": {
3448
  "version": "5.3.2",
3449
  "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz",
 
3457
  "version": "3.3.0",
3458
  "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz",
3459
  "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==",
 
3460
  "dependencies": {
3461
  "parent-module": "^1.0.0",
3462
  "resolve-from": "^4.0.0"
 
3610
  "version": "2.15.1",
3611
  "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.15.1.tgz",
3612
  "integrity": "sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ==",
 
3613
  "dependencies": {
3614
  "hasown": "^2.0.2"
3615
  },
 
3950
  "node_modules/js-tokens": {
3951
  "version": "4.0.0",
3952
  "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
3953
+ "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ=="
 
3954
  },
3955
  "node_modules/js-yaml": {
3956
  "version": "4.1.0",
 
3964
  "js-yaml": "bin/js-yaml.js"
3965
  }
3966
  },
3967
+ "node_modules/jsesc": {
3968
+ "version": "3.0.2",
3969
+ "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.0.2.tgz",
3970
+ "integrity": "sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==",
3971
+ "bin": {
3972
+ "jsesc": "bin/jsesc"
3973
+ },
3974
+ "engines": {
3975
+ "node": ">=6"
3976
+ }
3977
+ },
3978
  "node_modules/json-buffer": {
3979
  "version": "3.0.1",
3980
  "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz",
3981
  "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==",
3982
  "dev": true
3983
  },
3984
+ "node_modules/json-parse-even-better-errors": {
3985
+ "version": "2.3.1",
3986
+ "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz",
3987
+ "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w=="
3988
+ },
3989
  "node_modules/json-schema-traverse": {
3990
  "version": "0.4.1",
3991
  "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
 
4077
  "node_modules/lines-and-columns": {
4078
  "version": "1.2.4",
4079
  "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz",
4080
+ "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg=="
 
4081
  },
4082
  "node_modules/locate-path": {
4083
  "version": "6.0.0",
 
4104
  "version": "1.4.0",
4105
  "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz",
4106
  "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==",
 
4107
  "dependencies": {
4108
  "js-tokens": "^3.0.0 || ^4.0.0"
4109
  },
 
4172
  "node_modules/ms": {
4173
  "version": "2.1.3",
4174
  "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
4175
+ "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA=="
 
4176
  },
4177
  "node_modules/mz": {
4178
  "version": "2.7.0",
 
4323
  "version": "4.1.1",
4324
  "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
4325
  "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==",
 
4326
  "engines": {
4327
  "node": ">=0.10.0"
4328
  }
 
4504
  "version": "1.0.1",
4505
  "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
4506
  "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==",
 
4507
  "dependencies": {
4508
  "callsites": "^3.0.0"
4509
  },
 
4511
  "node": ">=6"
4512
  }
4513
  },
4514
+ "node_modules/parse-json": {
4515
+ "version": "5.2.0",
4516
+ "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz",
4517
+ "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==",
4518
+ "dependencies": {
4519
+ "@babel/code-frame": "^7.0.0",
4520
+ "error-ex": "^1.3.1",
4521
+ "json-parse-even-better-errors": "^2.3.0",
4522
+ "lines-and-columns": "^1.1.6"
4523
+ },
4524
+ "engines": {
4525
+ "node": ">=8"
4526
+ },
4527
+ "funding": {
4528
+ "url": "https://github.com/sponsors/sindresorhus"
4529
+ }
4530
+ },
4531
  "node_modules/path-exists": {
4532
  "version": "4.0.0",
4533
  "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
 
4558
  "node_modules/path-parse": {
4559
  "version": "1.0.7",
4560
  "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz",
4561
+ "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw=="
 
4562
  },
4563
  "node_modules/path-scurry": {
4564
  "version": "1.11.1",
 
4576
  "url": "https://github.com/sponsors/isaacs"
4577
  }
4578
  },
4579
+ "node_modules/path-type": {
4580
+ "version": "4.0.0",
4581
+ "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz",
4582
+ "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==",
4583
+ "engines": {
4584
+ "node": ">=8"
4585
+ }
4586
+ },
4587
  "node_modules/picocolors": {
4588
  "version": "1.1.1",
4589
  "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz",
 
4749
  "version": "15.8.1",
4750
  "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz",
4751
  "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==",
 
4752
  "dependencies": {
4753
  "loose-envify": "^1.4.0",
4754
  "object-assign": "^4.1.1",
 
4785
  ]
4786
  },
4787
  "node_modules/react": {
4788
+ "version": "18.3.1",
4789
+ "resolved": "https://registry.npmjs.org/react/-/react-18.3.1.tgz",
4790
+ "integrity": "sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==",
4791
+ "dependencies": {
4792
+ "loose-envify": "^1.1.0"
4793
+ },
4794
  "engines": {
4795
  "node": ">=0.10.0"
4796
  }
4797
  },
4798
  "node_modules/react-dom": {
4799
+ "version": "18.3.1",
4800
+ "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.3.1.tgz",
4801
+ "integrity": "sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw==",
4802
  "dependencies": {
4803
+ "loose-envify": "^1.1.0",
4804
+ "scheduler": "^0.23.2"
4805
  },
4806
  "peerDependencies": {
4807
+ "react": "^18.3.1"
4808
  }
4809
  },
4810
  "node_modules/react-is": {
4811
  "version": "16.13.1",
4812
  "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz",
4813
+ "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ=="
4814
+ },
4815
+ "node_modules/react-transition-group": {
4816
+ "version": "4.4.5",
4817
+ "resolved": "https://registry.npmjs.org/react-transition-group/-/react-transition-group-4.4.5.tgz",
4818
+ "integrity": "sha512-pZcd1MCJoiKiBR2NRxeCRg13uCXbydPnmB4EOeRrY7480qNWO8IIgQG6zlDkm6uRMsURXPuKq0GWtiM59a5Q6g==",
4819
+ "dependencies": {
4820
+ "@babel/runtime": "^7.5.5",
4821
+ "dom-helpers": "^5.0.1",
4822
+ "loose-envify": "^1.4.0",
4823
+ "prop-types": "^15.6.2"
4824
+ },
4825
+ "peerDependencies": {
4826
+ "react": ">=16.6.0",
4827
+ "react-dom": ">=16.6.0"
4828
+ }
4829
  },
4830
  "node_modules/read-cache": {
4831
  "version": "1.0.0",
 
4869
  "url": "https://github.com/sponsors/ljharb"
4870
  }
4871
  },
4872
+ "node_modules/regenerator-runtime": {
4873
+ "version": "0.14.1",
4874
+ "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz",
4875
+ "integrity": "sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw=="
4876
+ },
4877
  "node_modules/regexp.prototype.flags": {
4878
  "version": "1.5.3",
4879
  "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.3.tgz",
 
4896
  "version": "1.22.8",
4897
  "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz",
4898
  "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==",
 
4899
  "dependencies": {
4900
  "is-core-module": "^2.13.0",
4901
  "path-parse": "^1.0.7",
 
4912
  "version": "4.0.0",
4913
  "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz",
4914
  "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==",
 
4915
  "engines": {
4916
  "node": ">=4"
4917
  }
 
5010
  }
5011
  },
5012
  "node_modules/scheduler": {
5013
+ "version": "0.23.2",
5014
+ "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.2.tgz",
5015
+ "integrity": "sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==",
5016
+ "dependencies": {
5017
+ "loose-envify": "^1.1.0"
5018
+ }
5019
  },
5020
  "node_modules/semver": {
5021
  "version": "7.6.3",
 
5160
  "is-arrayish": "^0.3.1"
5161
  }
5162
  },
5163
+ "node_modules/source-map": {
5164
+ "version": "0.5.7",
5165
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
5166
+ "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==",
5167
+ "engines": {
5168
+ "node": ">=0.10.0"
5169
+ }
5170
+ },
5171
  "node_modules/source-map-js": {
5172
  "version": "1.2.1",
5173
  "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz",
 
5394
  "url": "https://github.com/sponsors/sindresorhus"
5395
  }
5396
  },
5397
+ "node_modules/stylis": {
5398
+ "version": "4.2.0",
5399
+ "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.2.0.tgz",
5400
+ "integrity": "sha512-Orov6g6BB1sDfYgzWfTHDOxamtX1bE/zo104Dh9e6fqJ3PooipYyfJ0pUmrZO2wAvO8YbEyeFrkV91XTsGMSrw=="
5401
+ },
5402
  "node_modules/sucrase": {
5403
  "version": "3.35.0",
5404
  "resolved": "https://registry.npmjs.org/sucrase/-/sucrase-3.35.0.tgz",
 
5481
  "version": "1.0.0",
5482
  "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz",
5483
  "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==",
 
5484
  "engines": {
5485
  "node": ">= 0.4"
5486
  },
 
6066
  "integrity": "sha512-UrcABB+4bUrFABwbluTIBErXwvbsU/V7TZWfmbgJfbkwiBuziS9gxdODUyuiecfdGQ85jglMW6juS3+z5TsKLw==",
6067
  "dev": true
6068
  },
6069
+ "@babel/code-frame": {
6070
+ "version": "7.26.2",
6071
+ "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.26.2.tgz",
6072
+ "integrity": "sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ==",
6073
+ "requires": {
6074
+ "@babel/helper-validator-identifier": "^7.25.9",
6075
+ "js-tokens": "^4.0.0",
6076
+ "picocolors": "^1.0.0"
6077
+ }
6078
+ },
6079
+ "@babel/generator": {
6080
+ "version": "7.26.2",
6081
+ "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.26.2.tgz",
6082
+ "integrity": "sha512-zevQbhbau95nkoxSq3f/DC/SC+EEOUZd3DYqfSkMhY2/wfSeaHV1Ew4vk8e+x8lja31IbyuUa2uQ3JONqKbysw==",
6083
+ "requires": {
6084
+ "@babel/parser": "^7.26.2",
6085
+ "@babel/types": "^7.26.0",
6086
+ "@jridgewell/gen-mapping": "^0.3.5",
6087
+ "@jridgewell/trace-mapping": "^0.3.25",
6088
+ "jsesc": "^3.0.2"
6089
+ }
6090
+ },
6091
+ "@babel/helper-module-imports": {
6092
+ "version": "7.25.9",
6093
+ "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.25.9.tgz",
6094
+ "integrity": "sha512-tnUA4RsrmflIM6W6RFTLFSXITtl0wKjgpnLgXyowocVPrbYrLUXSBXDgTs8BlbmIzIdlBySRQjINYs2BAkiLtw==",
6095
+ "requires": {
6096
+ "@babel/traverse": "^7.25.9",
6097
+ "@babel/types": "^7.25.9"
6098
+ }
6099
+ },
6100
+ "@babel/helper-string-parser": {
6101
+ "version": "7.25.9",
6102
+ "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.25.9.tgz",
6103
+ "integrity": "sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA=="
6104
+ },
6105
+ "@babel/helper-validator-identifier": {
6106
+ "version": "7.25.9",
6107
+ "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.9.tgz",
6108
+ "integrity": "sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ=="
6109
+ },
6110
+ "@babel/parser": {
6111
+ "version": "7.26.2",
6112
+ "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.26.2.tgz",
6113
+ "integrity": "sha512-DWMCZH9WA4Maitz2q21SRKHo9QXZxkDsbNZoVD62gusNtNBBqDg9i7uOhASfTfIGNzW+O+r7+jAlM8dwphcJKQ==",
6114
+ "requires": {
6115
+ "@babel/types": "^7.26.0"
6116
+ }
6117
+ },
6118
+ "@babel/runtime": {
6119
+ "version": "7.26.0",
6120
+ "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.26.0.tgz",
6121
+ "integrity": "sha512-FDSOghenHTiToteC/QRlv2q3DhPZ/oOXTBoirfWNx1Cx3TMVcGWQtMMmQcSvb/JjpNeGzx8Pq/b4fKEJuWm1sw==",
6122
+ "requires": {
6123
+ "regenerator-runtime": "^0.14.0"
6124
+ }
6125
+ },
6126
+ "@babel/template": {
6127
+ "version": "7.25.9",
6128
+ "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.25.9.tgz",
6129
+ "integrity": "sha512-9DGttpmPvIxBb/2uwpVo3dqJ+O6RooAFOS+lB+xDqoE2PVCE8nfoHMdZLpfCQRLwvohzXISPZcgxt80xLfsuwg==",
6130
+ "requires": {
6131
+ "@babel/code-frame": "^7.25.9",
6132
+ "@babel/parser": "^7.25.9",
6133
+ "@babel/types": "^7.25.9"
6134
+ }
6135
+ },
6136
+ "@babel/traverse": {
6137
+ "version": "7.25.9",
6138
+ "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.25.9.tgz",
6139
+ "integrity": "sha512-ZCuvfwOwlz/bawvAuvcj8rrithP2/N55Tzz342AkTvq4qaWbGfmCk/tKhNaV2cthijKrPAA8SRJV5WWe7IBMJw==",
6140
+ "requires": {
6141
+ "@babel/code-frame": "^7.25.9",
6142
+ "@babel/generator": "^7.25.9",
6143
+ "@babel/parser": "^7.25.9",
6144
+ "@babel/template": "^7.25.9",
6145
+ "@babel/types": "^7.25.9",
6146
+ "debug": "^4.3.1",
6147
+ "globals": "^11.1.0"
6148
+ },
6149
+ "dependencies": {
6150
+ "globals": {
6151
+ "version": "11.12.0",
6152
+ "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz",
6153
+ "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA=="
6154
+ }
6155
+ }
6156
+ },
6157
+ "@babel/types": {
6158
+ "version": "7.26.0",
6159
+ "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.26.0.tgz",
6160
+ "integrity": "sha512-Z/yiTPj+lDVnF7lWeKCIJzaIkI0vYO87dMpZ4bg4TDrFe4XXLFWL1TbXU27gBP3QccxV9mZICCrnjnYlJjXHOA==",
6161
+ "requires": {
6162
+ "@babel/helper-string-parser": "^7.25.9",
6163
+ "@babel/helper-validator-identifier": "^7.25.9"
6164
+ }
6165
+ },
6166
  "@emnapi/runtime": {
6167
  "version": "1.3.1",
6168
  "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.3.1.tgz",
 
6172
  "tslib": "^2.4.0"
6173
  }
6174
  },
6175
+ "@emotion/babel-plugin": {
6176
+ "version": "11.13.5",
6177
+ "resolved": "https://registry.npmjs.org/@emotion/babel-plugin/-/babel-plugin-11.13.5.tgz",
6178
+ "integrity": "sha512-pxHCpT2ex+0q+HH91/zsdHkw/lXd468DIN2zvfvLtPKLLMo6gQj7oLObq8PhkrxOZb/gGCq03S3Z7PDhS8pduQ==",
6179
+ "requires": {
6180
+ "@babel/helper-module-imports": "^7.16.7",
6181
+ "@babel/runtime": "^7.18.3",
6182
+ "@emotion/hash": "^0.9.2",
6183
+ "@emotion/memoize": "^0.9.0",
6184
+ "@emotion/serialize": "^1.3.3",
6185
+ "babel-plugin-macros": "^3.1.0",
6186
+ "convert-source-map": "^1.5.0",
6187
+ "escape-string-regexp": "^4.0.0",
6188
+ "find-root": "^1.1.0",
6189
+ "source-map": "^0.5.7",
6190
+ "stylis": "4.2.0"
6191
+ }
6192
+ },
6193
+ "@emotion/cache": {
6194
+ "version": "11.13.5",
6195
+ "resolved": "https://registry.npmjs.org/@emotion/cache/-/cache-11.13.5.tgz",
6196
+ "integrity": "sha512-Z3xbtJ+UcK76eWkagZ1onvn/wAVb1GOMuR15s30Fm2wrMgC7jzpnO2JZXr4eujTTqoQFUrZIw/rT0c6Zzjca1g==",
6197
+ "requires": {
6198
+ "@emotion/memoize": "^0.9.0",
6199
+ "@emotion/sheet": "^1.4.0",
6200
+ "@emotion/utils": "^1.4.2",
6201
+ "@emotion/weak-memoize": "^0.4.0",
6202
+ "stylis": "4.2.0"
6203
+ }
6204
+ },
6205
+ "@emotion/hash": {
6206
+ "version": "0.9.2",
6207
+ "resolved": "https://registry.npmjs.org/@emotion/hash/-/hash-0.9.2.tgz",
6208
+ "integrity": "sha512-MyqliTZGuOm3+5ZRSaaBGP3USLw6+EGykkwZns2EPC5g8jJ4z9OrdZY9apkl3+UP9+sdz76YYkwCKP5gh8iY3g=="
6209
+ },
6210
+ "@emotion/is-prop-valid": {
6211
+ "version": "1.3.1",
6212
+ "resolved": "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-1.3.1.tgz",
6213
+ "integrity": "sha512-/ACwoqx7XQi9knQs/G0qKvv5teDMhD7bXYns9N/wM8ah8iNb8jZ2uNO0YOgiq2o2poIvVtJS2YALasQuMSQ7Kw==",
6214
+ "requires": {
6215
+ "@emotion/memoize": "^0.9.0"
6216
+ }
6217
+ },
6218
+ "@emotion/memoize": {
6219
+ "version": "0.9.0",
6220
+ "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.9.0.tgz",
6221
+ "integrity": "sha512-30FAj7/EoJ5mwVPOWhAyCX+FPfMDrVecJAM+Iw9NRoSl4BBAQeqj4cApHHUXOVvIPgLVDsCFoz/hGD+5QQD1GQ=="
6222
+ },
6223
+ "@emotion/react": {
6224
+ "version": "11.13.5",
6225
+ "resolved": "https://registry.npmjs.org/@emotion/react/-/react-11.13.5.tgz",
6226
+ "integrity": "sha512-6zeCUxUH+EPF1s+YF/2hPVODeV/7V07YU5x+2tfuRL8MdW6rv5vb2+CBEGTGwBdux0OIERcOS+RzxeK80k2DsQ==",
6227
+ "requires": {
6228
+ "@babel/runtime": "^7.18.3",
6229
+ "@emotion/babel-plugin": "^11.13.5",
6230
+ "@emotion/cache": "^11.13.5",
6231
+ "@emotion/serialize": "^1.3.3",
6232
+ "@emotion/use-insertion-effect-with-fallbacks": "^1.1.0",
6233
+ "@emotion/utils": "^1.4.2",
6234
+ "@emotion/weak-memoize": "^0.4.0",
6235
+ "hoist-non-react-statics": "^3.3.1"
6236
+ }
6237
+ },
6238
+ "@emotion/serialize": {
6239
+ "version": "1.3.3",
6240
+ "resolved": "https://registry.npmjs.org/@emotion/serialize/-/serialize-1.3.3.tgz",
6241
+ "integrity": "sha512-EISGqt7sSNWHGI76hC7x1CksiXPahbxEOrC5RjmFRJTqLyEK9/9hZvBbiYn70dw4wuwMKiEMCUlR6ZXTSWQqxA==",
6242
+ "requires": {
6243
+ "@emotion/hash": "^0.9.2",
6244
+ "@emotion/memoize": "^0.9.0",
6245
+ "@emotion/unitless": "^0.10.0",
6246
+ "@emotion/utils": "^1.4.2",
6247
+ "csstype": "^3.0.2"
6248
+ }
6249
+ },
6250
+ "@emotion/sheet": {
6251
+ "version": "1.4.0",
6252
+ "resolved": "https://registry.npmjs.org/@emotion/sheet/-/sheet-1.4.0.tgz",
6253
+ "integrity": "sha512-fTBW9/8r2w3dXWYM4HCB1Rdp8NLibOw2+XELH5m5+AkWiL/KqYX6dc0kKYlaYyKjrQ6ds33MCdMPEwgs2z1rqg=="
6254
+ },
6255
+ "@emotion/styled": {
6256
+ "version": "11.13.5",
6257
+ "resolved": "https://registry.npmjs.org/@emotion/styled/-/styled-11.13.5.tgz",
6258
+ "integrity": "sha512-gnOQ+nGLPvDXgIx119JqGalys64lhMdnNQA9TMxhDA4K0Hq5+++OE20Zs5GxiCV9r814xQ2K5WmtofSpHVW6BQ==",
6259
+ "requires": {
6260
+ "@babel/runtime": "^7.18.3",
6261
+ "@emotion/babel-plugin": "^11.13.5",
6262
+ "@emotion/is-prop-valid": "^1.3.0",
6263
+ "@emotion/serialize": "^1.3.3",
6264
+ "@emotion/use-insertion-effect-with-fallbacks": "^1.1.0",
6265
+ "@emotion/utils": "^1.4.2"
6266
+ }
6267
+ },
6268
+ "@emotion/unitless": {
6269
+ "version": "0.10.0",
6270
+ "resolved": "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.10.0.tgz",
6271
+ "integrity": "sha512-dFoMUuQA20zvtVTuxZww6OHoJYgrzfKM1t52mVySDJnMSEa08ruEvdYQbhvyu6soU+NeLVd3yKfTfT0NeV6qGg=="
6272
+ },
6273
+ "@emotion/use-insertion-effect-with-fallbacks": {
6274
+ "version": "1.1.0",
6275
+ "resolved": "https://registry.npmjs.org/@emotion/use-insertion-effect-with-fallbacks/-/use-insertion-effect-with-fallbacks-1.1.0.tgz",
6276
+ "integrity": "sha512-+wBOcIV5snwGgI2ya3u99D7/FJquOIniQT1IKyDsBmEgwvpxMNeS65Oib7OnE2d2aY+3BU4OiH+0Wchf8yk3Hw==",
6277
+ "requires": {}
6278
+ },
6279
+ "@emotion/utils": {
6280
+ "version": "1.4.2",
6281
+ "resolved": "https://registry.npmjs.org/@emotion/utils/-/utils-1.4.2.tgz",
6282
+ "integrity": "sha512-3vLclRofFziIa3J2wDh9jjbkUz9qk5Vi3IZ/FSTKViB0k+ef0fPV7dYrUIugbgupYDx7v9ud/SjrtEP8Y4xLoA=="
6283
+ },
6284
+ "@emotion/weak-memoize": {
6285
+ "version": "0.4.0",
6286
+ "resolved": "https://registry.npmjs.org/@emotion/weak-memoize/-/weak-memoize-0.4.0.tgz",
6287
+ "integrity": "sha512-snKqtPW01tN0ui7yu9rGv69aJXr/a/Ywvl11sUjNtEcRc+ng/mQriFL0wLXMef74iHa/EkftbDzU9F8iFbH+zg=="
6288
+ },
6289
  "@eslint-community/regexpp": {
6290
  "version": "4.12.1",
6291
  "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.12.1.tgz",
 
6527
  "version": "0.3.5",
6528
  "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz",
6529
  "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==",
 
6530
  "requires": {
6531
  "@jridgewell/set-array": "^1.2.1",
6532
  "@jridgewell/sourcemap-codec": "^1.4.10",
 
6536
  "@jridgewell/resolve-uri": {
6537
  "version": "3.1.2",
6538
  "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz",
6539
+ "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw=="
 
6540
  },
6541
  "@jridgewell/set-array": {
6542
  "version": "1.2.1",
6543
  "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz",
6544
+ "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A=="
 
6545
  },
6546
  "@jridgewell/sourcemap-codec": {
6547
  "version": "1.5.0",
6548
  "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz",
6549
+ "integrity": "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ=="
 
6550
  },
6551
  "@jridgewell/trace-mapping": {
6552
  "version": "0.3.25",
6553
  "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz",
6554
  "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==",
 
6555
  "requires": {
6556
  "@jridgewell/resolve-uri": "^3.1.0",
6557
  "@jridgewell/sourcemap-codec": "^1.4.14"
6558
  }
6559
  },
6560
+ "@mui/core-downloads-tracker": {
6561
+ "version": "6.1.8",
6562
+ "resolved": "https://registry.npmjs.org/@mui/core-downloads-tracker/-/core-downloads-tracker-6.1.8.tgz",
6563
+ "integrity": "sha512-TGAvzwUg9hybDacwfIGFjI2bXYXrIqky+vMfaeay8rvT56/PNAlvIDUJ54kpT5KRc9AWAihOvtDI7/LJOThOmQ=="
6564
+ },
6565
+ "@mui/icons-material": {
6566
+ "version": "6.1.8",
6567
+ "resolved": "https://registry.npmjs.org/@mui/icons-material/-/icons-material-6.1.8.tgz",
6568
+ "integrity": "sha512-6frsXcf1TcJKWevWwRup6V4L8lzI33cbHcAjT83YLgKw0vYRZKY0kjMI9fhrJZdRWXgFFgKKvEv3GjoxbqFF7A==",
6569
+ "requires": {
6570
+ "@babel/runtime": "^7.26.0"
6571
+ }
6572
+ },
6573
+ "@mui/material": {
6574
+ "version": "6.1.8",
6575
+ "resolved": "https://registry.npmjs.org/@mui/material/-/material-6.1.8.tgz",
6576
+ "integrity": "sha512-QZdQFnXct+7NXIzHgT3qt+sQiO7HYGZU2vymP9Xl9tUMXEOA/S1mZMMb7+WGZrk5TzNlU/kP/85K0da5V1jXoQ==",
6577
+ "requires": {
6578
+ "@babel/runtime": "^7.26.0",
6579
+ "@mui/core-downloads-tracker": "^6.1.8",
6580
+ "@mui/system": "^6.1.8",
6581
+ "@mui/types": "^7.2.19",
6582
+ "@mui/utils": "^6.1.8",
6583
+ "@popperjs/core": "^2.11.8",
6584
+ "@types/react-transition-group": "^4.4.11",
6585
+ "clsx": "^2.1.1",
6586
+ "csstype": "^3.1.3",
6587
+ "prop-types": "^15.8.1",
6588
+ "react-is": "^18.3.1",
6589
+ "react-transition-group": "^4.4.5"
6590
+ },
6591
+ "dependencies": {
6592
+ "react-is": {
6593
+ "version": "18.3.1",
6594
+ "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz",
6595
+ "integrity": "sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg=="
6596
+ }
6597
+ }
6598
+ },
6599
+ "@mui/private-theming": {
6600
+ "version": "6.1.8",
6601
+ "resolved": "https://registry.npmjs.org/@mui/private-theming/-/private-theming-6.1.8.tgz",
6602
+ "integrity": "sha512-TuKl7msynCNCVvhX3c0ef1sF0Qb3VHcPs8XOGB/8bdOGBr/ynmIG1yTMjZeiFQXk8yN9fzK/FDEKMFxILNn3wg==",
6603
+ "requires": {
6604
+ "@babel/runtime": "^7.26.0",
6605
+ "@mui/utils": "^6.1.8",
6606
+ "prop-types": "^15.8.1"
6607
+ }
6608
+ },
6609
+ "@mui/styled-engine": {
6610
+ "version": "6.1.8",
6611
+ "resolved": "https://registry.npmjs.org/@mui/styled-engine/-/styled-engine-6.1.8.tgz",
6612
+ "integrity": "sha512-ZvEoT0U2nPLSLI+B4by4cVjaZnPT2f20f4JUPkyHdwLv65ZzuoHiTlwyhqX1Ch63p8bcJzKTHQVGisEoMK6PGA==",
6613
+ "requires": {
6614
+ "@babel/runtime": "^7.26.0",
6615
+ "@emotion/cache": "^11.13.1",
6616
+ "@emotion/serialize": "^1.3.2",
6617
+ "@emotion/sheet": "^1.4.0",
6618
+ "csstype": "^3.1.3",
6619
+ "prop-types": "^15.8.1"
6620
+ }
6621
+ },
6622
+ "@mui/system": {
6623
+ "version": "6.1.8",
6624
+ "resolved": "https://registry.npmjs.org/@mui/system/-/system-6.1.8.tgz",
6625
+ "integrity": "sha512-i1kLfQoWxzFpXTBQIuPoA3xKnAnP3en4I2T8xIolovSolGQX5k8vGjw1JaydQS40td++cFsgCdEU458HDNTGUA==",
6626
+ "requires": {
6627
+ "@babel/runtime": "^7.26.0",
6628
+ "@mui/private-theming": "^6.1.8",
6629
+ "@mui/styled-engine": "^6.1.8",
6630
+ "@mui/types": "^7.2.19",
6631
+ "@mui/utils": "^6.1.8",
6632
+ "clsx": "^2.1.1",
6633
+ "csstype": "^3.1.3",
6634
+ "prop-types": "^15.8.1"
6635
+ }
6636
+ },
6637
+ "@mui/types": {
6638
+ "version": "7.2.19",
6639
+ "resolved": "https://registry.npmjs.org/@mui/types/-/types-7.2.19.tgz",
6640
+ "integrity": "sha512-6XpZEM/Q3epK9RN8ENoXuygnqUQxE+siN/6rGRi2iwJPgBUR25mphYQ9ZI87plGh58YoZ5pp40bFvKYOCDJ3tA==",
6641
+ "requires": {}
6642
+ },
6643
+ "@mui/utils": {
6644
+ "version": "6.1.8",
6645
+ "resolved": "https://registry.npmjs.org/@mui/utils/-/utils-6.1.8.tgz",
6646
+ "integrity": "sha512-O2DWb1kz8hiANVcR7Z4gOB3SvPPsSQGUmStpyBDzde6dJIfBzgV9PbEQOBZd3EBsd1pB+Uv1z5LAJAbymmawrA==",
6647
+ "requires": {
6648
+ "@babel/runtime": "^7.26.0",
6649
+ "@mui/types": "^7.2.19",
6650
+ "@types/prop-types": "^15.7.13",
6651
+ "clsx": "^2.1.1",
6652
+ "prop-types": "^15.8.1",
6653
+ "react-is": "^18.3.1"
6654
+ },
6655
+ "dependencies": {
6656
+ "react-is": {
6657
+ "version": "18.3.1",
6658
+ "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz",
6659
+ "integrity": "sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg=="
6660
+ }
6661
+ }
6662
+ },
6663
  "@next/env": {
6664
  "version": "15.0.3",
6665
  "resolved": "https://registry.npmjs.org/@next/env/-/env-15.0.3.tgz",
 
6761
  "dev": true,
6762
  "optional": true
6763
  },
6764
+ "@popperjs/core": {
6765
+ "version": "2.11.8",
6766
+ "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz",
6767
+ "integrity": "sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A=="
6768
+ },
6769
  "@rtsao/scc": {
6770
  "version": "1.1.0",
6771
  "resolved": "https://registry.npmjs.org/@rtsao/scc/-/scc-1.1.0.tgz",
 
6806
  "undici-types": "~6.19.2"
6807
  }
6808
  },
6809
+ "@types/parse-json": {
6810
+ "version": "4.0.2",
6811
+ "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.2.tgz",
6812
+ "integrity": "sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw=="
6813
+ },
6814
  "@types/prop-types": {
6815
  "version": "15.7.13",
6816
  "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.13.tgz",
6817
+ "integrity": "sha512-hCZTSvwbzWGvhqxp/RqVqwU999pBf2vp7hzIjiYOsl8wqOmUxkQ6ddw1cV3l8811+kdUFus/q4d1Y3E3SyEifA=="
 
6818
  },
6819
  "@types/react": {
6820
  "version": "18.3.12",
6821
  "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.12.tgz",
6822
  "integrity": "sha512-D2wOSq/d6Agt28q7rSI3jhU7G6aiuzljDGZ2hTZHIkrTLUI+AF3WMeKkEZ9nN2fkBAlcktT6vcZjDFiIhMYEQw==",
 
6823
  "requires": {
6824
  "@types/prop-types": "*",
6825
  "csstype": "^3.0.2"
 
6834
  "@types/react": "*"
6835
  }
6836
  },
6837
+ "@types/react-transition-group": {
6838
+ "version": "4.4.11",
6839
+ "resolved": "https://registry.npmjs.org/@types/react-transition-group/-/react-transition-group-4.4.11.tgz",
6840
+ "integrity": "sha512-RM05tAniPZ5DZPzzNFP+DmrcOdD0efDUxMy3145oljWSl3x9ZV5vhme98gTxFrj2lhXvmGNnUiuDyJgY9IKkNA==",
6841
+ "requires": {
6842
+ "@types/react": "*"
6843
+ }
6844
+ },
6845
  "@typescript-eslint/scope-manager": {
6846
  "version": "8.16.0",
6847
  "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.16.0.tgz",
 
7146
  "integrity": "sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==",
7147
  "dev": true
7148
  },
7149
+ "babel-plugin-macros": {
7150
+ "version": "3.1.0",
7151
+ "resolved": "https://registry.npmjs.org/babel-plugin-macros/-/babel-plugin-macros-3.1.0.tgz",
7152
+ "integrity": "sha512-Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg==",
7153
+ "requires": {
7154
+ "@babel/runtime": "^7.12.5",
7155
+ "cosmiconfig": "^7.0.0",
7156
+ "resolve": "^1.19.0"
7157
+ }
7158
+ },
7159
  "balanced-match": {
7160
  "version": "1.0.2",
7161
  "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
 
7211
  "callsites": {
7212
  "version": "3.1.0",
7213
  "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
7214
+ "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ=="
 
7215
  },
7216
  "camelcase-css": {
7217
  "version": "2.0.1",
 
7266
  "resolved": "https://registry.npmjs.org/client-only/-/client-only-0.0.1.tgz",
7267
  "integrity": "sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA=="
7268
  },
7269
+ "clsx": {
7270
+ "version": "2.1.1",
7271
+ "resolved": "https://registry.npmjs.org/clsx/-/clsx-2.1.1.tgz",
7272
+ "integrity": "sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA=="
7273
+ },
7274
  "color": {
7275
  "version": "4.2.3",
7276
  "resolved": "https://registry.npmjs.org/color/-/color-4.2.3.tgz",
 
7318
  "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==",
7319
  "dev": true
7320
  },
7321
+ "convert-source-map": {
7322
+ "version": "1.9.0",
7323
+ "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz",
7324
+ "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A=="
7325
+ },
7326
+ "cosmiconfig": {
7327
+ "version": "7.1.0",
7328
+ "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz",
7329
+ "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==",
7330
+ "requires": {
7331
+ "@types/parse-json": "^4.0.0",
7332
+ "import-fresh": "^3.2.1",
7333
+ "parse-json": "^5.0.0",
7334
+ "path-type": "^4.0.0",
7335
+ "yaml": "^1.10.0"
7336
+ },
7337
+ "dependencies": {
7338
+ "yaml": {
7339
+ "version": "1.10.2",
7340
+ "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz",
7341
+ "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg=="
7342
+ }
7343
+ }
7344
+ },
7345
  "cross-spawn": {
7346
  "version": "7.0.6",
7347
  "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz",
 
7362
  "csstype": {
7363
  "version": "3.1.3",
7364
  "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz",
7365
+ "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw=="
 
7366
  },
7367
  "damerau-levenshtein": {
7368
  "version": "1.0.8",
 
7407
  "version": "4.3.7",
7408
  "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz",
7409
  "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==",
 
7410
  "requires": {
7411
  "ms": "^2.1.3"
7412
  }
 
7466
  "esutils": "^2.0.2"
7467
  }
7468
  },
7469
+ "dom-helpers": {
7470
+ "version": "5.2.1",
7471
+ "resolved": "https://registry.npmjs.org/dom-helpers/-/dom-helpers-5.2.1.tgz",
7472
+ "integrity": "sha512-nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA==",
7473
+ "requires": {
7474
+ "@babel/runtime": "^7.8.7",
7475
+ "csstype": "^3.0.2"
7476
+ }
7477
+ },
7478
  "eastasianwidth": {
7479
  "version": "0.2.0",
7480
  "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz",
 
7497
  "tapable": "^2.2.0"
7498
  }
7499
  },
7500
+ "error-ex": {
7501
+ "version": "1.3.2",
7502
+ "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz",
7503
+ "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==",
7504
+ "requires": {
7505
+ "is-arrayish": "^0.2.1"
7506
+ },
7507
+ "dependencies": {
7508
+ "is-arrayish": {
7509
+ "version": "0.2.1",
7510
+ "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz",
7511
+ "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg=="
7512
+ }
7513
+ }
7514
+ },
7515
  "es-abstract": {
7516
  "version": "1.23.5",
7517
  "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.23.5.tgz",
 
7647
  "escape-string-regexp": {
7648
  "version": "4.0.0",
7649
  "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
7650
+ "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA=="
 
7651
  },
7652
  "eslint": {
7653
  "version": "8.57.1",
 
8119
  "to-regex-range": "^5.0.1"
8120
  }
8121
  },
8122
+ "find-root": {
8123
+ "version": "1.1.0",
8124
+ "resolved": "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz",
8125
+ "integrity": "sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng=="
8126
+ },
8127
  "find-up": {
8128
  "version": "5.0.0",
8129
  "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz",
 
8186
  "function-bind": {
8187
  "version": "1.1.2",
8188
  "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz",
8189
+ "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA=="
 
8190
  },
8191
  "function.prototype.name": {
8192
  "version": "1.1.6",
 
8348
  "version": "2.0.2",
8349
  "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz",
8350
  "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==",
 
8351
  "requires": {
8352
  "function-bind": "^1.1.2"
8353
  }
8354
  },
8355
+ "hoist-non-react-statics": {
8356
+ "version": "3.3.2",
8357
+ "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz",
8358
+ "integrity": "sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==",
8359
+ "requires": {
8360
+ "react-is": "^16.7.0"
8361
+ }
8362
+ },
8363
  "ignore": {
8364
  "version": "5.3.2",
8365
  "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz",
 
8370
  "version": "3.3.0",
8371
  "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz",
8372
  "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==",
 
8373
  "requires": {
8374
  "parent-module": "^1.0.0",
8375
  "resolve-from": "^4.0.0"
 
8480
  "version": "2.15.1",
8481
  "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.15.1.tgz",
8482
  "integrity": "sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ==",
 
8483
  "requires": {
8484
  "hasown": "^2.0.2"
8485
  }
 
8695
  "js-tokens": {
8696
  "version": "4.0.0",
8697
  "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
8698
+ "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ=="
 
8699
  },
8700
  "js-yaml": {
8701
  "version": "4.1.0",
 
8706
  "argparse": "^2.0.1"
8707
  }
8708
  },
8709
+ "jsesc": {
8710
+ "version": "3.0.2",
8711
+ "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.0.2.tgz",
8712
+ "integrity": "sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g=="
8713
+ },
8714
  "json-buffer": {
8715
  "version": "3.0.1",
8716
  "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz",
8717
  "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==",
8718
  "dev": true
8719
  },
8720
+ "json-parse-even-better-errors": {
8721
+ "version": "2.3.1",
8722
+ "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz",
8723
+ "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w=="
8724
+ },
8725
  "json-schema-traverse": {
8726
  "version": "0.4.1",
8727
  "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
 
8798
  "lines-and-columns": {
8799
  "version": "1.2.4",
8800
  "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz",
8801
+ "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg=="
 
8802
  },
8803
  "locate-path": {
8804
  "version": "6.0.0",
 
8819
  "version": "1.4.0",
8820
  "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz",
8821
  "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==",
 
8822
  "requires": {
8823
  "js-tokens": "^3.0.0 || ^4.0.0"
8824
  }
 
8869
  "ms": {
8870
  "version": "2.1.3",
8871
  "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
8872
+ "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA=="
 
8873
  },
8874
  "mz": {
8875
  "version": "2.7.0",
 
8945
  "object-assign": {
8946
  "version": "4.1.1",
8947
  "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
8948
+ "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg=="
 
8949
  },
8950
  "object-hash": {
8951
  "version": "3.0.0",
 
9073
  "version": "1.0.1",
9074
  "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
9075
  "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==",
 
9076
  "requires": {
9077
  "callsites": "^3.0.0"
9078
  }
9079
  },
9080
+ "parse-json": {
9081
+ "version": "5.2.0",
9082
+ "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz",
9083
+ "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==",
9084
+ "requires": {
9085
+ "@babel/code-frame": "^7.0.0",
9086
+ "error-ex": "^1.3.1",
9087
+ "json-parse-even-better-errors": "^2.3.0",
9088
+ "lines-and-columns": "^1.1.6"
9089
+ }
9090
+ },
9091
  "path-exists": {
9092
  "version": "4.0.0",
9093
  "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
 
9109
  "path-parse": {
9110
  "version": "1.0.7",
9111
  "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz",
9112
+ "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw=="
 
9113
  },
9114
  "path-scurry": {
9115
  "version": "1.11.1",
 
9121
  "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0"
9122
  }
9123
  },
9124
+ "path-type": {
9125
+ "version": "4.0.0",
9126
+ "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz",
9127
+ "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw=="
9128
+ },
9129
  "picocolors": {
9130
  "version": "1.1.1",
9131
  "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz",
 
9221
  "version": "15.8.1",
9222
  "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz",
9223
  "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==",
 
9224
  "requires": {
9225
  "loose-envify": "^1.4.0",
9226
  "object-assign": "^4.1.1",
 
9240
  "dev": true
9241
  },
9242
  "react": {
9243
+ "version": "18.3.1",
9244
+ "resolved": "https://registry.npmjs.org/react/-/react-18.3.1.tgz",
9245
+ "integrity": "sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==",
9246
+ "requires": {
9247
+ "loose-envify": "^1.1.0"
9248
+ }
9249
  },
9250
  "react-dom": {
9251
+ "version": "18.3.1",
9252
+ "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.3.1.tgz",
9253
+ "integrity": "sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw==",
9254
  "requires": {
9255
+ "loose-envify": "^1.1.0",
9256
+ "scheduler": "^0.23.2"
9257
  }
9258
  },
9259
  "react-is": {
9260
  "version": "16.13.1",
9261
  "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz",
9262
+ "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ=="
9263
+ },
9264
+ "react-transition-group": {
9265
+ "version": "4.4.5",
9266
+ "resolved": "https://registry.npmjs.org/react-transition-group/-/react-transition-group-4.4.5.tgz",
9267
+ "integrity": "sha512-pZcd1MCJoiKiBR2NRxeCRg13uCXbydPnmB4EOeRrY7480qNWO8IIgQG6zlDkm6uRMsURXPuKq0GWtiM59a5Q6g==",
9268
+ "requires": {
9269
+ "@babel/runtime": "^7.5.5",
9270
+ "dom-helpers": "^5.0.1",
9271
+ "loose-envify": "^1.4.0",
9272
+ "prop-types": "^15.6.2"
9273
+ }
9274
  },
9275
  "read-cache": {
9276
  "version": "1.0.0",
 
9305
  "which-builtin-type": "^1.1.4"
9306
  }
9307
  },
9308
+ "regenerator-runtime": {
9309
+ "version": "0.14.1",
9310
+ "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz",
9311
+ "integrity": "sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw=="
9312
+ },
9313
  "regexp.prototype.flags": {
9314
  "version": "1.5.3",
9315
  "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.3.tgz",
 
9326
  "version": "1.22.8",
9327
  "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz",
9328
  "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==",
 
9329
  "requires": {
9330
  "is-core-module": "^2.13.0",
9331
  "path-parse": "^1.0.7",
 
9335
  "resolve-from": {
9336
  "version": "4.0.0",
9337
  "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz",
9338
+ "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g=="
 
9339
  },
9340
  "resolve-pkg-maps": {
9341
  "version": "1.0.0",
 
9391
  }
9392
  },
9393
  "scheduler": {
9394
+ "version": "0.23.2",
9395
+ "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.2.tgz",
9396
+ "integrity": "sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==",
9397
+ "requires": {
9398
+ "loose-envify": "^1.1.0"
9399
+ }
9400
  },
9401
  "semver": {
9402
  "version": "7.6.3",
 
9502
  "is-arrayish": "^0.3.1"
9503
  }
9504
  },
9505
+ "source-map": {
9506
+ "version": "0.5.7",
9507
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
9508
+ "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ=="
9509
+ },
9510
  "source-map-js": {
9511
  "version": "1.2.1",
9512
  "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz",
 
9669
  "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==",
9670
  "dev": true
9671
  },
9672
+ "stylis": {
9673
+ "version": "4.2.0",
9674
+ "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.2.0.tgz",
9675
+ "integrity": "sha512-Orov6g6BB1sDfYgzWfTHDOxamtX1bE/zo104Dh9e6fqJ3PooipYyfJ0pUmrZO2wAvO8YbEyeFrkV91XTsGMSrw=="
9676
+ },
9677
  "sucrase": {
9678
  "version": "3.35.0",
9679
  "resolved": "https://registry.npmjs.org/sucrase/-/sucrase-3.35.0.tgz",
 
9735
  "supports-preserve-symlinks-flag": {
9736
  "version": "1.0.0",
9737
  "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz",
9738
+ "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w=="
 
9739
  },
9740
  "tailwindcss": {
9741
  "version": "3.4.15",
package.json CHANGED
@@ -9,10 +9,14 @@
9
  "lint": "next lint"
10
  },
11
  "dependencies": {
 
 
12
  "@huggingface/inference": "^2.8.1",
 
 
13
  "next": "15.0.3",
14
- "react": "19.0.0-rc-66855b96-20241106",
15
- "react-dom": "19.0.0-rc-66855b96-20241106"
16
  },
17
  "devDependencies": {
18
  "@types/node": "^20",
 
9
  "lint": "next lint"
10
  },
11
  "dependencies": {
12
+ "@emotion/react": "^11.13.5",
13
+ "@emotion/styled": "^11.13.5",
14
  "@huggingface/inference": "^2.8.1",
15
+ "@mui/icons-material": "^6.1.8",
16
+ "@mui/material": "^6.1.8",
17
  "next": "15.0.3",
18
+ "react": "^18.2.0",
19
+ "react-dom": "^18.2.0"
20
  },
21
  "devDependencies": {
22
  "@types/node": "^20",
src/app/api/recommend/route.ts ADDED
@@ -0,0 +1,28 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import { HfInference } from '@huggingface/inference'
2
+
3
+ const hf = new HfInference(process.env.HUGGINGFACE_API_KEY)
4
+
5
+ export async function POST(request: Request) {
6
+ try {
7
+ const { symptoms, medicalHistory } = await request.json()
8
+
9
+ const prompt = `Given the following patient information:
10
+ Symptoms: ${symptoms}
11
+ Medical History: ${medicalHistory}
12
+
13
+ Please recommend appropriate medications and treatments. Consider potential drug interactions and contraindications.`
14
+
15
+ const response = await hf.textGeneration({
16
+ model: "nvidia/Llama-3.1-Nemotron-70B-Instruct-HF",
17
+ inputs: prompt,
18
+ parameters: {
19
+ max_new_tokens: 32000,
20
+ temperature: 0.7
21
+ }
22
+ })
23
+
24
+ return Response.json({ recommendation: response.generated_text })
25
+ } catch (error) {
26
+ return Response.json({ error: 'Failed to generate recommendation' }, { status: 500 })
27
+ }
28
+ }
src/app/layout.tsx CHANGED
@@ -1,35 +1,39 @@
1
- import type { Metadata } from "next";
2
- import localFont from "next/font/local";
3
- import "./globals.css";
4
 
5
- const geistSans = localFont({
6
- src: "./fonts/GeistVF.woff",
7
- variable: "--font-geist-sans",
8
- weight: "100 900",
9
- });
10
- const geistMono = localFont({
11
- src: "./fonts/GeistMonoVF.woff",
12
- variable: "--font-geist-mono",
13
- weight: "100 900",
14
- });
15
 
16
- export const metadata: Metadata = {
17
- title: "Create Next App",
18
- description: "Generated by create next app",
19
- };
 
 
 
 
 
 
 
 
 
 
 
 
20
 
21
  export default function RootLayout({
22
  children,
23
  }: Readonly<{
24
- children: React.ReactNode;
25
  }>) {
26
  return (
27
  <html lang="en">
28
- <body
29
- className={`${geistSans.variable} ${geistMono.variable} antialiased`}
30
- >
31
- {children}
 
32
  </body>
33
  </html>
34
- );
35
  }
 
1
+ 'use client'
 
 
2
 
3
+ import { ThemeProvider, createTheme } from '@mui/material/styles'
4
+ import CssBaseline from '@mui/material/CssBaseline'
5
+ import { Roboto } from 'next/font/google'
 
 
 
 
 
 
 
6
 
7
+ const roboto = Roboto({
8
+ weight: ['300', '400', '500', '700'],
9
+ subsets: ['latin'],
10
+ })
11
+
12
+ const theme = createTheme({
13
+ palette: {
14
+ mode: 'light',
15
+ primary: {
16
+ main: '#2563eb',
17
+ },
18
+ },
19
+ typography: {
20
+ fontFamily: roboto.style.fontFamily,
21
+ },
22
+ })
23
 
24
  export default function RootLayout({
25
  children,
26
  }: Readonly<{
27
+ children: React.ReactNode
28
  }>) {
29
  return (
30
  <html lang="en">
31
+ <body>
32
+ <ThemeProvider theme={theme}>
33
+ <CssBaseline />
34
+ {children}
35
+ </ThemeProvider>
36
  </body>
37
  </html>
38
+ )
39
  }
src/app/page.tsx CHANGED
@@ -1,101 +1,174 @@
1
- import Image from "next/image";
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2
 
3
  export default function Home() {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4
  return (
5
- <div className="grid grid-rows-[20px_1fr_20px] items-center justify-items-center min-h-screen p-8 pb-20 gap-16 sm:p-20 font-[family-name:var(--font-geist-sans)]">
6
- <main className="flex flex-col gap-8 row-start-2 items-center sm:items-start">
7
- <Image
8
- className="dark:invert"
9
- src="/next.svg"
10
- alt="Next.js logo"
11
- width={180}
12
- height={38}
13
- priority
14
- />
15
- <ol className="list-inside list-decimal text-sm text-center sm:text-left font-[family-name:var(--font-geist-mono)]">
16
- <li className="mb-2">
17
- Get started by editing{" "}
18
- <code className="bg-black/[.05] dark:bg-white/[.06] px-1 py-0.5 rounded font-semibold">
19
- src/app/page.tsx
20
- </code>
21
- .
22
- </li>
23
- <li>Save and see your changes instantly.</li>
24
- </ol>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
25
 
26
- <div className="flex gap-4 items-center flex-col sm:flex-row">
27
- <a
28
- className="rounded-full border border-solid border-transparent transition-colors flex items-center justify-center bg-foreground text-background gap-2 hover:bg-[#383838] dark:hover:bg-[#ccc] text-sm sm:text-base h-10 sm:h-12 px-4 sm:px-5"
29
- href="https://vercel.com/new?utm_source=create-next-app&utm_medium=appdir-template-tw&utm_campaign=create-next-app"
30
- target="_blank"
31
- rel="noopener noreferrer"
32
- >
33
- <Image
34
- className="dark:invert"
35
- src="/vercel.svg"
36
- alt="Vercel logomark"
37
- width={20}
38
- height={20}
39
- />
40
- Deploy now
41
- </a>
42
- <a
43
- className="rounded-full border border-solid border-black/[.08] dark:border-white/[.145] transition-colors flex items-center justify-center hover:bg-[#f2f2f2] dark:hover:bg-[#1a1a1a] hover:border-transparent text-sm sm:text-base h-10 sm:h-12 px-4 sm:px-5 sm:min-w-44"
44
- href="https://nextjs.org/docs?utm_source=create-next-app&utm_medium=appdir-template-tw&utm_campaign=create-next-app"
45
- target="_blank"
46
- rel="noopener noreferrer"
47
- >
48
- Read our docs
49
- </a>
50
- </div>
51
- </main>
52
- <footer className="row-start-3 flex gap-6 flex-wrap items-center justify-center">
53
- <a
54
- className="flex items-center gap-2 hover:underline hover:underline-offset-4"
55
- href="https://nextjs.org/learn?utm_source=create-next-app&utm_medium=appdir-template-tw&utm_campaign=create-next-app"
56
- target="_blank"
57
- rel="noopener noreferrer"
58
- >
59
- <Image
60
- aria-hidden
61
- src="/file.svg"
62
- alt="File icon"
63
- width={16}
64
- height={16}
65
- />
66
- Learn
67
- </a>
68
- <a
69
- className="flex items-center gap-2 hover:underline hover:underline-offset-4"
70
- href="https://vercel.com/templates?framework=next.js&utm_source=create-next-app&utm_medium=appdir-template-tw&utm_campaign=create-next-app"
71
- target="_blank"
72
- rel="noopener noreferrer"
73
- >
74
- <Image
75
- aria-hidden
76
- src="/window.svg"
77
- alt="Window icon"
78
- width={16}
79
- height={16}
80
- />
81
- Examples
82
- </a>
83
- <a
84
- className="flex items-center gap-2 hover:underline hover:underline-offset-4"
85
- href="https://nextjs.org?utm_source=create-next-app&utm_medium=appdir-template-tw&utm_campaign=create-next-app"
86
- target="_blank"
87
- rel="noopener noreferrer"
88
- >
89
- <Image
90
- aria-hidden
91
- src="/globe.svg"
92
- alt="Globe icon"
93
- width={16}
94
- height={16}
95
- />
96
- Go to nextjs.org →
97
- </a>
98
- </footer>
99
- </div>
100
- );
101
  }
 
1
+ 'use client'
2
+
3
+ import { useState } from 'react'
4
+ import {
5
+ Container,
6
+ Paper,
7
+ Typography,
8
+ TextField,
9
+ Button,
10
+ Box,
11
+ Alert,
12
+ CircularProgress,
13
+ Chip,
14
+ Divider,
15
+ Stack
16
+ } from '@mui/material'
17
+ import MedicalInformationIcon from '@mui/icons-material/MedicalInformation'
18
+ import HealthAndSafetyIcon from '@mui/icons-material/HealthAndSafety'
19
+ import LocalHospitalIcon from '@mui/icons-material/LocalHospital'
20
+
21
+ const exampleSymptoms = [
22
+ 'Headache',
23
+ 'Fever',
24
+ 'Cough',
25
+ 'Fatigue',
26
+ 'Nausea'
27
+ ]
28
+
29
+ const exampleHistory = [
30
+ 'Hypertension',
31
+ 'Diabetes',
32
+ 'Asthma',
33
+ 'Allergies'
34
+ ]
35
 
36
  export default function Home() {
37
+ const [symptoms, setSymptoms] = useState('')
38
+ const [medicalHistory, setMedicalHistory] = useState('')
39
+ const [recommendation, setRecommendation] = useState('')
40
+ const [loading, setLoading] = useState(false)
41
+
42
+ const handleSubmit = async (e: React.FormEvent) => {
43
+ e.preventDefault()
44
+ setLoading(true)
45
+
46
+ try {
47
+ const response = await fetch('/api/recommend', {
48
+ method: 'POST',
49
+ headers: {
50
+ 'Content-Type': 'application/json',
51
+ },
52
+ body: JSON.stringify({ symptoms, medicalHistory }),
53
+ })
54
+
55
+ const data = await response.json()
56
+ setRecommendation(data.recommendation)
57
+ } catch (error) {
58
+ console.error('Failed to get recommendation:', error)
59
+ } finally {
60
+ setLoading(false)
61
+ }
62
+ }
63
+
64
+ const addExampleSymptom = (symptom: string) => {
65
+ setSymptoms(prev => prev ? `${prev}, ${symptom}` : symptom)
66
+ }
67
+
68
+ const addExampleHistory = (history: string) => {
69
+ setMedicalHistory(prev => prev ? `${prev}, ${history}` : history)
70
+ }
71
+
72
  return (
73
+ <Container maxWidth="md" sx={{ py: 4 }}>
74
+ <Paper elevation={3} sx={{ p: 4, borderRadius: 2 }}>
75
+ <Box display="flex" alignItems="center" gap={2} mb={4}>
76
+ <LocalHospitalIcon color="primary" sx={{ fontSize: 40 }} />
77
+ <Typography variant="h4" component="h1" fontWeight="bold">
78
+ AI Drug Recommendation System
79
+ </Typography>
80
+ </Box>
81
+
82
+ <Alert severity="info" sx={{ mb: 4 }}>
83
+ This is an AI-powered tool to assist healthcare professionals. All recommendations should be reviewed by a qualified medical practitioner.
84
+ </Alert>
85
+
86
+ <form onSubmit={handleSubmit}>
87
+ <Stack spacing={4}>
88
+ <Box>
89
+ <Typography variant="h6" display="flex" alignItems="center" gap={1} mb={2}>
90
+ <MedicalInformationIcon />
91
+ Symptoms
92
+ </Typography>
93
+ <TextField
94
+ fullWidth
95
+ multiline
96
+ rows={4}
97
+ value={symptoms}
98
+ onChange={(e) => setSymptoms(e.target.value)}
99
+ placeholder="Enter patient symptoms..."
100
+ required
101
+ />
102
+ <Box mt={2}>
103
+ <Typography variant="subtitle2" mb={1}>Example symptoms:</Typography>
104
+ <Stack direction="row" spacing={1} flexWrap="wrap" gap={1}>
105
+ {exampleSymptoms.map((symptom) => (
106
+ <Chip
107
+ key={symptom}
108
+ label={symptom}
109
+ onClick={() => addExampleSymptom(symptom)}
110
+ clickable
111
+ />
112
+ ))}
113
+ </Stack>
114
+ </Box>
115
+ </Box>
116
+
117
+ <Box>
118
+ <Typography variant="h6" display="flex" alignItems="center" gap={1} mb={2}>
119
+ <HealthAndSafetyIcon />
120
+ Medical History
121
+ </Typography>
122
+ <TextField
123
+ fullWidth
124
+ multiline
125
+ rows={4}
126
+ value={medicalHistory}
127
+ onChange={(e) => setMedicalHistory(e.target.value)}
128
+ placeholder="Enter patient medical history..."
129
+ required
130
+ />
131
+ <Box mt={2}>
132
+ <Typography variant="subtitle2" mb={1}>Example conditions:</Typography>
133
+ <Stack direction="row" spacing={1} flexWrap="wrap" gap={1}>
134
+ {exampleHistory.map((history) => (
135
+ <Chip
136
+ key={history}
137
+ label={history}
138
+ onClick={() => addExampleHistory(history)}
139
+ clickable
140
+ />
141
+ ))}
142
+ </Stack>
143
+ </Box>
144
+ </Box>
145
+
146
+ <Button
147
+ type="submit"
148
+ variant="contained"
149
+ size="large"
150
+ disabled={loading}
151
+ startIcon={loading ? <CircularProgress size={20} /> : null}
152
+ >
153
+ {loading ? 'Generating Recommendation...' : 'Get Recommendation'}
154
+ </Button>
155
+ </Stack>
156
+ </form>
157
 
158
+ {recommendation && (
159
+ <Box mt={4}>
160
+ <Divider sx={{ my: 4 }} />
161
+ <Typography variant="h6" gutterBottom>
162
+ Recommendation
163
+ </Typography>
164
+ <Paper variant="outlined" sx={{ p: 3, bgcolor: 'background.default' }}>
165
+ <Typography whiteSpace="pre-wrap">
166
+ {recommendation}
167
+ </Typography>
168
+ </Paper>
169
+ </Box>
170
+ )}
171
+ </Paper>
172
+ </Container>
173
+ )
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
174
  }