3v324v23 commited on
Commit
30f44e6
·
1 Parent(s): e8443fb
package-lock.json CHANGED
@@ -19,11 +19,14 @@
19
  "@types/node": "20.1.4",
20
  "@types/react": "18.2.6",
21
  "@types/react-dom": "18.2.4",
 
 
22
  "eslint": "8.40.0",
23
  "eslint-config-next": "13.4.2",
24
  "next": "13.4.2",
25
  "react": "18.2.0",
26
  "react-dom": "18.2.0",
 
27
  "typescript": "5.0.4"
28
  }
29
  },
@@ -1091,6 +1094,18 @@
1091
  "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0"
1092
  }
1093
  },
 
 
 
 
 
 
 
 
 
 
 
 
1094
  "node_modules/ajv": {
1095
  "version": "6.12.6",
1096
  "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz",
@@ -1230,6 +1245,12 @@
1230
  "resolved": "https://registry.npmjs.org/ast-types-flow/-/ast-types-flow-0.0.7.tgz",
1231
  "integrity": "sha512-eBvWn1lvIApYMhzQMsu9ciLfkBY499mFZlNqG+/9WR7PVlroQw0vG30cOQQbaKz3sCEc44TAOu2ykzqXSNnwag=="
1232
  },
 
 
 
 
 
 
1233
  "node_modules/available-typed-arrays": {
1234
  "version": "1.0.5",
1235
  "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz",
@@ -1249,6 +1270,17 @@
1249
  "node": ">=4"
1250
  }
1251
  },
 
 
 
 
 
 
 
 
 
 
 
1252
  "node_modules/axobject-query": {
1253
  "version": "3.1.1",
1254
  "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-3.1.1.tgz",
@@ -1284,6 +1316,12 @@
1284
  "node": ">=0.6"
1285
  }
1286
  },
 
 
 
 
 
 
1287
  "node_modules/bplist-parser": {
1288
  "version": "0.2.0",
1289
  "resolved": "https://registry.npmjs.org/bplist-parser/-/bplist-parser-0.2.0.tgz",
@@ -1399,6 +1437,48 @@
1399
  "url": "https://github.com/chalk/chalk?sponsor=1"
1400
  }
1401
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1402
  "node_modules/client-only": {
1403
  "version": "0.0.1",
1404
  "resolved": "https://registry.npmjs.org/client-only/-/client-only-0.0.1.tgz",
@@ -1428,6 +1508,18 @@
1428
  "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
1429
  "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
1430
  },
 
 
 
 
 
 
 
 
 
 
 
 
1431
  "node_modules/concat-map": {
1432
  "version": "0.0.1",
1433
  "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
@@ -1471,6 +1563,34 @@
1471
  "node": ">= 8"
1472
  }
1473
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1474
  "node_modules/csstype": {
1475
  "version": "3.1.2",
1476
  "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.2.tgz",
@@ -1588,6 +1708,15 @@
1588
  "url": "https://github.com/sponsors/ljharb"
1589
  }
1590
  },
 
 
 
 
 
 
 
 
 
1591
  "node_modules/dir-glob": {
1592
  "version": "3.0.1",
1593
  "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz",
@@ -1619,6 +1748,61 @@
1619
  "csstype": "^3.0.2"
1620
  }
1621
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1622
  "node_modules/duplexer2": {
1623
  "version": "0.1.4",
1624
  "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz",
@@ -1659,6 +1843,19 @@
1659
  "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz",
1660
  "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg=="
1661
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
1662
  "node_modules/enhanced-resolve": {
1663
  "version": "5.14.0",
1664
  "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.14.0.tgz",
@@ -1671,6 +1868,18 @@
1671
  "node": ">=10.13.0"
1672
  }
1673
  },
 
 
 
 
 
 
 
 
 
 
 
 
1674
  "node_modules/error-ex": {
1675
  "version": "1.3.2",
1676
  "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz",
@@ -2346,6 +2555,26 @@
2346
  "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz",
2347
  "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ=="
2348
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2349
  "node_modules/for-each": {
2350
  "version": "0.3.3",
2351
  "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz",
@@ -2354,6 +2583,20 @@
2354
  "is-callable": "^1.1.3"
2355
  }
2356
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2357
  "node_modules/fs.realpath": {
2358
  "version": "1.0.0",
2359
  "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
@@ -2631,6 +2874,25 @@
2631
  "html-tokenize": "bin/cmd.js"
2632
  }
2633
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2634
  "node_modules/human-signals": {
2635
  "version": "4.3.1",
2636
  "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-4.3.1.tgz",
@@ -2639,6 +2901,18 @@
2639
  "node": ">=14.18.0"
2640
  }
2641
  },
 
 
 
 
 
 
 
 
 
 
 
 
2642
  "node_modules/ignore": {
2643
  "version": "5.2.4",
2644
  "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz",
@@ -2697,6 +2971,19 @@
2697
  "node": ">= 0.4"
2698
  }
2699
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
2700
  "node_modules/is-arguments": {
2701
  "version": "1.1.1",
2702
  "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz",
@@ -3073,6 +3360,12 @@
3073
  "js-yaml": "bin/js-yaml.js"
3074
  }
3075
  },
 
 
 
 
 
 
3076
  "node_modules/json-parse-even-better-errors": {
3077
  "version": "2.3.1",
3078
  "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz",
@@ -3207,6 +3500,27 @@
3207
  "node": ">=8.6"
3208
  }
3209
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3210
  "node_modules/mimic-fn": {
3211
  "version": "4.0.0",
3212
  "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz",
@@ -3351,6 +3665,18 @@
3351
  "url": "https://github.com/sponsors/sindresorhus"
3352
  }
3353
  },
 
 
 
 
 
 
 
 
 
 
 
 
3354
  "node_modules/object-assign": {
3355
  "version": "4.1.1",
3356
  "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
@@ -3575,6 +3901,43 @@
3575
  "url": "https://github.com/sponsors/sindresorhus"
3576
  }
3577
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3578
  "node_modules/path-exists": {
3579
  "version": "4.0.0",
3580
  "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
@@ -3674,6 +4037,12 @@
3674
  "react-is": "^16.13.1"
3675
  }
3676
  },
 
 
 
 
 
 
3677
  "node_modules/punycode": {
3678
  "version": "2.3.0",
3679
  "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz",
@@ -3964,6 +4333,12 @@
3964
  "url": "https://github.com/sponsors/ljharb"
3965
  }
3966
  },
 
 
 
 
 
 
3967
  "node_modules/scheduler": {
3968
  "version": "0.23.0",
3969
  "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.0.tgz",
@@ -4031,6 +4406,44 @@
4031
  "node": ">=8"
4032
  }
4033
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4034
  "node_modules/source-map": {
4035
  "version": "0.5.7",
4036
  "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
@@ -4047,6 +4460,12 @@
4047
  "node": ">=0.10.0"
4048
  }
4049
  },
 
 
 
 
 
 
4050
  "node_modules/stop-iteration-iterator": {
4051
  "version": "1.0.0",
4052
  "resolved": "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.0.0.tgz",
@@ -4389,6 +4808,15 @@
4389
  "url": "https://github.com/sponsors/ljharb"
4390
  }
4391
  },
 
 
 
 
 
 
 
 
 
4392
  "node_modules/untildify": {
4393
  "version": "4.0.0",
4394
  "resolved": "https://registry.npmjs.org/untildify/-/untildify-4.0.0.tgz",
@@ -4410,6 +4838,27 @@
4410
  "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
4411
  "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw=="
4412
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4413
  "node_modules/which": {
4414
  "version": "2.0.2",
4415
  "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
 
19
  "@types/node": "20.1.4",
20
  "@types/react": "18.2.6",
21
  "@types/react-dom": "18.2.4",
22
+ "axios": "^1.7.7",
23
+ "cheerio": "^1.0.0",
24
  "eslint": "8.40.0",
25
  "eslint-config-next": "13.4.2",
26
  "next": "13.4.2",
27
  "react": "18.2.0",
28
  "react-dom": "18.2.0",
29
+ "socks-proxy-agent": "^8.0.4",
30
  "typescript": "5.0.4"
31
  }
32
  },
 
1094
  "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0"
1095
  }
1096
  },
1097
+ "node_modules/agent-base": {
1098
+ "version": "7.1.1",
1099
+ "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz",
1100
+ "integrity": "sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==",
1101
+ "license": "MIT",
1102
+ "dependencies": {
1103
+ "debug": "^4.3.4"
1104
+ },
1105
+ "engines": {
1106
+ "node": ">= 14"
1107
+ }
1108
+ },
1109
  "node_modules/ajv": {
1110
  "version": "6.12.6",
1111
  "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz",
 
1245
  "resolved": "https://registry.npmjs.org/ast-types-flow/-/ast-types-flow-0.0.7.tgz",
1246
  "integrity": "sha512-eBvWn1lvIApYMhzQMsu9ciLfkBY499mFZlNqG+/9WR7PVlroQw0vG30cOQQbaKz3sCEc44TAOu2ykzqXSNnwag=="
1247
  },
1248
+ "node_modules/asynckit": {
1249
+ "version": "0.4.0",
1250
+ "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
1251
+ "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==",
1252
+ "license": "MIT"
1253
+ },
1254
  "node_modules/available-typed-arrays": {
1255
  "version": "1.0.5",
1256
  "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz",
 
1270
  "node": ">=4"
1271
  }
1272
  },
1273
+ "node_modules/axios": {
1274
+ "version": "1.7.7",
1275
+ "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.7.tgz",
1276
+ "integrity": "sha512-S4kL7XrjgBmvdGut0sN3yJxqYzrDOnivkBiN0OFs6hLiUam3UPvswUo0kqGyhqUZGEOytHyumEdXsAkgCOUf3Q==",
1277
+ "license": "MIT",
1278
+ "dependencies": {
1279
+ "follow-redirects": "^1.15.6",
1280
+ "form-data": "^4.0.0",
1281
+ "proxy-from-env": "^1.1.0"
1282
+ }
1283
+ },
1284
  "node_modules/axobject-query": {
1285
  "version": "3.1.1",
1286
  "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-3.1.1.tgz",
 
1316
  "node": ">=0.6"
1317
  }
1318
  },
1319
+ "node_modules/boolbase": {
1320
+ "version": "1.0.0",
1321
+ "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz",
1322
+ "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==",
1323
+ "license": "ISC"
1324
+ },
1325
  "node_modules/bplist-parser": {
1326
  "version": "0.2.0",
1327
  "resolved": "https://registry.npmjs.org/bplist-parser/-/bplist-parser-0.2.0.tgz",
 
1437
  "url": "https://github.com/chalk/chalk?sponsor=1"
1438
  }
1439
  },
1440
+ "node_modules/cheerio": {
1441
+ "version": "1.0.0",
1442
+ "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0.tgz",
1443
+ "integrity": "sha512-quS9HgjQpdaXOvsZz82Oz7uxtXiy6UIsIQcpBj7HRw2M63Skasm9qlDocAM7jNuaxdhpPU7c4kJN+gA5MCu4ww==",
1444
+ "license": "MIT",
1445
+ "dependencies": {
1446
+ "cheerio-select": "^2.1.0",
1447
+ "dom-serializer": "^2.0.0",
1448
+ "domhandler": "^5.0.3",
1449
+ "domutils": "^3.1.0",
1450
+ "encoding-sniffer": "^0.2.0",
1451
+ "htmlparser2": "^9.1.0",
1452
+ "parse5": "^7.1.2",
1453
+ "parse5-htmlparser2-tree-adapter": "^7.0.0",
1454
+ "parse5-parser-stream": "^7.1.2",
1455
+ "undici": "^6.19.5",
1456
+ "whatwg-mimetype": "^4.0.0"
1457
+ },
1458
+ "engines": {
1459
+ "node": ">=18.17"
1460
+ },
1461
+ "funding": {
1462
+ "url": "https://github.com/cheeriojs/cheerio?sponsor=1"
1463
+ }
1464
+ },
1465
+ "node_modules/cheerio-select": {
1466
+ "version": "2.1.0",
1467
+ "resolved": "https://registry.npmjs.org/cheerio-select/-/cheerio-select-2.1.0.tgz",
1468
+ "integrity": "sha512-9v9kG0LvzrlcungtnJtpGNxY+fzECQKhK4EGJX2vByejiMX84MFNQw4UxPJl3bFbTMw+Dfs37XaIkCwTZfLh4g==",
1469
+ "license": "BSD-2-Clause",
1470
+ "dependencies": {
1471
+ "boolbase": "^1.0.0",
1472
+ "css-select": "^5.1.0",
1473
+ "css-what": "^6.1.0",
1474
+ "domelementtype": "^2.3.0",
1475
+ "domhandler": "^5.0.3",
1476
+ "domutils": "^3.0.1"
1477
+ },
1478
+ "funding": {
1479
+ "url": "https://github.com/sponsors/fb55"
1480
+ }
1481
+ },
1482
  "node_modules/client-only": {
1483
  "version": "0.0.1",
1484
  "resolved": "https://registry.npmjs.org/client-only/-/client-only-0.0.1.tgz",
 
1508
  "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
1509
  "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA=="
1510
  },
1511
+ "node_modules/combined-stream": {
1512
+ "version": "1.0.8",
1513
+ "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz",
1514
+ "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==",
1515
+ "license": "MIT",
1516
+ "dependencies": {
1517
+ "delayed-stream": "~1.0.0"
1518
+ },
1519
+ "engines": {
1520
+ "node": ">= 0.8"
1521
+ }
1522
+ },
1523
  "node_modules/concat-map": {
1524
  "version": "0.0.1",
1525
  "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
 
1563
  "node": ">= 8"
1564
  }
1565
  },
1566
+ "node_modules/css-select": {
1567
+ "version": "5.1.0",
1568
+ "resolved": "https://registry.npmjs.org/css-select/-/css-select-5.1.0.tgz",
1569
+ "integrity": "sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==",
1570
+ "license": "BSD-2-Clause",
1571
+ "dependencies": {
1572
+ "boolbase": "^1.0.0",
1573
+ "css-what": "^6.1.0",
1574
+ "domhandler": "^5.0.2",
1575
+ "domutils": "^3.0.1",
1576
+ "nth-check": "^2.0.1"
1577
+ },
1578
+ "funding": {
1579
+ "url": "https://github.com/sponsors/fb55"
1580
+ }
1581
+ },
1582
+ "node_modules/css-what": {
1583
+ "version": "6.1.0",
1584
+ "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz",
1585
+ "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==",
1586
+ "license": "BSD-2-Clause",
1587
+ "engines": {
1588
+ "node": ">= 6"
1589
+ },
1590
+ "funding": {
1591
+ "url": "https://github.com/sponsors/fb55"
1592
+ }
1593
+ },
1594
  "node_modules/csstype": {
1595
  "version": "3.1.2",
1596
  "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.2.tgz",
 
1708
  "url": "https://github.com/sponsors/ljharb"
1709
  }
1710
  },
1711
+ "node_modules/delayed-stream": {
1712
+ "version": "1.0.0",
1713
+ "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
1714
+ "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==",
1715
+ "license": "MIT",
1716
+ "engines": {
1717
+ "node": ">=0.4.0"
1718
+ }
1719
+ },
1720
  "node_modules/dir-glob": {
1721
  "version": "3.0.1",
1722
  "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz",
 
1748
  "csstype": "^3.0.2"
1749
  }
1750
  },
1751
+ "node_modules/dom-serializer": {
1752
+ "version": "2.0.0",
1753
+ "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz",
1754
+ "integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==",
1755
+ "license": "MIT",
1756
+ "dependencies": {
1757
+ "domelementtype": "^2.3.0",
1758
+ "domhandler": "^5.0.2",
1759
+ "entities": "^4.2.0"
1760
+ },
1761
+ "funding": {
1762
+ "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1"
1763
+ }
1764
+ },
1765
+ "node_modules/domelementtype": {
1766
+ "version": "2.3.0",
1767
+ "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz",
1768
+ "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==",
1769
+ "funding": [
1770
+ {
1771
+ "type": "github",
1772
+ "url": "https://github.com/sponsors/fb55"
1773
+ }
1774
+ ],
1775
+ "license": "BSD-2-Clause"
1776
+ },
1777
+ "node_modules/domhandler": {
1778
+ "version": "5.0.3",
1779
+ "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz",
1780
+ "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==",
1781
+ "license": "BSD-2-Clause",
1782
+ "dependencies": {
1783
+ "domelementtype": "^2.3.0"
1784
+ },
1785
+ "engines": {
1786
+ "node": ">= 4"
1787
+ },
1788
+ "funding": {
1789
+ "url": "https://github.com/fb55/domhandler?sponsor=1"
1790
+ }
1791
+ },
1792
+ "node_modules/domutils": {
1793
+ "version": "3.1.0",
1794
+ "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.1.0.tgz",
1795
+ "integrity": "sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA==",
1796
+ "license": "BSD-2-Clause",
1797
+ "dependencies": {
1798
+ "dom-serializer": "^2.0.0",
1799
+ "domelementtype": "^2.3.0",
1800
+ "domhandler": "^5.0.3"
1801
+ },
1802
+ "funding": {
1803
+ "url": "https://github.com/fb55/domutils?sponsor=1"
1804
+ }
1805
+ },
1806
  "node_modules/duplexer2": {
1807
  "version": "0.1.4",
1808
  "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz",
 
1843
  "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz",
1844
  "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg=="
1845
  },
1846
+ "node_modules/encoding-sniffer": {
1847
+ "version": "0.2.0",
1848
+ "resolved": "https://registry.npmjs.org/encoding-sniffer/-/encoding-sniffer-0.2.0.tgz",
1849
+ "integrity": "sha512-ju7Wq1kg04I3HtiYIOrUrdfdDvkyO9s5XM8QAj/bN61Yo/Vb4vgJxy5vi4Yxk01gWHbrofpPtpxM8bKger9jhg==",
1850
+ "license": "MIT",
1851
+ "dependencies": {
1852
+ "iconv-lite": "^0.6.3",
1853
+ "whatwg-encoding": "^3.1.1"
1854
+ },
1855
+ "funding": {
1856
+ "url": "https://github.com/fb55/encoding-sniffer?sponsor=1"
1857
+ }
1858
+ },
1859
  "node_modules/enhanced-resolve": {
1860
  "version": "5.14.0",
1861
  "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.14.0.tgz",
 
1868
  "node": ">=10.13.0"
1869
  }
1870
  },
1871
+ "node_modules/entities": {
1872
+ "version": "4.5.0",
1873
+ "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz",
1874
+ "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==",
1875
+ "license": "BSD-2-Clause",
1876
+ "engines": {
1877
+ "node": ">=0.12"
1878
+ },
1879
+ "funding": {
1880
+ "url": "https://github.com/fb55/entities?sponsor=1"
1881
+ }
1882
+ },
1883
  "node_modules/error-ex": {
1884
  "version": "1.3.2",
1885
  "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz",
 
2555
  "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz",
2556
  "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ=="
2557
  },
2558
+ "node_modules/follow-redirects": {
2559
+ "version": "1.15.6",
2560
+ "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.6.tgz",
2561
+ "integrity": "sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA==",
2562
+ "funding": [
2563
+ {
2564
+ "type": "individual",
2565
+ "url": "https://github.com/sponsors/RubenVerborgh"
2566
+ }
2567
+ ],
2568
+ "license": "MIT",
2569
+ "engines": {
2570
+ "node": ">=4.0"
2571
+ },
2572
+ "peerDependenciesMeta": {
2573
+ "debug": {
2574
+ "optional": true
2575
+ }
2576
+ }
2577
+ },
2578
  "node_modules/for-each": {
2579
  "version": "0.3.3",
2580
  "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz",
 
2583
  "is-callable": "^1.1.3"
2584
  }
2585
  },
2586
+ "node_modules/form-data": {
2587
+ "version": "4.0.0",
2588
+ "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz",
2589
+ "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==",
2590
+ "license": "MIT",
2591
+ "dependencies": {
2592
+ "asynckit": "^0.4.0",
2593
+ "combined-stream": "^1.0.8",
2594
+ "mime-types": "^2.1.12"
2595
+ },
2596
+ "engines": {
2597
+ "node": ">= 6"
2598
+ }
2599
+ },
2600
  "node_modules/fs.realpath": {
2601
  "version": "1.0.0",
2602
  "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
 
2874
  "html-tokenize": "bin/cmd.js"
2875
  }
2876
  },
2877
+ "node_modules/htmlparser2": {
2878
+ "version": "9.1.0",
2879
+ "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-9.1.0.tgz",
2880
+ "integrity": "sha512-5zfg6mHUoaer/97TxnGpxmbR7zJtPwIYFMZ/H5ucTlPZhKvtum05yiPK3Mgai3a0DyVxv7qYqoweaEd2nrYQzQ==",
2881
+ "funding": [
2882
+ "https://github.com/fb55/htmlparser2?sponsor=1",
2883
+ {
2884
+ "type": "github",
2885
+ "url": "https://github.com/sponsors/fb55"
2886
+ }
2887
+ ],
2888
+ "license": "MIT",
2889
+ "dependencies": {
2890
+ "domelementtype": "^2.3.0",
2891
+ "domhandler": "^5.0.3",
2892
+ "domutils": "^3.1.0",
2893
+ "entities": "^4.5.0"
2894
+ }
2895
+ },
2896
  "node_modules/human-signals": {
2897
  "version": "4.3.1",
2898
  "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-4.3.1.tgz",
 
2901
  "node": ">=14.18.0"
2902
  }
2903
  },
2904
+ "node_modules/iconv-lite": {
2905
+ "version": "0.6.3",
2906
+ "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz",
2907
+ "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==",
2908
+ "license": "MIT",
2909
+ "dependencies": {
2910
+ "safer-buffer": ">= 2.1.2 < 3.0.0"
2911
+ },
2912
+ "engines": {
2913
+ "node": ">=0.10.0"
2914
+ }
2915
+ },
2916
  "node_modules/ignore": {
2917
  "version": "5.2.4",
2918
  "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz",
 
2971
  "node": ">= 0.4"
2972
  }
2973
  },
2974
+ "node_modules/ip-address": {
2975
+ "version": "9.0.5",
2976
+ "resolved": "https://registry.npmjs.org/ip-address/-/ip-address-9.0.5.tgz",
2977
+ "integrity": "sha512-zHtQzGojZXTwZTHQqra+ETKd4Sn3vgi7uBmlPoXVWZqYvuKmtI0l/VZTjqGmJY9x88GGOaZ9+G9ES8hC4T4X8g==",
2978
+ "license": "MIT",
2979
+ "dependencies": {
2980
+ "jsbn": "1.1.0",
2981
+ "sprintf-js": "^1.1.3"
2982
+ },
2983
+ "engines": {
2984
+ "node": ">= 12"
2985
+ }
2986
+ },
2987
  "node_modules/is-arguments": {
2988
  "version": "1.1.1",
2989
  "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz",
 
3360
  "js-yaml": "bin/js-yaml.js"
3361
  }
3362
  },
3363
+ "node_modules/jsbn": {
3364
+ "version": "1.1.0",
3365
+ "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-1.1.0.tgz",
3366
+ "integrity": "sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A==",
3367
+ "license": "MIT"
3368
+ },
3369
  "node_modules/json-parse-even-better-errors": {
3370
  "version": "2.3.1",
3371
  "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz",
 
3500
  "node": ">=8.6"
3501
  }
3502
  },
3503
+ "node_modules/mime-db": {
3504
+ "version": "1.52.0",
3505
+ "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz",
3506
+ "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==",
3507
+ "license": "MIT",
3508
+ "engines": {
3509
+ "node": ">= 0.6"
3510
+ }
3511
+ },
3512
+ "node_modules/mime-types": {
3513
+ "version": "2.1.35",
3514
+ "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz",
3515
+ "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==",
3516
+ "license": "MIT",
3517
+ "dependencies": {
3518
+ "mime-db": "1.52.0"
3519
+ },
3520
+ "engines": {
3521
+ "node": ">= 0.6"
3522
+ }
3523
+ },
3524
  "node_modules/mimic-fn": {
3525
  "version": "4.0.0",
3526
  "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz",
 
3665
  "url": "https://github.com/sponsors/sindresorhus"
3666
  }
3667
  },
3668
+ "node_modules/nth-check": {
3669
+ "version": "2.1.1",
3670
+ "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz",
3671
+ "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==",
3672
+ "license": "BSD-2-Clause",
3673
+ "dependencies": {
3674
+ "boolbase": "^1.0.0"
3675
+ },
3676
+ "funding": {
3677
+ "url": "https://github.com/fb55/nth-check?sponsor=1"
3678
+ }
3679
+ },
3680
  "node_modules/object-assign": {
3681
  "version": "4.1.1",
3682
  "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
 
3901
  "url": "https://github.com/sponsors/sindresorhus"
3902
  }
3903
  },
3904
+ "node_modules/parse5": {
3905
+ "version": "7.1.2",
3906
+ "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.1.2.tgz",
3907
+ "integrity": "sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==",
3908
+ "license": "MIT",
3909
+ "dependencies": {
3910
+ "entities": "^4.4.0"
3911
+ },
3912
+ "funding": {
3913
+ "url": "https://github.com/inikulin/parse5?sponsor=1"
3914
+ }
3915
+ },
3916
+ "node_modules/parse5-htmlparser2-tree-adapter": {
3917
+ "version": "7.0.0",
3918
+ "resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-7.0.0.tgz",
3919
+ "integrity": "sha512-B77tOZrqqfUfnVcOrUvfdLbz4pu4RopLD/4vmu3HUPswwTA8OH0EMW9BlWR2B0RCoiZRAHEUu7IxeP1Pd1UU+g==",
3920
+ "license": "MIT",
3921
+ "dependencies": {
3922
+ "domhandler": "^5.0.2",
3923
+ "parse5": "^7.0.0"
3924
+ },
3925
+ "funding": {
3926
+ "url": "https://github.com/inikulin/parse5?sponsor=1"
3927
+ }
3928
+ },
3929
+ "node_modules/parse5-parser-stream": {
3930
+ "version": "7.1.2",
3931
+ "resolved": "https://registry.npmjs.org/parse5-parser-stream/-/parse5-parser-stream-7.1.2.tgz",
3932
+ "integrity": "sha512-JyeQc9iwFLn5TbvvqACIF/VXG6abODeB3Fwmv/TGdLk2LfbWkaySGY72at4+Ty7EkPZj854u4CrICqNk2qIbow==",
3933
+ "license": "MIT",
3934
+ "dependencies": {
3935
+ "parse5": "^7.0.0"
3936
+ },
3937
+ "funding": {
3938
+ "url": "https://github.com/inikulin/parse5?sponsor=1"
3939
+ }
3940
+ },
3941
  "node_modules/path-exists": {
3942
  "version": "4.0.0",
3943
  "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
 
4037
  "react-is": "^16.13.1"
4038
  }
4039
  },
4040
+ "node_modules/proxy-from-env": {
4041
+ "version": "1.1.0",
4042
+ "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz",
4043
+ "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==",
4044
+ "license": "MIT"
4045
+ },
4046
  "node_modules/punycode": {
4047
  "version": "2.3.0",
4048
  "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz",
 
4333
  "url": "https://github.com/sponsors/ljharb"
4334
  }
4335
  },
4336
+ "node_modules/safer-buffer": {
4337
+ "version": "2.1.2",
4338
+ "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
4339
+ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==",
4340
+ "license": "MIT"
4341
+ },
4342
  "node_modules/scheduler": {
4343
  "version": "0.23.0",
4344
  "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.0.tgz",
 
4406
  "node": ">=8"
4407
  }
4408
  },
4409
+ "node_modules/smart-buffer": {
4410
+ "version": "4.2.0",
4411
+ "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz",
4412
+ "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==",
4413
+ "license": "MIT",
4414
+ "engines": {
4415
+ "node": ">= 6.0.0",
4416
+ "npm": ">= 3.0.0"
4417
+ }
4418
+ },
4419
+ "node_modules/socks": {
4420
+ "version": "2.8.3",
4421
+ "resolved": "https://registry.npmjs.org/socks/-/socks-2.8.3.tgz",
4422
+ "integrity": "sha512-l5x7VUUWbjVFbafGLxPWkYsHIhEvmF85tbIeFZWc8ZPtoMyybuEhL7Jye/ooC4/d48FgOjSJXgsF/AJPYCW8Zw==",
4423
+ "license": "MIT",
4424
+ "dependencies": {
4425
+ "ip-address": "^9.0.5",
4426
+ "smart-buffer": "^4.2.0"
4427
+ },
4428
+ "engines": {
4429
+ "node": ">= 10.0.0",
4430
+ "npm": ">= 3.0.0"
4431
+ }
4432
+ },
4433
+ "node_modules/socks-proxy-agent": {
4434
+ "version": "8.0.4",
4435
+ "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-8.0.4.tgz",
4436
+ "integrity": "sha512-GNAq/eg8Udq2x0eNiFkr9gRg5bA7PXEWagQdeRX4cPSG+X/8V38v637gim9bjFptMk1QWsCTr0ttrJEiXbNnRw==",
4437
+ "license": "MIT",
4438
+ "dependencies": {
4439
+ "agent-base": "^7.1.1",
4440
+ "debug": "^4.3.4",
4441
+ "socks": "^2.8.3"
4442
+ },
4443
+ "engines": {
4444
+ "node": ">= 14"
4445
+ }
4446
+ },
4447
  "node_modules/source-map": {
4448
  "version": "0.5.7",
4449
  "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
 
4460
  "node": ">=0.10.0"
4461
  }
4462
  },
4463
+ "node_modules/sprintf-js": {
4464
+ "version": "1.1.3",
4465
+ "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.3.tgz",
4466
+ "integrity": "sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA==",
4467
+ "license": "BSD-3-Clause"
4468
+ },
4469
  "node_modules/stop-iteration-iterator": {
4470
  "version": "1.0.0",
4471
  "resolved": "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.0.0.tgz",
 
4808
  "url": "https://github.com/sponsors/ljharb"
4809
  }
4810
  },
4811
+ "node_modules/undici": {
4812
+ "version": "6.19.8",
4813
+ "resolved": "https://registry.npmjs.org/undici/-/undici-6.19.8.tgz",
4814
+ "integrity": "sha512-U8uCCl2x9TK3WANvmBavymRzxbfFYG+tAu+fgx3zxQy3qdagQqBLwJVrdyO1TBfUXvfKveMKJZhpvUYoOjM+4g==",
4815
+ "license": "MIT",
4816
+ "engines": {
4817
+ "node": ">=18.17"
4818
+ }
4819
+ },
4820
  "node_modules/untildify": {
4821
  "version": "4.0.0",
4822
  "resolved": "https://registry.npmjs.org/untildify/-/untildify-4.0.0.tgz",
 
4838
  "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
4839
  "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw=="
4840
  },
4841
+ "node_modules/whatwg-encoding": {
4842
+ "version": "3.1.1",
4843
+ "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-3.1.1.tgz",
4844
+ "integrity": "sha512-6qN4hJdMwfYBtE3YBTTHhoeuUrDBPZmbQaxWAqSALV/MeEnR5z1xd8UKud2RAkFoPkmB+hli1TZSnyi84xz1vQ==",
4845
+ "license": "MIT",
4846
+ "dependencies": {
4847
+ "iconv-lite": "0.6.3"
4848
+ },
4849
+ "engines": {
4850
+ "node": ">=18"
4851
+ }
4852
+ },
4853
+ "node_modules/whatwg-mimetype": {
4854
+ "version": "4.0.0",
4855
+ "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-4.0.0.tgz",
4856
+ "integrity": "sha512-QaKxh0eNIi2mE9p2vEdzfagOKHCcj1pJ56EEHGQOVxp8r9/iszLUUV7v89x9O1p/T+NlTM5W7jW6+cz4Fq1YVg==",
4857
+ "license": "MIT",
4858
+ "engines": {
4859
+ "node": ">=18"
4860
+ }
4861
+ },
4862
  "node_modules/which": {
4863
  "version": "2.0.2",
4864
  "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
package.json CHANGED
@@ -34,11 +34,14 @@
34
  "@types/node": "20.1.4",
35
  "@types/react": "18.2.6",
36
  "@types/react-dom": "18.2.4",
 
 
37
  "eslint": "8.40.0",
38
  "eslint-config-next": "13.4.2",
39
  "next": "13.4.2",
40
  "react": "18.2.0",
41
  "react-dom": "18.2.0",
 
42
  "typescript": "5.0.4"
43
  }
44
  }
 
34
  "@types/node": "20.1.4",
35
  "@types/react": "18.2.6",
36
  "@types/react-dom": "18.2.4",
37
+ "axios": "^1.7.7",
38
+ "cheerio": "^1.0.0",
39
  "eslint": "8.40.0",
40
  "eslint-config-next": "13.4.2",
41
  "next": "13.4.2",
42
  "react": "18.2.0",
43
  "react-dom": "18.2.0",
44
+ "socks-proxy-agent": "^8.0.4",
45
  "typescript": "5.0.4"
46
  }
47
  }
src/pages/api/get_file_list.ts CHANGED
@@ -1,10 +1,31 @@
1
  import process from "node:process";
2
  import { NextApiRequest, NextApiResponse } from "next";
3
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4
  export default async function handler(
5
  request: NextApiRequest,
6
  response: NextApiResponse
7
  ) {
8
-
9
- return response.status(200).json({ file_list: [123] });
 
 
10
  }
 
1
  import process from "node:process";
2
  import { NextApiRequest, NextApiResponse } from "next";
3
 
4
+ import cheerio from 'cheerio';
5
+ import axios from 'axios';
6
+ import { SocksProxyAgent } from 'socks-proxy-agent';
7
+ import { HFRes } from "@/types";
8
+
9
+ const socksProxyUrl = 'socks5h://localhost:9909';
10
+ const agent = new SocksProxyAgent(socksProxyUrl);
11
+
12
+ async function get_file_list(base: string, dir: string) {
13
+ const html = (
14
+ await axios.get(base + "/" + dir)
15
+ ).data;
16
+ const $ = cheerio.load(html);
17
+ const res = $("[data-target=ViewerIndexTreeList]").attr(
18
+ "data-props"
19
+ ) as string;
20
+ return JSON.parse(res) as HFRes;
21
+ }
22
+
23
  export default async function handler(
24
  request: NextApiRequest,
25
  response: NextApiResponse
26
  ) {
27
+ return response.status(200).json(await get_file_list(
28
+ 'https://huggingface.co/datasets/banned-historical-archives/wenhuibao_disk/tree/main',
29
+ '1'
30
+ ));
31
  }
src/pages/index.tsx CHANGED
@@ -3,14 +3,18 @@ import Container from "@mui/material/Container";
3
  import { Stack } from "@mui/material";
4
  import { DividerBox } from "@/components/base/boxes";
5
  import { useCallback, useEffect, useState } from "react";
 
 
6
 
7
  export default function Home() {
8
- const [data, setData] = useState(0)
 
 
9
  const update = useCallback(
10
-
11
  (async () => {
12
- const res= (await ((await fetch('/api/get_file_list')).json()))
13
- setData(res.file_list[0]);
 
14
  }), []
15
  )
16
  useEffect(() => {
@@ -26,8 +30,12 @@ export default function Home() {
26
 
27
  <Container component="main" sx={{ minHeight: "90vh" }}>
28
  <Stack spacing={4} useFlexGap>
29
- <button style={{color: 'red'}} onClick={update}>{data}</button>
30
-
 
 
 
 
31
  </Stack>
32
  </Container>
33
 
 
3
  import { Stack } from "@mui/material";
4
  import { DividerBox } from "@/components/base/boxes";
5
  import { useCallback, useEffect, useState } from "react";
6
+ import { HF_FileEntry, HFRes } from "@/types";
7
+ import { basename } from "path";
8
 
9
  export default function Home() {
10
+ const [repo, setRepo] = useState('https://huggingface.co/datasets/banned-historical-archives/wenhuibao_disk/tree/main');
11
+ const [entries, setEntries] = useState<HF_FileEntry[]>([])
12
+ const [next, setNext] = useState('')
13
  const update = useCallback(
 
14
  (async () => {
15
+ const res = (await ((await fetch('/api/get_file_list')).json())) as HFRes;
16
+ setEntries(res.entries);
17
+ setNext(res.nextURL!);
18
  }), []
19
  )
20
  useEffect(() => {
 
30
 
31
  <Container component="main" sx={{ minHeight: "90vh" }}>
32
  <Stack spacing={4} useFlexGap>
33
+ <input value={repo} onChange={e => setRepo(e.target.value)}/>
34
+ {entries.map(i => <div key={i.path}>
35
+ {basename(i.path)}
36
+ </div>)}
37
+ <button onClick={() => {
38
+ }}>more</button>
39
  </Stack>
40
  </Container>
41
 
src/types/index.ts ADDED
@@ -0,0 +1,62 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ export type HF_FileEntry = {
2
+ type: 'directory' | 'file',
3
+ oid: string,
4
+ size: number,
5
+ path: string,
6
+ lastCommit: any[]
7
+ security?: any[]
8
+ };
9
+
10
+ export type HFRes = {
11
+ context: {
12
+ rev: string,
13
+ path: string,
14
+ repo: {
15
+ _id: string,
16
+ gitalyUid: string,
17
+ type: string,
18
+ name: string,
19
+ config: any[],
20
+ updatedAt: string,
21
+ authorId: string,
22
+ creatorId: string
23
+ },
24
+ commit: {
25
+ id: string,
26
+ subject: string,
27
+ body: string,
28
+ author: string[],
29
+ committer: string[],
30
+ parentIds: string[],
31
+ bodySize: number,
32
+ signatureType: number,
33
+ treeId: string,
34
+ trailers: any[],
35
+ referencedBy: any[],
36
+ encoding: string,
37
+ }
38
+ },
39
+ entries: HF_FileEntry[],
40
+ nextURL?: string,
41
+ query: {},
42
+ objectInfo: {
43
+ author: string,
44
+ cardError: { errors: string[], warnings: string[] },
45
+ cardExists: true,
46
+ createdAt: string,
47
+ description: string
48
+ downloads: number,
49
+ downloadsAllTime: number,
50
+ id: string,
51
+ isLikedByUser: boolean,
52
+ isWatchedByUser: boolean,
53
+ lastModified: string,
54
+ likes: number,
55
+ discussionsDisabled: boolean,
56
+ repoType: string,
57
+ private: boolean,
58
+ gated: boolean,
59
+ tags: string[],
60
+ tag_objs: any[],
61
+ }
62
+ }