Update http request and move versions to core #483
304
package-lock.json
generated
304
package-lock.json
generated
@ -13,22 +13,19 @@
|
||||
"adm-zip": "^0.5.9",
|
||||
"cron": "^2.1.0",
|
||||
"got": "^12.5.2",
|
||||
"jsdom": "^20.0.2",
|
||||
"mongoose": "^6.7.1",
|
||||
"prismarine-nbt": "^2.2.1",
|
||||
"tar": "^6.1.12"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@types/adm-zip": "^0.5.0",
|
||||
"@types/cron": "^2.0.0",
|
||||
"@types/jsdom": "^20.0.0",
|
||||
"@types/mocha": "^10.0.0",
|
||||
"@types/node": "^18.11.9",
|
||||
"@types/tar": "^6.1.3",
|
||||
"mocha": "^10.1.0",
|
||||
"ts-node": "^10.9.1",
|
||||
"tsconfig-paths": "^4.1.0",
|
||||
"typedoc": "^0.23.19",
|
||||
"typedoc": "^0.23.20",
|
||||
"typescript": "^4.8.4"
|
||||
},
|
||||
"engines": {
|
||||
@ -135,17 +132,17 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@aws-sdk/client-cognito-identity": {
|
||||
"version": "3.202.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/client-cognito-identity/-/client-cognito-identity-3.202.0.tgz",
|
||||
"integrity": "sha512-PebtNMe214k8ueVtC12SaXHgtfdBpGsbxg81nkGddzesYLhqsBIKlcAyI+ZotrXU50NJ8+rEzxslNleLZ0NI+w==",
|
||||
"version": "3.204.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/client-cognito-identity/-/client-cognito-identity-3.204.0.tgz",
|
||||
"integrity": "sha512-uftJkNKYcZ8bXVwcpOn5ZUjUX0IRto0ZrTO8DBdS9b7PJu2Y84eSy46LsAYuRDC0PZreQxy8nOH5HmI86/W8xQ==",
|
||||
"optional": true,
|
||||
"dependencies": {
|
||||
"@aws-crypto/sha256-browser": "2.0.0",
|
||||
"@aws-crypto/sha256-js": "2.0.0",
|
||||
"@aws-sdk/client-sts": "3.202.0",
|
||||
"@aws-sdk/client-sts": "3.204.0",
|
||||
"@aws-sdk/config-resolver": "3.201.0",
|
||||
"@aws-sdk/credential-provider-node": "3.202.0",
|
||||
"@aws-sdk/fetch-http-handler": "3.201.0",
|
||||
"@aws-sdk/credential-provider-node": "3.204.0",
|
||||
"@aws-sdk/fetch-http-handler": "3.204.0",
|
||||
"@aws-sdk/hash-node": "3.201.0",
|
||||
"@aws-sdk/invalid-dependency": "3.201.0",
|
||||
"@aws-sdk/middleware-content-length": "3.201.0",
|
||||
@ -164,6 +161,7 @@
|
||||
"@aws-sdk/smithy-client": "3.201.0",
|
||||
"@aws-sdk/types": "3.201.0",
|
||||
"@aws-sdk/url-parser": "3.201.0",
|
||||
"@aws-sdk/util-base64": "3.202.0",
|
||||
"@aws-sdk/util-base64-browser": "3.188.0",
|
||||
"@aws-sdk/util-base64-node": "3.201.0",
|
||||
"@aws-sdk/util-body-length-browser": "3.188.0",
|
||||
@ -182,15 +180,15 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@aws-sdk/client-sso": {
|
||||
"version": "3.202.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.202.0.tgz",
|
||||
"integrity": "sha512-c0impiZUbJeB5AdyZyER81tsqF9bxxaEz6p2LYkTn62NWVXPWEUo/1CHQRj36MUzorz1xiWKIN0NPgK6GBJkPQ==",
|
||||
"version": "3.204.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.204.0.tgz",
|
||||
"integrity": "sha512-AECcNrcAQxV/Jlu8ogshRaYwt2jayx0omQJs/SXj70mWxmbk4MQnb+DqJIpPpOKBHaza/xlC2TKS1RzkiuZxyw==",
|
||||
"optional": true,
|
||||
"dependencies": {
|
||||
"@aws-crypto/sha256-browser": "2.0.0",
|
||||
"@aws-crypto/sha256-js": "2.0.0",
|
||||
"@aws-sdk/config-resolver": "3.201.0",
|
||||
"@aws-sdk/fetch-http-handler": "3.201.0",
|
||||
"@aws-sdk/fetch-http-handler": "3.204.0",
|
||||
"@aws-sdk/hash-node": "3.201.0",
|
||||
"@aws-sdk/invalid-dependency": "3.201.0",
|
||||
"@aws-sdk/middleware-content-length": "3.201.0",
|
||||
@ -208,6 +206,7 @@
|
||||
"@aws-sdk/smithy-client": "3.201.0",
|
||||
"@aws-sdk/types": "3.201.0",
|
||||
"@aws-sdk/url-parser": "3.201.0",
|
||||
"@aws-sdk/util-base64": "3.202.0",
|
||||
"@aws-sdk/util-base64-browser": "3.188.0",
|
||||
"@aws-sdk/util-base64-node": "3.201.0",
|
||||
"@aws-sdk/util-body-length-browser": "3.188.0",
|
||||
@ -226,16 +225,16 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@aws-sdk/client-sts": {
|
||||
"version": "3.202.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.202.0.tgz",
|
||||
"integrity": "sha512-WGRFzODig8+cZR903q3fa7OAzGigSuzD9AoK+ybefQa7bxSuhT2ous4GNPOJz9WYWvugEPyrJu8vbG35IoF1ZQ==",
|
||||
"version": "3.204.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.204.0.tgz",
|
||||
"integrity": "sha512-Tp6FqENRw31XK5r5hul1JXnQgHBhbbXhoMebyFih6/zjpATaqg0bnV6tpww4yPi3uc+yDGXKw2/tDroSsyTsRA==",
|
||||
"optional": true,
|
||||
"dependencies": {
|
||||
"@aws-crypto/sha256-browser": "2.0.0",
|
||||
"@aws-crypto/sha256-js": "2.0.0",
|
||||
"@aws-sdk/config-resolver": "3.201.0",
|
||||
"@aws-sdk/credential-provider-node": "3.202.0",
|
||||
"@aws-sdk/fetch-http-handler": "3.201.0",
|
||||
"@aws-sdk/credential-provider-node": "3.204.0",
|
||||
"@aws-sdk/fetch-http-handler": "3.204.0",
|
||||
"@aws-sdk/hash-node": "3.201.0",
|
||||
"@aws-sdk/invalid-dependency": "3.201.0",
|
||||
"@aws-sdk/middleware-content-length": "3.201.0",
|
||||
@ -255,6 +254,7 @@
|
||||
"@aws-sdk/smithy-client": "3.201.0",
|
||||
"@aws-sdk/types": "3.201.0",
|
||||
"@aws-sdk/url-parser": "3.201.0",
|
||||
"@aws-sdk/util-base64": "3.202.0",
|
||||
"@aws-sdk/util-base64-browser": "3.188.0",
|
||||
"@aws-sdk/util-base64-node": "3.201.0",
|
||||
"@aws-sdk/util-body-length-browser": "3.188.0",
|
||||
@ -290,12 +290,12 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@aws-sdk/credential-provider-cognito-identity": {
|
||||
"version": "3.202.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-cognito-identity/-/credential-provider-cognito-identity-3.202.0.tgz",
|
||||
"integrity": "sha512-W/Z4Zf05Yw5ya5SU1UO6xz/OZtxCzMMQmmb71eAHWsh/LIlJ9A3IFsAnAveG7eISTpFjMadT7n6mfsYt/eWgoQ==",
|
||||
"version": "3.204.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-cognito-identity/-/credential-provider-cognito-identity-3.204.0.tgz",
|
||||
"integrity": "sha512-DmiGXe7pXWuJiAGphzY5cRaphRiU5DJ6Tcg/88Td3wnj22As5DCELetb7E2YC9DfwmKiWcGAKQaYQqWe5AzSqw==",
|
||||
"optional": true,
|
||||
"dependencies": {
|
||||
"@aws-sdk/client-cognito-identity": "3.202.0",
|
||||
"@aws-sdk/client-cognito-identity": "3.204.0",
|
||||
"@aws-sdk/property-provider": "3.201.0",
|
||||
"@aws-sdk/types": "3.201.0",
|
||||
"tslib": "^2.3.1"
|
||||
@ -335,14 +335,14 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@aws-sdk/credential-provider-ini": {
|
||||
"version": "3.202.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.202.0.tgz",
|
||||
"integrity": "sha512-d0kiYMpGzAq3EBXgEJ1SdeoMXVf3lk6NKHDi/Gy8LB03sZqgc5cY4XFCnY3cqE3DNWWZNR26M4j/KiA0LIjAVA==",
|
||||
"version": "3.204.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.204.0.tgz",
|
||||
"integrity": "sha512-ddtaS0ya5lgZZwfuJ/FuniroreLJ6yDgPAasol/rla9U5EU0qUEK1+6PX463exghUGjYfTqxdrKXhGYZfuEoIw==",
|
||||
"optional": true,
|
||||
"dependencies": {
|
||||
"@aws-sdk/credential-provider-env": "3.201.0",
|
||||
"@aws-sdk/credential-provider-imds": "3.201.0",
|
||||
"@aws-sdk/credential-provider-sso": "3.202.0",
|
||||
"@aws-sdk/credential-provider-sso": "3.204.0",
|
||||
"@aws-sdk/credential-provider-web-identity": "3.201.0",
|
||||
"@aws-sdk/property-provider": "3.201.0",
|
||||
"@aws-sdk/shared-ini-file-loader": "3.201.0",
|
||||
@ -354,16 +354,16 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@aws-sdk/credential-provider-node": {
|
||||
"version": "3.202.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.202.0.tgz",
|
||||
"integrity": "sha512-/uHNs3c1O3oFpH7z9nnpjyg8NKNyRbNxUDIHkuHkNSUUKXpfBisDX6TMbD4VcflGuNdkbT+8spkw5vsE8ox3ig==",
|
||||
"version": "3.204.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.204.0.tgz",
|
||||
"integrity": "sha512-kGbR5JE90zBGDS4cIz7tlUklMMeOm5oc5ES74YStLUacpQKwzVcHmDG8aT2DCONS/wEYysOIs5LygHurOJ/+Ww==",
|
||||
"optional": true,
|
||||
"dependencies": {
|
||||
"@aws-sdk/credential-provider-env": "3.201.0",
|
||||
"@aws-sdk/credential-provider-imds": "3.201.0",
|
||||
"@aws-sdk/credential-provider-ini": "3.202.0",
|
||||
"@aws-sdk/credential-provider-ini": "3.204.0",
|
||||
"@aws-sdk/credential-provider-process": "3.201.0",
|
||||
"@aws-sdk/credential-provider-sso": "3.202.0",
|
||||
"@aws-sdk/credential-provider-sso": "3.204.0",
|
||||
"@aws-sdk/credential-provider-web-identity": "3.201.0",
|
||||
"@aws-sdk/property-provider": "3.201.0",
|
||||
"@aws-sdk/shared-ini-file-loader": "3.201.0",
|
||||
@ -390,12 +390,12 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@aws-sdk/credential-provider-sso": {
|
||||
"version": "3.202.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.202.0.tgz",
|
||||
"integrity": "sha512-EBUY/qKboJwy3qxPHiD/LAnhzga4xR1p++QMoxg2BKgkgwlvGb23lYGr5DSCNhdtJj5o165YZDbGYH+PKn2NVw==",
|
||||
"version": "3.204.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.204.0.tgz",
|
||||
"integrity": "sha512-iS884Gda99x4zmdCK3XxFcceve4wB+wudpeTUm2wwX9AGrSzoUnLWqNXv/R8UAMAsKANaWMBkqv/bsHpsEitZw==",
|
||||
"optional": true,
|
||||
"dependencies": {
|
||||
"@aws-sdk/client-sso": "3.202.0",
|
||||
"@aws-sdk/client-sso": "3.204.0",
|
||||
"@aws-sdk/property-provider": "3.201.0",
|
||||
"@aws-sdk/shared-ini-file-loader": "3.201.0",
|
||||
"@aws-sdk/types": "3.201.0",
|
||||
@ -420,21 +420,21 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@aws-sdk/credential-providers": {
|
||||
"version": "3.202.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-providers/-/credential-providers-3.202.0.tgz",
|
||||
"integrity": "sha512-CQVSlKh+V4X3tWv+6IJFB8Io89bwErQSP6m7pGynrwH37dr0jg04A5WQQt+l8tRX8NSteVYrAyxebefLnWMTyA==",
|
||||
"version": "3.204.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-providers/-/credential-providers-3.204.0.tgz",
|
||||
"integrity": "sha512-XlVfSWoXAiuQb5Q053McnmqSvllojKAc8ecQiLgLXstXXcHrI36E4XH7VkMaNV8JPPdLQhmLxrj01vzUyoT47Q==",
|
||||
"optional": true,
|
||||
"dependencies": {
|
||||
"@aws-sdk/client-cognito-identity": "3.202.0",
|
||||
"@aws-sdk/client-sso": "3.202.0",
|
||||
"@aws-sdk/client-sts": "3.202.0",
|
||||
"@aws-sdk/credential-provider-cognito-identity": "3.202.0",
|
||||
"@aws-sdk/client-cognito-identity": "3.204.0",
|
||||
"@aws-sdk/client-sso": "3.204.0",
|
||||
"@aws-sdk/client-sts": "3.204.0",
|
||||
"@aws-sdk/credential-provider-cognito-identity": "3.204.0",
|
||||
"@aws-sdk/credential-provider-env": "3.201.0",
|
||||
"@aws-sdk/credential-provider-imds": "3.201.0",
|
||||
"@aws-sdk/credential-provider-ini": "3.202.0",
|
||||
"@aws-sdk/credential-provider-node": "3.202.0",
|
||||
"@aws-sdk/credential-provider-ini": "3.204.0",
|
||||
"@aws-sdk/credential-provider-node": "3.204.0",
|
||||
"@aws-sdk/credential-provider-process": "3.201.0",
|
||||
"@aws-sdk/credential-provider-sso": "3.202.0",
|
||||
"@aws-sdk/credential-provider-sso": "3.204.0",
|
||||
"@aws-sdk/credential-provider-web-identity": "3.201.0",
|
||||
"@aws-sdk/property-provider": "3.201.0",
|
||||
"@aws-sdk/shared-ini-file-loader": "3.201.0",
|
||||
@ -446,15 +446,15 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@aws-sdk/fetch-http-handler": {
|
||||
"version": "3.201.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/fetch-http-handler/-/fetch-http-handler-3.201.0.tgz",
|
||||
"integrity": "sha512-uiEoH79j6WOpbp4THcpvD9XmD+vPgy+00oyYXjtZqJnv2PM/9b6tGWKTdI+TJW4P/oPv7HP7JmRlkGaTnkIdXw==",
|
||||
"version": "3.204.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/fetch-http-handler/-/fetch-http-handler-3.204.0.tgz",
|
||||
"integrity": "sha512-TfIhWYQ4CTjrD+FSuBcKMSVrqq8GCwqCfUyalWmSKo4JIFhN5OxUnOFb1/ecE/TJX+YgZ65w4qhVJVHHmh229Q==",
|
||||
"optional": true,
|
||||
"dependencies": {
|
||||
"@aws-sdk/protocol-http": "3.201.0",
|
||||
"@aws-sdk/querystring-builder": "3.201.0",
|
||||
"@aws-sdk/types": "3.201.0",
|
||||
"@aws-sdk/util-base64-browser": "3.188.0",
|
||||
"@aws-sdk/util-base64": "3.202.0",
|
||||
"tslib": "^2.3.1"
|
||||
}
|
||||
},
|
||||
@ -815,6 +815,19 @@
|
||||
"tslib": "^2.3.1"
|
||||
}
|
||||
},
|
||||
"node_modules/@aws-sdk/util-base64": {
|
||||
"version": "3.202.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/util-base64/-/util-base64-3.202.0.tgz",
|
||||
"integrity": "sha512-0QlvxCSU2CITeR/x87zls9ma+CkN3EXRGM3M5XnHWaneDI9K+O2uPpAbDfLh0SBJyO0AfIMn7Vh/BvnNNPEDpg==",
|
||||
"optional": true,
|
||||
"dependencies": {
|
||||
"@aws-sdk/util-buffer-from": "3.201.0",
|
||||
"tslib": "^2.3.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=14.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/@aws-sdk/util-base64-browser": {
|
||||
"version": "3.188.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/util-base64-browser/-/util-base64-browser-3.188.0.tgz",
|
||||
@ -1163,21 +1176,10 @@
|
||||
"resolved": "https://registry.npmjs.org/@types/http-cache-semantics/-/http-cache-semantics-4.0.1.tgz",
|
||||
"integrity": "sha512-SZs7ekbP8CN0txVG2xVRH6EgKmEm31BOxA07vkFaETzZz1xh+cbt8BcI0slpymvwhx5dlFnQG2rTlPVQn+iRPQ=="
|
||||
},
|
||||
"node_modules/@types/jsdom": {
|
||||
"version": "20.0.0",
|
||||
"resolved": "https://registry.npmjs.org/@types/jsdom/-/jsdom-20.0.0.tgz",
|
||||
"integrity": "sha512-YfAchFs0yM1QPDrLm2VHe+WHGtqms3NXnXAMolrgrVP6fgBHHXy1ozAbo/dFtPNtZC/m66bPiCTWYmqp1F14gA==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"@types/node": "*",
|
||||
"@types/tough-cookie": "*",
|
||||
"parse5": "^7.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/@types/luxon": {
|
||||
"version": "3.0.2",
|
||||
"resolved": "https://registry.npmjs.org/@types/luxon/-/luxon-3.0.2.tgz",
|
||||
"integrity": "sha512-HM2OVWckUMmXbWYZufmWT2XMURGDZ6XbyNyQ+Lx+gCFGFqbZaIjsz7b+AGeGP/AuVYHBiuGY+wXfweP1RremnA==",
|
||||
"version": "3.1.0",
|
||||
"resolved": "https://registry.npmjs.org/@types/luxon/-/luxon-3.1.0.tgz",
|
||||
"integrity": "sha512-gCd/HcCgjqSxfMrgtqxCgYk/22NBQfypwFUG7ZAyG/4pqs51WLTcUzVp1hqTbieDYeHS3WoVEh2Yv/2l+7B0Vg==",
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/@types/mocha": {
|
||||
@ -1201,12 +1203,6 @@
|
||||
"minipass": "^3.3.5"
|
||||
}
|
||||
},
|
||||
"node_modules/@types/tough-cookie": {
|
||||
"version": "4.0.2",
|
||||
"resolved": "https://registry.npmjs.org/@types/tough-cookie/-/tough-cookie-4.0.2.tgz",
|
||||
"integrity": "sha512-Q5vtl1W5ue16D+nIaW8JWebSSraJVlK+EthKn7e7UcD4KWsaSJ8BqGPXNaPghgtcn/fhvrN17Tv8ksUsQpiplw==",
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/@types/webidl-conversions": {
|
||||
"version": "7.0.0",
|
||||
"resolved": "https://registry.npmjs.org/@types/webidl-conversions/-/webidl-conversions-7.0.0.tgz",
|
||||
@ -2799,9 +2795,9 @@
|
||||
"dev": true
|
||||
},
|
||||
"node_modules/marked": {
|
||||
"version": "4.2.1",
|
||||
"resolved": "https://registry.npmjs.org/marked/-/marked-4.2.1.tgz",
|
||||
"integrity": "sha512-VK1/jNtwqDLvPktNpL0Fdg3qoeUZhmRsuiIjPEy/lHwXW4ouLoZfO4XoWd4ClDt+hupV1VLpkZhEovjU0W/kqA==",
|
||||
"version": "4.2.2",
|
||||
"resolved": "https://registry.npmjs.org/marked/-/marked-4.2.2.tgz",
|
||||
"integrity": "sha512-JjBTFTAvuTgANXx82a5vzK9JLSMoV6V3LBVn4Uhdso6t7vXrGx7g1Cd2r6NYSsxrYbQGFCMqBDhFHyK5q2UvcQ==",
|
||||
"dev": true,
|
||||
"bin": {
|
||||
"marked": "bin/marked.js"
|
||||
@ -3918,9 +3914,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/typedoc": {
|
||||
"version": "0.23.19",
|
||||
"resolved": "https://registry.npmjs.org/typedoc/-/typedoc-0.23.19.tgz",
|
||||
"integrity": "sha512-70jPL0GQnSJtgQqI7ifOWxpTXrB3sxc4SWPPRn3K0wdx3txI6ZIT/ZYMF39dNg2Gjmql45cO+cAKXJp0TpqOVA==",
|
||||
"version": "0.23.20",
|
||||
"resolved": "https://registry.npmjs.org/typedoc/-/typedoc-0.23.20.tgz",
|
||||
"integrity": "sha512-nfb4Mx05ZZZXux3zPcLuc7+3TVePDW3jTdEBqXdQzJUyEILxoprgPIiTChbvci9crkqNJG9YESmfCptuh9Gn3g==",
|
||||
"dev": true,
|
||||
"dependencies": {
|
||||
"lunr": "^2.3.9",
|
||||
@ -4196,9 +4192,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/yargs": {
|
||||
"version": "17.6.1",
|
||||
"resolved": "https://registry.npmjs.org/yargs/-/yargs-17.6.1.tgz",
|
||||
"integrity": "sha512-leBuCGrL4dAd6ispNOGsJlhd0uZ6Qehkbu/B9KCR+Pxa/NVdNwi+i31lo0buCm6XxhJQFshXCD0/evfV4xfoUg==",
|
||||
"version": "17.6.2",
|
||||
"resolved": "https://registry.npmjs.org/yargs/-/yargs-17.6.2.tgz",
|
||||
"integrity": "sha512-1/9UrdHjDZc0eOU0HxOHoS78C69UD3JRMvzlJ7S79S2nTaWRA/whGCTV8o9e/N/1Va9YIV7Q4sOxD8VV4pCWOw==",
|
||||
"dependencies": {
|
||||
"cliui": "^8.0.1",
|
||||
"escalade": "^3.1.1",
|
||||
@ -4206,7 +4202,7 @@
|
||||
"require-directory": "^2.1.1",
|
||||
"string-width": "^4.2.3",
|
||||
"y18n": "^5.0.5",
|
||||
"yargs-parser": "^21.0.0"
|
||||
"yargs-parser": "^21.1.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=12"
|
||||
@ -4374,17 +4370,17 @@
|
||||
}
|
||||
},
|
||||
"@aws-sdk/client-cognito-identity": {
|
||||
"version": "3.202.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/client-cognito-identity/-/client-cognito-identity-3.202.0.tgz",
|
||||
"integrity": "sha512-PebtNMe214k8ueVtC12SaXHgtfdBpGsbxg81nkGddzesYLhqsBIKlcAyI+ZotrXU50NJ8+rEzxslNleLZ0NI+w==",
|
||||
"version": "3.204.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/client-cognito-identity/-/client-cognito-identity-3.204.0.tgz",
|
||||
"integrity": "sha512-uftJkNKYcZ8bXVwcpOn5ZUjUX0IRto0ZrTO8DBdS9b7PJu2Y84eSy46LsAYuRDC0PZreQxy8nOH5HmI86/W8xQ==",
|
||||
"optional": true,
|
||||
"requires": {
|
||||
"@aws-crypto/sha256-browser": "2.0.0",
|
||||
"@aws-crypto/sha256-js": "2.0.0",
|
||||
"@aws-sdk/client-sts": "3.202.0",
|
||||
"@aws-sdk/client-sts": "3.204.0",
|
||||
"@aws-sdk/config-resolver": "3.201.0",
|
||||
"@aws-sdk/credential-provider-node": "3.202.0",
|
||||
"@aws-sdk/fetch-http-handler": "3.201.0",
|
||||
"@aws-sdk/credential-provider-node": "3.204.0",
|
||||
"@aws-sdk/fetch-http-handler": "3.204.0",
|
||||
"@aws-sdk/hash-node": "3.201.0",
|
||||
"@aws-sdk/invalid-dependency": "3.201.0",
|
||||
"@aws-sdk/middleware-content-length": "3.201.0",
|
||||
@ -4403,6 +4399,7 @@
|
||||
"@aws-sdk/smithy-client": "3.201.0",
|
||||
"@aws-sdk/types": "3.201.0",
|
||||
"@aws-sdk/url-parser": "3.201.0",
|
||||
"@aws-sdk/util-base64": "3.202.0",
|
||||
"@aws-sdk/util-base64-browser": "3.188.0",
|
||||
"@aws-sdk/util-base64-node": "3.201.0",
|
||||
"@aws-sdk/util-body-length-browser": "3.188.0",
|
||||
@ -4418,15 +4415,15 @@
|
||||
}
|
||||
},
|
||||
"@aws-sdk/client-sso": {
|
||||
"version": "3.202.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.202.0.tgz",
|
||||
"integrity": "sha512-c0impiZUbJeB5AdyZyER81tsqF9bxxaEz6p2LYkTn62NWVXPWEUo/1CHQRj36MUzorz1xiWKIN0NPgK6GBJkPQ==",
|
||||
"version": "3.204.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.204.0.tgz",
|
||||
"integrity": "sha512-AECcNrcAQxV/Jlu8ogshRaYwt2jayx0omQJs/SXj70mWxmbk4MQnb+DqJIpPpOKBHaza/xlC2TKS1RzkiuZxyw==",
|
||||
"optional": true,
|
||||
"requires": {
|
||||
"@aws-crypto/sha256-browser": "2.0.0",
|
||||
"@aws-crypto/sha256-js": "2.0.0",
|
||||
"@aws-sdk/config-resolver": "3.201.0",
|
||||
"@aws-sdk/fetch-http-handler": "3.201.0",
|
||||
"@aws-sdk/fetch-http-handler": "3.204.0",
|
||||
"@aws-sdk/hash-node": "3.201.0",
|
||||
"@aws-sdk/invalid-dependency": "3.201.0",
|
||||
"@aws-sdk/middleware-content-length": "3.201.0",
|
||||
@ -4444,6 +4441,7 @@
|
||||
"@aws-sdk/smithy-client": "3.201.0",
|
||||
"@aws-sdk/types": "3.201.0",
|
||||
"@aws-sdk/url-parser": "3.201.0",
|
||||
"@aws-sdk/util-base64": "3.202.0",
|
||||
"@aws-sdk/util-base64-browser": "3.188.0",
|
||||
"@aws-sdk/util-base64-node": "3.201.0",
|
||||
"@aws-sdk/util-body-length-browser": "3.188.0",
|
||||
@ -4459,16 +4457,16 @@
|
||||
}
|
||||
},
|
||||
"@aws-sdk/client-sts": {
|
||||
"version": "3.202.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.202.0.tgz",
|
||||
"integrity": "sha512-WGRFzODig8+cZR903q3fa7OAzGigSuzD9AoK+ybefQa7bxSuhT2ous4GNPOJz9WYWvugEPyrJu8vbG35IoF1ZQ==",
|
||||
"version": "3.204.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.204.0.tgz",
|
||||
"integrity": "sha512-Tp6FqENRw31XK5r5hul1JXnQgHBhbbXhoMebyFih6/zjpATaqg0bnV6tpww4yPi3uc+yDGXKw2/tDroSsyTsRA==",
|
||||
"optional": true,
|
||||
"requires": {
|
||||
"@aws-crypto/sha256-browser": "2.0.0",
|
||||
"@aws-crypto/sha256-js": "2.0.0",
|
||||
"@aws-sdk/config-resolver": "3.201.0",
|
||||
"@aws-sdk/credential-provider-node": "3.202.0",
|
||||
"@aws-sdk/fetch-http-handler": "3.201.0",
|
||||
"@aws-sdk/credential-provider-node": "3.204.0",
|
||||
"@aws-sdk/fetch-http-handler": "3.204.0",
|
||||
"@aws-sdk/hash-node": "3.201.0",
|
||||
"@aws-sdk/invalid-dependency": "3.201.0",
|
||||
"@aws-sdk/middleware-content-length": "3.201.0",
|
||||
@ -4488,6 +4486,7 @@
|
||||
"@aws-sdk/smithy-client": "3.201.0",
|
||||
"@aws-sdk/types": "3.201.0",
|
||||
"@aws-sdk/url-parser": "3.201.0",
|
||||
"@aws-sdk/util-base64": "3.202.0",
|
||||
"@aws-sdk/util-base64-browser": "3.188.0",
|
||||
"@aws-sdk/util-base64-node": "3.201.0",
|
||||
"@aws-sdk/util-body-length-browser": "3.188.0",
|
||||
@ -4517,12 +4516,12 @@
|
||||
}
|
||||
},
|
||||
"@aws-sdk/credential-provider-cognito-identity": {
|
||||
"version": "3.202.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-cognito-identity/-/credential-provider-cognito-identity-3.202.0.tgz",
|
||||
"integrity": "sha512-W/Z4Zf05Yw5ya5SU1UO6xz/OZtxCzMMQmmb71eAHWsh/LIlJ9A3IFsAnAveG7eISTpFjMadT7n6mfsYt/eWgoQ==",
|
||||
"version": "3.204.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-cognito-identity/-/credential-provider-cognito-identity-3.204.0.tgz",
|
||||
"integrity": "sha512-DmiGXe7pXWuJiAGphzY5cRaphRiU5DJ6Tcg/88Td3wnj22As5DCELetb7E2YC9DfwmKiWcGAKQaYQqWe5AzSqw==",
|
||||
"optional": true,
|
||||
"requires": {
|
||||
"@aws-sdk/client-cognito-identity": "3.202.0",
|
||||
"@aws-sdk/client-cognito-identity": "3.204.0",
|
||||
"@aws-sdk/property-provider": "3.201.0",
|
||||
"@aws-sdk/types": "3.201.0",
|
||||
"tslib": "^2.3.1"
|
||||
@ -4553,14 +4552,14 @@
|
||||
}
|
||||
},
|
||||
"@aws-sdk/credential-provider-ini": {
|
||||
"version": "3.202.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.202.0.tgz",
|
||||
"integrity": "sha512-d0kiYMpGzAq3EBXgEJ1SdeoMXVf3lk6NKHDi/Gy8LB03sZqgc5cY4XFCnY3cqE3DNWWZNR26M4j/KiA0LIjAVA==",
|
||||
"version": "3.204.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.204.0.tgz",
|
||||
"integrity": "sha512-ddtaS0ya5lgZZwfuJ/FuniroreLJ6yDgPAasol/rla9U5EU0qUEK1+6PX463exghUGjYfTqxdrKXhGYZfuEoIw==",
|
||||
"optional": true,
|
||||
"requires": {
|
||||
"@aws-sdk/credential-provider-env": "3.201.0",
|
||||
"@aws-sdk/credential-provider-imds": "3.201.0",
|
||||
"@aws-sdk/credential-provider-sso": "3.202.0",
|
||||
"@aws-sdk/credential-provider-sso": "3.204.0",
|
||||
"@aws-sdk/credential-provider-web-identity": "3.201.0",
|
||||
"@aws-sdk/property-provider": "3.201.0",
|
||||
"@aws-sdk/shared-ini-file-loader": "3.201.0",
|
||||
@ -4569,16 +4568,16 @@
|
||||
}
|
||||
},
|
||||
"@aws-sdk/credential-provider-node": {
|
||||
"version": "3.202.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.202.0.tgz",
|
||||
"integrity": "sha512-/uHNs3c1O3oFpH7z9nnpjyg8NKNyRbNxUDIHkuHkNSUUKXpfBisDX6TMbD4VcflGuNdkbT+8spkw5vsE8ox3ig==",
|
||||
"version": "3.204.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.204.0.tgz",
|
||||
"integrity": "sha512-kGbR5JE90zBGDS4cIz7tlUklMMeOm5oc5ES74YStLUacpQKwzVcHmDG8aT2DCONS/wEYysOIs5LygHurOJ/+Ww==",
|
||||
"optional": true,
|
||||
"requires": {
|
||||
"@aws-sdk/credential-provider-env": "3.201.0",
|
||||
"@aws-sdk/credential-provider-imds": "3.201.0",
|
||||
"@aws-sdk/credential-provider-ini": "3.202.0",
|
||||
"@aws-sdk/credential-provider-ini": "3.204.0",
|
||||
"@aws-sdk/credential-provider-process": "3.201.0",
|
||||
"@aws-sdk/credential-provider-sso": "3.202.0",
|
||||
"@aws-sdk/credential-provider-sso": "3.204.0",
|
||||
"@aws-sdk/credential-provider-web-identity": "3.201.0",
|
||||
"@aws-sdk/property-provider": "3.201.0",
|
||||
"@aws-sdk/shared-ini-file-loader": "3.201.0",
|
||||
@ -4599,12 +4598,12 @@
|
||||
}
|
||||
},
|
||||
"@aws-sdk/credential-provider-sso": {
|
||||
"version": "3.202.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.202.0.tgz",
|
||||
"integrity": "sha512-EBUY/qKboJwy3qxPHiD/LAnhzga4xR1p++QMoxg2BKgkgwlvGb23lYGr5DSCNhdtJj5o165YZDbGYH+PKn2NVw==",
|
||||
"version": "3.204.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.204.0.tgz",
|
||||
"integrity": "sha512-iS884Gda99x4zmdCK3XxFcceve4wB+wudpeTUm2wwX9AGrSzoUnLWqNXv/R8UAMAsKANaWMBkqv/bsHpsEitZw==",
|
||||
"optional": true,
|
||||
"requires": {
|
||||
"@aws-sdk/client-sso": "3.202.0",
|
||||
"@aws-sdk/client-sso": "3.204.0",
|
||||
"@aws-sdk/property-provider": "3.201.0",
|
||||
"@aws-sdk/shared-ini-file-loader": "3.201.0",
|
||||
"@aws-sdk/types": "3.201.0",
|
||||
@ -4623,21 +4622,21 @@
|
||||
}
|
||||
},
|
||||
"@aws-sdk/credential-providers": {
|
||||
"version": "3.202.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-providers/-/credential-providers-3.202.0.tgz",
|
||||
"integrity": "sha512-CQVSlKh+V4X3tWv+6IJFB8Io89bwErQSP6m7pGynrwH37dr0jg04A5WQQt+l8tRX8NSteVYrAyxebefLnWMTyA==",
|
||||
"version": "3.204.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-providers/-/credential-providers-3.204.0.tgz",
|
||||
"integrity": "sha512-XlVfSWoXAiuQb5Q053McnmqSvllojKAc8ecQiLgLXstXXcHrI36E4XH7VkMaNV8JPPdLQhmLxrj01vzUyoT47Q==",
|
||||
"optional": true,
|
||||
"requires": {
|
||||
"@aws-sdk/client-cognito-identity": "3.202.0",
|
||||
"@aws-sdk/client-sso": "3.202.0",
|
||||
"@aws-sdk/client-sts": "3.202.0",
|
||||
"@aws-sdk/credential-provider-cognito-identity": "3.202.0",
|
||||
"@aws-sdk/client-cognito-identity": "3.204.0",
|
||||
"@aws-sdk/client-sso": "3.204.0",
|
||||
"@aws-sdk/client-sts": "3.204.0",
|
||||
"@aws-sdk/credential-provider-cognito-identity": "3.204.0",
|
||||
"@aws-sdk/credential-provider-env": "3.201.0",
|
||||
"@aws-sdk/credential-provider-imds": "3.201.0",
|
||||
"@aws-sdk/credential-provider-ini": "3.202.0",
|
||||
"@aws-sdk/credential-provider-node": "3.202.0",
|
||||
"@aws-sdk/credential-provider-ini": "3.204.0",
|
||||
"@aws-sdk/credential-provider-node": "3.204.0",
|
||||
"@aws-sdk/credential-provider-process": "3.201.0",
|
||||
"@aws-sdk/credential-provider-sso": "3.202.0",
|
||||
"@aws-sdk/credential-provider-sso": "3.204.0",
|
||||
"@aws-sdk/credential-provider-web-identity": "3.201.0",
|
||||
"@aws-sdk/property-provider": "3.201.0",
|
||||
"@aws-sdk/shared-ini-file-loader": "3.201.0",
|
||||
@ -4646,15 +4645,15 @@
|
||||
}
|
||||
},
|
||||
"@aws-sdk/fetch-http-handler": {
|
||||
"version": "3.201.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/fetch-http-handler/-/fetch-http-handler-3.201.0.tgz",
|
||||
"integrity": "sha512-uiEoH79j6WOpbp4THcpvD9XmD+vPgy+00oyYXjtZqJnv2PM/9b6tGWKTdI+TJW4P/oPv7HP7JmRlkGaTnkIdXw==",
|
||||
"version": "3.204.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/fetch-http-handler/-/fetch-http-handler-3.204.0.tgz",
|
||||
"integrity": "sha512-TfIhWYQ4CTjrD+FSuBcKMSVrqq8GCwqCfUyalWmSKo4JIFhN5OxUnOFb1/ecE/TJX+YgZ65w4qhVJVHHmh229Q==",
|
||||
"optional": true,
|
||||
"requires": {
|
||||
"@aws-sdk/protocol-http": "3.201.0",
|
||||
"@aws-sdk/querystring-builder": "3.201.0",
|
||||
"@aws-sdk/types": "3.201.0",
|
||||
"@aws-sdk/util-base64-browser": "3.188.0",
|
||||
"@aws-sdk/util-base64": "3.202.0",
|
||||
"tslib": "^2.3.1"
|
||||
}
|
||||
},
|
||||
@ -4943,6 +4942,16 @@
|
||||
"tslib": "^2.3.1"
|
||||
}
|
||||
},
|
||||
"@aws-sdk/util-base64": {
|
||||
"version": "3.202.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/util-base64/-/util-base64-3.202.0.tgz",
|
||||
"integrity": "sha512-0QlvxCSU2CITeR/x87zls9ma+CkN3EXRGM3M5XnHWaneDI9K+O2uPpAbDfLh0SBJyO0AfIMn7Vh/BvnNNPEDpg==",
|
||||
"optional": true,
|
||||
"requires": {
|
||||
"@aws-sdk/util-buffer-from": "3.201.0",
|
||||
"tslib": "^2.3.1"
|
||||
}
|
||||
},
|
||||
"@aws-sdk/util-base64-browser": {
|
||||
"version": "3.188.0",
|
||||
"resolved": "https://registry.npmjs.org/@aws-sdk/util-base64-browser/-/util-base64-browser-3.188.0.tgz",
|
||||
@ -5223,21 +5232,10 @@
|
||||
"resolved": "https://registry.npmjs.org/@types/http-cache-semantics/-/http-cache-semantics-4.0.1.tgz",
|
||||
"integrity": "sha512-SZs7ekbP8CN0txVG2xVRH6EgKmEm31BOxA07vkFaETzZz1xh+cbt8BcI0slpymvwhx5dlFnQG2rTlPVQn+iRPQ=="
|
||||
},
|
||||
"@types/jsdom": {
|
||||
"version": "20.0.0",
|
||||
"resolved": "https://registry.npmjs.org/@types/jsdom/-/jsdom-20.0.0.tgz",
|
||||
"integrity": "sha512-YfAchFs0yM1QPDrLm2VHe+WHGtqms3NXnXAMolrgrVP6fgBHHXy1ozAbo/dFtPNtZC/m66bPiCTWYmqp1F14gA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@types/node": "*",
|
||||
"@types/tough-cookie": "*",
|
||||
"parse5": "^7.0.0"
|
||||
}
|
||||
},
|
||||
"@types/luxon": {
|
||||
"version": "3.0.2",
|
||||
"resolved": "https://registry.npmjs.org/@types/luxon/-/luxon-3.0.2.tgz",
|
||||
"integrity": "sha512-HM2OVWckUMmXbWYZufmWT2XMURGDZ6XbyNyQ+Lx+gCFGFqbZaIjsz7b+AGeGP/AuVYHBiuGY+wXfweP1RremnA==",
|
||||
"version": "3.1.0",
|
||||
"resolved": "https://registry.npmjs.org/@types/luxon/-/luxon-3.1.0.tgz",
|
||||
"integrity": "sha512-gCd/HcCgjqSxfMrgtqxCgYk/22NBQfypwFUG7ZAyG/4pqs51WLTcUzVp1hqTbieDYeHS3WoVEh2Yv/2l+7B0Vg==",
|
||||
"dev": true
|
||||
},
|
||||
"@types/mocha": {
|
||||
@ -5261,12 +5259,6 @@
|
||||
"minipass": "^3.3.5"
|
||||
}
|
||||
},
|
||||
"@types/tough-cookie": {
|
||||
"version": "4.0.2",
|
||||
"resolved": "https://registry.npmjs.org/@types/tough-cookie/-/tough-cookie-4.0.2.tgz",
|
||||
"integrity": "sha512-Q5vtl1W5ue16D+nIaW8JWebSSraJVlK+EthKn7e7UcD4KWsaSJ8BqGPXNaPghgtcn/fhvrN17Tv8ksUsQpiplw==",
|
||||
"dev": true
|
||||
},
|
||||
"@types/webidl-conversions": {
|
||||
"version": "7.0.0",
|
||||
"resolved": "https://registry.npmjs.org/@types/webidl-conversions/-/webidl-conversions-7.0.0.tgz",
|
||||
@ -6411,9 +6403,9 @@
|
||||
"dev": true
|
||||
},
|
||||
"marked": {
|
||||
"version": "4.2.1",
|
||||
"resolved": "https://registry.npmjs.org/marked/-/marked-4.2.1.tgz",
|
||||
"integrity": "sha512-VK1/jNtwqDLvPktNpL0Fdg3qoeUZhmRsuiIjPEy/lHwXW4ouLoZfO4XoWd4ClDt+hupV1VLpkZhEovjU0W/kqA==",
|
||||
"version": "4.2.2",
|
||||
"resolved": "https://registry.npmjs.org/marked/-/marked-4.2.2.tgz",
|
||||
"integrity": "sha512-JjBTFTAvuTgANXx82a5vzK9JLSMoV6V3LBVn4Uhdso6t7vXrGx7g1Cd2r6NYSsxrYbQGFCMqBDhFHyK5q2UvcQ==",
|
||||
"dev": true
|
||||
},
|
||||
"media-typer": {
|
||||
@ -7222,9 +7214,9 @@
|
||||
}
|
||||
},
|
||||
"typedoc": {
|
||||
"version": "0.23.19",
|
||||
"resolved": "https://registry.npmjs.org/typedoc/-/typedoc-0.23.19.tgz",
|
||||
"integrity": "sha512-70jPL0GQnSJtgQqI7ifOWxpTXrB3sxc4SWPPRn3K0wdx3txI6ZIT/ZYMF39dNg2Gjmql45cO+cAKXJp0TpqOVA==",
|
||||
"version": "0.23.20",
|
||||
"resolved": "https://registry.npmjs.org/typedoc/-/typedoc-0.23.20.tgz",
|
||||
"integrity": "sha512-nfb4Mx05ZZZXux3zPcLuc7+3TVePDW3jTdEBqXdQzJUyEILxoprgPIiTChbvci9crkqNJG9YESmfCptuh9Gn3g==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"lunr": "^2.3.9",
|
||||
@ -7420,9 +7412,9 @@
|
||||
"integrity": "sha512-AacA8nRULjKMX2DvWvOAdBZMOfQlypSFkjcOcu9FalllIDJ1kvlREzcdIZmidQUqqeMv7jorHjq2HlLv/+c2lg=="
|
||||
},
|
||||
"yargs": {
|
||||
"version": "17.6.1",
|
||||
"resolved": "https://registry.npmjs.org/yargs/-/yargs-17.6.1.tgz",
|
||||
"integrity": "sha512-leBuCGrL4dAd6ispNOGsJlhd0uZ6Qehkbu/B9KCR+Pxa/NVdNwi+i31lo0buCm6XxhJQFshXCD0/evfV4xfoUg==",
|
||||
"version": "17.6.2",
|
||||
"resolved": "https://registry.npmjs.org/yargs/-/yargs-17.6.2.tgz",
|
||||
"integrity": "sha512-1/9UrdHjDZc0eOU0HxOHoS78C69UD3JRMvzlJ7S79S2nTaWRA/whGCTV8o9e/N/1Va9YIV7Q4sOxD8VV4pCWOw==",
|
||||
"requires": {
|
||||
"cliui": "^8.0.1",
|
||||
"escalade": "^3.1.1",
|
||||
@ -7430,7 +7422,7 @@
|
||||
"require-directory": "^2.1.1",
|
||||
"string-width": "^4.2.3",
|
||||
"y18n": "^5.0.5",
|
||||
"yargs-parser": "^21.0.0"
|
||||
"yargs-parser": "^21.1.1"
|
||||
},
|
||||
"dependencies": {
|
||||
"yargs-parser": {
|
||||
|
@ -36,22 +36,19 @@
|
||||
"adm-zip": "^0.5.9",
|
||||
"cron": "^2.1.0",
|
||||
"got": "^12.5.2",
|
||||
"jsdom": "^20.0.2",
|
||||
"mongoose": "^6.7.1",
|
||||
"prismarine-nbt": "^2.2.1",
|
||||
"tar": "^6.1.12"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@types/adm-zip": "^0.5.0",
|
||||
"@types/cron": "^2.0.0",
|
||||
"@types/jsdom": "^20.0.0",
|
||||
"@types/mocha": "^10.0.0",
|
||||
"@types/node": "^18.11.9",
|
||||
"@types/tar": "^6.1.3",
|
||||
"mocha": "^10.1.0",
|
||||
"ts-node": "^10.9.1",
|
||||
"tsconfig-paths": "^4.1.0",
|
||||
"typedoc": "^0.23.19",
|
||||
"typedoc": "^0.23.20",
|
||||
"typescript": "^4.8.4"
|
||||
}
|
||||
}
|
||||
|
10
src/index.ts
10
src/index.ts
@ -3,6 +3,7 @@ import * as httpSimples from "@http/simples";
|
||||
import * as httpLarge from "@http/large";
|
||||
import * as httpGithub from "@http/github";
|
||||
import * as httpClient from "@http/client";
|
||||
const httpRequest = {httpSimples, httpLarge, httpGithub, httpClient};
|
||||
|
||||
// Utils
|
||||
import * as platformPathManeger from "./platformPathManeger"
|
||||
@ -20,7 +21,7 @@ import * as Spigot from "./spigot";
|
||||
import * as Powernukkit from "./pwnuukit";
|
||||
import * as PaperMC from "./paper";
|
||||
|
||||
export {platformPathManeger, globalPlatfroms, pluginManeger, export_import, PocketmineMP, pluginHooks, Powernukkit, PaperMC, Bedrock, Spigot, proxy, Java};
|
||||
export {platformPathManeger, globalPlatfroms, pluginManeger, export_import, httpRequest, PocketmineMP, pluginHooks, Powernukkit, PaperMC, Bedrock, Spigot, proxy, Java};
|
||||
export default {
|
||||
Bedrock,
|
||||
Java,
|
||||
@ -35,11 +36,6 @@ export default {
|
||||
pluginHooks,
|
||||
export_import,
|
||||
proxy,
|
||||
httpRequest: {
|
||||
httpSimples,
|
||||
httpLarge,
|
||||
httpGithub,
|
||||
httpClient
|
||||
}
|
||||
httpRequest
|
||||
}
|
||||
};
|
||||
|
@ -1,27 +0,0 @@
|
||||
import mongoose from "mongoose";
|
||||
import connection from "./connect";
|
||||
|
||||
export type bedrockSchema = {
|
||||
version: string,
|
||||
date: Date,
|
||||
latest: boolean,
|
||||
url: {
|
||||
win32: string,
|
||||
linux: string
|
||||
}
|
||||
};
|
||||
|
||||
export const bedrock = connection.model<bedrockSchema>("bedrock", new mongoose.Schema<bedrockSchema>({
|
||||
version: {
|
||||
type: String,
|
||||
required: true,
|
||||
unique: true
|
||||
},
|
||||
date: Date,
|
||||
latest: Boolean,
|
||||
url: {
|
||||
win32: String,
|
||||
linux: String
|
||||
}
|
||||
}));
|
||||
|
@ -1,8 +0,0 @@
|
||||
import mongoose from "mongoose";
|
||||
export let authUsername = (!!process.env.MONGO_USER)?process.env.MONGO_USER:"public";
|
||||
export let authPassword = (!!process.env.MONGO_PASSWORD)?process.env.MONGO_PASSWORD:"n0v8IBKEI920sfy8";
|
||||
export const mongoURL = process.env.BDSVERSIONDB||`mongodb+srv://${authUsername}:${authPassword}@versionstorage.qgh8v.mongodb.net/v2_versions`;
|
||||
|
||||
// Connect to MongoDB
|
||||
export const connection = mongoose.createConnection(mongoURL);
|
||||
export default connection;
|
@ -1,22 +0,0 @@
|
||||
import mongoose from "mongoose";
|
||||
import connection from "./connect";
|
||||
|
||||
export type javaSchema = {
|
||||
version: string,
|
||||
date: Date,
|
||||
latest: boolean,
|
||||
url: string
|
||||
};
|
||||
|
||||
export const java = connection.model<javaSchema>("java", new mongoose.Schema<javaSchema>({
|
||||
version: {
|
||||
type: String,
|
||||
required: true,
|
||||
unique: true
|
||||
},
|
||||
date: Date,
|
||||
latest: Boolean,
|
||||
url: String
|
||||
}));
|
||||
export default java;
|
||||
|
@ -1,19 +0,0 @@
|
||||
import mongoose from "mongoose";
|
||||
import connection from "./connect";
|
||||
|
||||
export type paperSchema = {
|
||||
version: string,
|
||||
build: number,
|
||||
date: Date,
|
||||
latest: boolean,
|
||||
url: string
|
||||
};
|
||||
|
||||
export const paper = connection.model<paperSchema>("paper", new mongoose.Schema<paperSchema>({
|
||||
version: String,
|
||||
build: Number,
|
||||
date: Date,
|
||||
latest: Boolean,
|
||||
url: String
|
||||
}));
|
||||
|
@ -1,21 +0,0 @@
|
||||
import mongoose from "mongoose";
|
||||
import connection from "./connect";
|
||||
|
||||
export type pocketminemmpSchema = {
|
||||
version: string,
|
||||
date: Date,
|
||||
latest: boolean,
|
||||
url: string
|
||||
};
|
||||
|
||||
export const pocketmine = connection.model<pocketminemmpSchema>("pocketminemmp", new mongoose.Schema<pocketminemmpSchema>({
|
||||
version: {
|
||||
type: String,
|
||||
required: true,
|
||||
unique: true
|
||||
},
|
||||
date: Date,
|
||||
latest: Boolean,
|
||||
url: String
|
||||
}));
|
||||
|
@ -1,24 +0,0 @@
|
||||
import mongoose from "mongoose";
|
||||
import connection from "./connect";
|
||||
|
||||
export type powernukkitSchema = {
|
||||
version: string,
|
||||
mcpeVersion: string,
|
||||
date: Date,
|
||||
latest: boolean,
|
||||
url: string,
|
||||
variantType: "stable"|"snapshot"
|
||||
};
|
||||
|
||||
export const powernukkit = connection.model<powernukkitSchema>("powernukkit", new mongoose.Schema<powernukkitSchema>({
|
||||
version: {
|
||||
type: String,
|
||||
unique: false,
|
||||
required: true
|
||||
},
|
||||
mcpeVersion: String,
|
||||
date: Date,
|
||||
url: String,
|
||||
variantType: String,
|
||||
latest: Boolean
|
||||
}));
|
@ -1,21 +0,0 @@
|
||||
import mongoose from "mongoose";
|
||||
import connection from "./connect";
|
||||
|
||||
// Type to represent the spigot model
|
||||
export type spigotSchema = {
|
||||
version: string,
|
||||
date: Date,
|
||||
latest: boolean,
|
||||
url: string
|
||||
};
|
||||
|
||||
export const spigot = connection.model<spigotSchema>("spigot", new mongoose.Schema<spigotSchema>({
|
||||
version: {
|
||||
type: String,
|
||||
required: true,
|
||||
unique: true
|
||||
},
|
||||
date: Date,
|
||||
latest: Boolean,
|
||||
url: String
|
||||
}));
|
@ -1,76 +0,0 @@
|
||||
import fsOld from "node:fs";
|
||||
import path from "node:path";
|
||||
import fs from "node:fs/promises";
|
||||
import { findVersion as getVersions, bedrock, java, paper, pocketmine, powernukkit, spigot } from "./index";
|
||||
|
||||
const rootVersions = path.join(process.cwd(), "versions");
|
||||
const Bedrock = path.join(rootVersions, "bedrock");
|
||||
const Pocketmine = path.join(rootVersions, "pocketmine");
|
||||
const Powernukkit = path.join(rootVersions, "powernukkit");
|
||||
const Java = path.join(rootVersions, "java");
|
||||
const Spigot = path.join(rootVersions, "spigot");
|
||||
const Paper = path.join(rootVersions, "paper");
|
||||
|
||||
(async function(){
|
||||
if (!fsOld.existsSync(rootVersions)) await fs.mkdir(rootVersions, {recursive: true});
|
||||
if (!fsOld.existsSync(Bedrock)) await fs.mkdir(Bedrock, {recursive: true});
|
||||
if (!fsOld.existsSync(Pocketmine)) await fs.mkdir(Pocketmine, {recursive: true});
|
||||
if (!fsOld.existsSync(Powernukkit)) await fs.mkdir(Powernukkit, {recursive: true});
|
||||
if (!fsOld.existsSync(Java)) await fs.mkdir(Java, {recursive: true});
|
||||
if (!fsOld.existsSync(Spigot)) await fs.mkdir(Spigot, {recursive: true});
|
||||
if (!fsOld.existsSync(Paper)) await fs.mkdir(Paper, {recursive: true});
|
||||
|
||||
const bedrockData = await getVersions<bedrock[]>("bedrock", "all", true);
|
||||
fs.writeFile(path.join(Bedrock, "latest.json"), JSON.stringify(bedrockData.find(release => release.latest), null, 2));
|
||||
fs.writeFile(path.join(Bedrock, "all.json"), JSON.stringify(bedrockData, null, 2));
|
||||
await Promise.all(bedrockData.map(async releases => {
|
||||
const version = path.join(Bedrock, `${releases.version}.json`);
|
||||
await fs.writeFile(version, JSON.stringify(releases, null, 2));
|
||||
await fs.utimes(version, new Date(releases.date), new Date(releases.date));
|
||||
}));
|
||||
|
||||
const PocketmineData = await getVersions<pocketmine[]>("pocketmine", "all", true);
|
||||
fs.writeFile(path.join(Pocketmine, "latest.json"), JSON.stringify(PocketmineData.find(release => release.latest), null, 2));
|
||||
fs.writeFile(path.join(Pocketmine, "all.json"), JSON.stringify(PocketmineData, null, 2));
|
||||
await Promise.all(PocketmineData.map(async releases => {
|
||||
const version = path.join(Pocketmine, `${releases.version}.json`);
|
||||
await fs.writeFile(version, JSON.stringify(releases, null, 2));
|
||||
await fs.utimes(version, new Date(releases.date), new Date(releases.date));
|
||||
}));
|
||||
|
||||
const PowernukkitData = await getVersions<powernukkit[]>("powernukkit", "all", true);
|
||||
fs.writeFile(path.join(Powernukkit, "latest.json"), JSON.stringify(PowernukkitData.find(release => release.latest), null, 2));
|
||||
fs.writeFile(path.join(Powernukkit, "all.json"), JSON.stringify(PowernukkitData, null, 2));
|
||||
await Promise.all(PowernukkitData.map(async releases => {
|
||||
const version = path.join(Powernukkit, `${releases.version}.json`);
|
||||
await fs.writeFile(version, JSON.stringify(releases, null, 2));
|
||||
await fs.utimes(version, new Date(releases.date), new Date(releases.date));
|
||||
}));
|
||||
|
||||
const JavaData = await getVersions<java[]>("java", "all", true);
|
||||
fs.writeFile(path.join(Java, "latest.json"), JSON.stringify(JavaData.find(release => release.latest), null, 2));
|
||||
fs.writeFile(path.join(Java, "all.json"), JSON.stringify(JavaData, null, 2));
|
||||
await Promise.all(JavaData.map(async releases => {
|
||||
const version = path.join(Java, `${releases.version}.json`);
|
||||
await fs.writeFile(version, JSON.stringify(releases, null, 2));
|
||||
await fs.utimes(version, new Date(releases.date), new Date(releases.date));
|
||||
}));
|
||||
|
||||
const SpigotData = await getVersions<spigot[]>("spigot", "all", true);
|
||||
fs.writeFile(path.join(Spigot, "latest.json"), JSON.stringify(SpigotData.find(release => release.latest), null, 2));
|
||||
fs.writeFile(path.join(Spigot, "all.json"), JSON.stringify(SpigotData, null, 2));
|
||||
await Promise.all(SpigotData.map(async releases => {
|
||||
const version = path.join(Spigot, `${releases.version}.json`);
|
||||
await fs.writeFile(version, JSON.stringify(releases, null, 2));
|
||||
await fs.utimes(version, new Date(releases.date), new Date(releases.date));
|
||||
}));
|
||||
|
||||
const PaperData = await getVersions<paper[]>("paper", "all", true);
|
||||
fs.writeFile(path.join(Paper, "latest.json"), JSON.stringify(PaperData.find(release => release.latest), null, 2));
|
||||
fs.writeFile(path.join(Paper, "all.json"), JSON.stringify(PaperData, null, 2));
|
||||
await Promise.all(PaperData.map(async releases => {
|
||||
const version = path.join(Paper, `${releases.version}_${releases.build}.json`);
|
||||
await fs.writeFile(version, JSON.stringify(releases, null, 2));
|
||||
await fs.utimes(version, new Date(releases.date), new Date(releases.date));
|
||||
}));
|
||||
})();
|
@ -1,42 +0,0 @@
|
||||
import adm_zip from "adm-zip";
|
||||
import { bufferFetch, urls } from "@http/simples";
|
||||
import { bedrock, bedrockSchema } from "../db/bedrock";
|
||||
|
||||
export default async function UpdateDatabase() {
|
||||
const minecraftUrls = (await urls("https://minecraft.net/en-us/download/server/bedrock")).filter(Link => /bin-.*\.zip/.test(Link));
|
||||
const objURLs: {linux: string, win32: string} = {linux: undefined, win32: undefined};
|
||||
minecraftUrls.forEach((url: string) => {
|
||||
if (/darwin|macos|mac/.test(url)) console.log("Macos Are now supported: %s", url);
|
||||
else if (/win/.test(url)) objURLs.win32 = url;
|
||||
else if (/linux/.test(url)) objURLs.linux = url;
|
||||
});
|
||||
const anyZip = objURLs.win32||objURLs.linux;
|
||||
if (!anyZip) throw new Error("cannot get url");
|
||||
const [, mcpeVersion] = anyZip.match(/\/[a-zA-Z-_]+([0-9\.]+).zip$/)||[];
|
||||
const mcpeDate = await new Promise<Date>(async resolve => {
|
||||
const zip = new adm_zip((await bufferFetch(objURLs.linux)).data);
|
||||
for (const entry of zip.getEntries()) {
|
||||
if (entry.entryName === "bedrock_server") return resolve(entry.header.time);
|
||||
};
|
||||
return resolve(new Date());
|
||||
});
|
||||
if (!mcpeVersion) return;
|
||||
const version: bedrockSchema = {
|
||||
version: mcpeVersion,
|
||||
date: mcpeDate,
|
||||
latest: false,
|
||||
url: {
|
||||
linux: objURLs.linux,
|
||||
win32: objURLs.win32
|
||||
}
|
||||
};
|
||||
if (await bedrock.findOne({version: version.version}).lean()) {
|
||||
console.log("Bedrock version %s are exists", version.version);
|
||||
return;
|
||||
}
|
||||
await bedrock.create(version);
|
||||
console.log("Bedrock adding new version %s", version.version);
|
||||
await bedrock.findOneAndUpdate({latest: true}, {$set: {latest: false}});
|
||||
const latest = (await bedrock.find().lean()).sort((a, b) => b.date.getTime() - a.date.getTime())[0];
|
||||
await bedrock.findByIdAndUpdate(latest._id, {$set: {latest: true}});
|
||||
}
|
@ -1,35 +0,0 @@
|
||||
import { getJSON } from "@http/simples";
|
||||
import { java } from "../db/java";
|
||||
import { javaRelease } from "./types/Java";
|
||||
|
||||
async function Add(Version: string, versionDate: Date, url: string): Promise<void> {
|
||||
if (await java.findOne({ version: Version }).lean().then(data => !!data).catch(() => true)) return;
|
||||
else {
|
||||
console.log("Java: Version '%s', url '%s'", Version, url);
|
||||
await java.create({
|
||||
version: Version,
|
||||
date: versionDate,
|
||||
latest: false,
|
||||
url: url
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
type version_manifest_v2 = {latest: {release: string, snapshot: string, }, versions: {id: string, type: "snapshot"|"release", url: string, time: string, releaseTime: string, sha1: string, complianceLevel: number}[]}
|
||||
|
||||
async function Find() {
|
||||
const Versions = await getJSON<version_manifest_v2>("https://launchermeta.mojang.com/mc/game/version_manifest_v2.json");
|
||||
for (const ver of Versions.versions.filter(a => a.type === "release")) {
|
||||
const Release = await getJSON<javaRelease>(ver.url);
|
||||
if (!!Release?.downloads?.server?.url) await Add(ver.id, new Date(ver.releaseTime), Release?.downloads?.server?.url);
|
||||
}
|
||||
return await java.findOneAndUpdate({version: Versions.latest.release}, {$set: {latest: true}}).lean();
|
||||
}
|
||||
|
||||
export default async function UpdateDatabase() {
|
||||
const latestVersion = await java.findOneAndUpdate({latest: true}, {$set: {latest: false}}).lean();
|
||||
return {
|
||||
new: await Find(),
|
||||
old: latestVersion
|
||||
};
|
||||
}
|
@ -1,48 +0,0 @@
|
||||
import { getJSON as getJson } from "@http/simples";
|
||||
import { paper } from "../db/paper";
|
||||
|
||||
type paperVersions = {
|
||||
project_id: string,
|
||||
project_name: string,
|
||||
version_groups: string[],
|
||||
versions: string[]
|
||||
};
|
||||
|
||||
type paperBuilds = {
|
||||
project_id: string,
|
||||
project_name: string,
|
||||
version: string,
|
||||
builds: {
|
||||
build: number;
|
||||
time: string;
|
||||
channel: string;
|
||||
promoted: boolean;
|
||||
changes: {commit: string, summary: string, message: string}[];
|
||||
downloads: {
|
||||
application: {name: string, sha256: string},
|
||||
mojangMappings: {name: string, sha256: string}
|
||||
}
|
||||
}[]
|
||||
};
|
||||
|
||||
export default async function find() {
|
||||
const versions = (await getJson<paperVersions>("https://api.papermc.io/v2/projects/paper")).versions;
|
||||
for (const version of versions) {
|
||||
const builds = await getJson<paperBuilds>(`https://api.papermc.io/v2/projects/paper/versions/${version}/builds`);
|
||||
await Promise.all(builds.builds.map(async function(build){
|
||||
const downloadUrl = `https://api.papermc.io/v2/projects/paper/versions/${builds.version}/builds/${build.build}/downloads/${build.downloads.application.name}`;
|
||||
if (await paper.findOne({url: downloadUrl}).lean()) return;
|
||||
await paper.create({
|
||||
version: builds.version,
|
||||
build: build.build,
|
||||
date: new Date(build.time),
|
||||
url: downloadUrl,
|
||||
latest: false
|
||||
});
|
||||
return console.log("Paper add %s version, build %s", builds.version, build.build);
|
||||
}));
|
||||
}
|
||||
await paper.findOneAndUpdate({latest: true}, {$set: {latest: false}}).lean();
|
||||
const latestVersionByDate = (await paper.find().lean()).sort((a, b) => b.date.getTime()-a.date.getTime())[0];
|
||||
await paper.findByIdAndUpdate(latestVersionByDate._id, {$set: {latest: true}}).lean();
|
||||
}
|
@ -1,40 +0,0 @@
|
||||
import { GithubRelease } from "@http/github";
|
||||
import { pocketmine as pocketminemmp} from "../db/pocketmine";
|
||||
|
||||
async function Add(Version: string, versionDate: Date, url: string) {
|
||||
if (await pocketminemmp.findOne({ version: Version }).lean().then(data => !!data).catch(() => true)) console.log("Pocketmine: version (%s) already exists", Version);
|
||||
else {
|
||||
await pocketminemmp.create({
|
||||
version: Version,
|
||||
date: versionDate,
|
||||
latest: false,
|
||||
url: url
|
||||
});
|
||||
console.log("Pocketmine PMMP: Version %s, url %s", Version, url);
|
||||
}
|
||||
}
|
||||
|
||||
async function Find() {
|
||||
return await Promise.all((await GithubRelease("pmmp/PocketMine-MP")).filter(Release => !/beta|alpha/gi.test(Release.tag_name.toLowerCase())).map(Release => {
|
||||
Release.assets = Release.assets.filter(asset => asset.name.endsWith(".phar"));
|
||||
return Release;
|
||||
}).filter(a => a.assets.length > 0).map(release => {
|
||||
return Add(release.tag_name, new Date(release.published_at), release.assets[0].browser_download_url).catch(err => {
|
||||
console.log("Pocketmine PMMP: Version %s, Error: %o", release.tag_name, err);
|
||||
}).then(() => ({
|
||||
Date: new Date(release.published_at),
|
||||
Version: release.tag_name,
|
||||
url: release.assets[0].browser_download_url
|
||||
}));
|
||||
}));
|
||||
}
|
||||
|
||||
export default async function UpdateDatabase() {
|
||||
const latestVersion = await pocketminemmp.findOneAndUpdate({ latest: true }, {$set: {latest: false}}).lean();
|
||||
const Releases = await Find();
|
||||
const newLatest = await pocketminemmp.findOneAndUpdate({ version: Releases[0].Version }, {$set: { latest: true }}).lean();
|
||||
return {
|
||||
new: newLatest,
|
||||
old: latestVersion
|
||||
};
|
||||
}
|
@ -1,161 +0,0 @@
|
||||
import { powernukkit, powernukkitSchema } from "../db/powernukkit";
|
||||
import { getJSON as getJson } from "@http/simples";
|
||||
export const exportUrl = "https://raw.githubusercontent.com/PowerNukkit/powernukkit-version-aggregator/master/powernukkit-versions.json";
|
||||
export type Release = {
|
||||
version: string,
|
||||
releaseTime: number,
|
||||
minecraftVersion: string,
|
||||
artefacts: string[],
|
||||
commitId: string,
|
||||
snapshotBuild?: number
|
||||
}
|
||||
export type PowernukkitVersions = {
|
||||
releases: Release[],
|
||||
snapshots: Release[]
|
||||
}
|
||||
|
||||
function buildVersion(data: Release): powernukkitSchema|void {
|
||||
let artefacts: {[key: string]: any} = {};
|
||||
data.artefacts.forEach(function(artefactId) {
|
||||
artefacts[artefactId] = buildArtefactUrl(data, artefactId);
|
||||
});
|
||||
if (data.commitId) {
|
||||
artefacts["GIT_SOURCE"] = buildArtefactUrl(data, "GIT_SOURCE");
|
||||
}
|
||||
if (!data.snapshotBuild) {
|
||||
artefacts["ONLINE_DOC"] = buildArtefactUrl(data, "ONLINE_DOC");
|
||||
}
|
||||
|
||||
const releaseTime = new Date(data.releaseTime);
|
||||
let url = getBestDownloadUrl(artefacts);
|
||||
if (!url) return;
|
||||
const schema: powernukkitSchema = {
|
||||
version: data.version,
|
||||
mcpeVersion: data.minecraftVersion,
|
||||
date: releaseTime,
|
||||
latest: false,
|
||||
variantType: data.snapshotBuild === undefined ? "stable":"snapshot",
|
||||
url
|
||||
};
|
||||
|
||||
return schema;
|
||||
}
|
||||
|
||||
function getBestDownloadUrl(artefacts): string {
|
||||
if (artefacts.SHADED_JAR) {
|
||||
return artefacts.SHADED_JAR;
|
||||
} else {
|
||||
return artefacts.REDUCED_JAR;
|
||||
}
|
||||
}
|
||||
|
||||
function buildArtefactUrl(data: any, artefactId?: string): string|void {
|
||||
if (artefactId == "GIT_SOURCE") {
|
||||
return buildGitSourceUrl(data);
|
||||
} else if (artefactId == "ONLINE_DOC") {
|
||||
return buildOnlineDocUrl(data);
|
||||
} else if (data.snapshotBuild) {
|
||||
return buildSnapshotArtefactUrl(data, artefactId);
|
||||
} else {
|
||||
return buildReleaseArtefactUrl(data, artefactId);
|
||||
}
|
||||
}
|
||||
|
||||
function buildOnlineDocUrl(data: any) {
|
||||
if (data.snapshotBuild) {
|
||||
if (data.artefacts.includes("JAVADOC_JAR")) {
|
||||
return buildSnapshotArtefactUrl(data, "JAVADOC_JAR");
|
||||
}
|
||||
}
|
||||
return "https://devs.powernukkit.org/#javadoc";
|
||||
}
|
||||
|
||||
function buildGitSourceUrl(data) {
|
||||
if (data.commitId) {
|
||||
return "https://github.com/PowerNukkit/PowerNukkit/tree/" + data.commitId;
|
||||
} else if (data.snapshotBuild) {
|
||||
if (data.artefacts.includes("SHADED_SOURCES_JAR")) {
|
||||
return buildSnapshotArtefactUrl(data, "SHADED_SOURCES_JAR");
|
||||
} else if (data.artefacts.includes("REDUCED_SOURCES_JAR")) {
|
||||
return buildSnapshotArtefactUrl(data, "REDUCED_SOURCES_JAR");
|
||||
}
|
||||
} else {
|
||||
if (data.artefacts.includes("SHADED_SOURCES_JAR")) {
|
||||
return buildReleaseArtefactUrl(data, "SHADED_SOURCES_JAR");
|
||||
} else if (data.artefacts.includes("REDUCED_SOURCES_JAR")) {
|
||||
return buildReleaseArtefactUrl(data, "REDUCED_SOURCES_JAR");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function buildReleaseArtefactUrl(data: any, artefactId?: string): string|void {
|
||||
if (!data.artefacts.includes(artefactId)) {
|
||||
return;
|
||||
}
|
||||
return "https://search.maven.org/remotecontent?filepath=org/powernukkit/powernukkit/" +
|
||||
data.version +
|
||||
"/powernukkit-" +
|
||||
data.version +
|
||||
getArtefactExtension(artefactId);
|
||||
}
|
||||
|
||||
function buildSnapshotArtefactUrl(data: any, artefactId?: string): string|void {
|
||||
if (!data.artefacts.includes(artefactId)) {
|
||||
return;
|
||||
}
|
||||
let dt = new Date(data.releaseTime);
|
||||
let snapshotCode = dt.getUTCFullYear().toString().padStart(4, "0") +
|
||||
(dt.getUTCMonth() + 1).toString().padStart(2, "0") +
|
||||
dt.getUTCDate().toString().padStart(2, "0") +
|
||||
"." +
|
||||
dt.getUTCHours().toString().padStart(2, "0") +
|
||||
dt.getUTCMinutes().toString().padStart(2, "0") +
|
||||
dt.getUTCSeconds().toString().padStart(2, "0") +
|
||||
"-" +
|
||||
data.snapshotBuild;
|
||||
let snapshotIndex = data.version.indexOf("-SNAPSHOT");
|
||||
let version = data.version.substring(0, snapshotIndex);
|
||||
let extension = getArtefactExtension(artefactId);
|
||||
return "https://oss.sonatype.org/content/repositories/snapshots/org/powernukkit/powernukkit" +
|
||||
"/" +
|
||||
version + "-SNAPSHOT" +
|
||||
"/" +
|
||||
"powernukkit-" + version +
|
||||
"-" +
|
||||
snapshotCode +
|
||||
extension
|
||||
}
|
||||
|
||||
function getArtefactExtension(artefactId) {
|
||||
let extension = ".unknown";
|
||||
switch (artefactId) {
|
||||
case "REDUCED_JAR": extension = ".jar"; break;
|
||||
case "REDUCED_SOURCES_JAR": extension = "-sources.jar"; break;
|
||||
case "SHADED_JAR": extension = "-shaded.jar"; break;
|
||||
case "SHADED_SOURCES_JAR": extension = "-shaded-sources.jar"; break;
|
||||
case "JAVADOC_JAR": extension = "-javadoc.jar"; break;
|
||||
}
|
||||
return extension;
|
||||
}
|
||||
|
||||
export default async function find() {
|
||||
const releases_version = await getJson(exportUrl) as PowernukkitVersions;
|
||||
for (const stable of releases_version.releases) {
|
||||
const data = buildVersion(stable);
|
||||
if (!data) continue
|
||||
if (await powernukkit.findOne({version: data.version}).lean()) continue;
|
||||
await powernukkit.create(data);
|
||||
console.log("Powernukkit stable add %s version to minecraft bedrock %s version", data.version, data.mcpeVersion);
|
||||
}
|
||||
for (const snapshot of releases_version.snapshots) {
|
||||
const data = buildVersion(snapshot);
|
||||
if (!data) continue
|
||||
if (await powernukkit.findOne({version: data.version}).lean()) continue;
|
||||
await powernukkit.create(data);
|
||||
console.log("Powernukkit snapshort add %s version to minecraft bedrock %s version", data.version, data.mcpeVersion);
|
||||
}
|
||||
const oldLatest = await powernukkit.findOneAndUpdate({latest: true}, {$set: {latest: false}}).lean();
|
||||
const latestVersion = (await powernukkit.find({variantType: "stable"}).lean()).sort((b, a) => a.date.getTime()-b.date.getTime())[0];
|
||||
await powernukkit.findOneAndUpdate({version: latestVersion.version, variant: {variantType: "stable"}}, {$set: {latest: true}}).lean().catch(err => powernukkit.findOneAndUpdate({version: oldLatest.version}, {$set: {latest: true}}).lean().then(() => Promise.reject(err)));
|
||||
return;
|
||||
}
|
@ -1,35 +0,0 @@
|
||||
import jsdom from "jsdom";
|
||||
import { bufferFetch } from "@http/simples";
|
||||
import {spigot} from "../db/spigot";
|
||||
export const urlRegex = /http[s]:\/\/.*/;
|
||||
async function Find() {
|
||||
const { document } = (new jsdom.JSDOM(await bufferFetch("https://getbukkit.org/download/spigot").then(({data}) => data.toString("utf8")).catch(err => {console.log(err); return "<html></html>"}))).window;
|
||||
const Versions = await Promise.all(([...(document.querySelectorAll("#download > div > div > div > div") as any)]).map(async DOM => {
|
||||
const download = (new jsdom.JSDOM(await bufferFetch(DOM.querySelector("div > div.col-sm-4 > div.btn-group > a")["href"]).then(({data}) => data.toString("utf8"))));
|
||||
const serverInfo = {
|
||||
version: String(DOM.querySelector("div:nth-child(1) > h2").textContent),
|
||||
Date: new Date(DOM.querySelector("div:nth-child(3) > h3").textContent),
|
||||
url: download.window.document.querySelector("#get-download > div > div > div:nth-child(2) > div > h2 > a")["href"]
|
||||
}
|
||||
if (!urlRegex.test(serverInfo.url)||!serverInfo.url) return null;
|
||||
return serverInfo;
|
||||
}));
|
||||
|
||||
for (const Version of Versions.filter(a => a)) {
|
||||
if (await spigot.findOne({version: Version.version}).lean()) continue;
|
||||
console.log("Spigot", Version.version, Version.url);
|
||||
await spigot.create({
|
||||
version: Version.version,
|
||||
date: Version.Date,
|
||||
latest: false,
|
||||
url: Version.url
|
||||
});
|
||||
}
|
||||
await spigot.findOneAndUpdate({latest: true}, {$set: {latest: false}}).lean();
|
||||
const latestVersion = (await spigot.find().lean()).sort((b, a) => a.date.getTime()-b.date.getTime())[0];
|
||||
await spigot.findByIdAndUpdate(latestVersion._id, {$set: {latest: true}});
|
||||
}
|
||||
|
||||
export default async function UpdateDatabase() {
|
||||
await Find();
|
||||
}
|
@ -1,53 +0,0 @@
|
||||
#!/usr/bin/env node
|
||||
import yargs from "yargs";
|
||||
import bedrock from "./Bedrock";
|
||||
import pocketmine from "./Pocketmine";
|
||||
import java from "./Java";
|
||||
import spigot from "./Spigot";
|
||||
import paper from "./Paper";
|
||||
import powernukkit from "./Powernukkit"
|
||||
|
||||
const options = yargs(process.argv.slice(2)).help().version(false).alias("h", "help").wrap(yargs.terminalWidth()).options("all", {
|
||||
description: "Fetch all plaftorms",
|
||||
type: "boolean"
|
||||
}).option("bedrock", {
|
||||
description: "Fetch Bedrock versions",
|
||||
type: "boolean"
|
||||
}).option("java", {
|
||||
description: "Fetch Java versions",
|
||||
type: "boolean"
|
||||
}).option("pocketmine", {
|
||||
description: "Fetch Pocketmine-MP versions",
|
||||
type: "boolean"
|
||||
}).option("spigot", {
|
||||
description: "Fetch Spigot versions",
|
||||
type: "boolean"
|
||||
}).option("paper", {
|
||||
description: "Fetch Paper versions",
|
||||
type: "boolean"
|
||||
}).option("powernukkit", {
|
||||
description: "Fetch Powernukkit versions",
|
||||
type: "boolean"
|
||||
})
|
||||
.parseSync();
|
||||
|
||||
async function all() {
|
||||
await bedrock()
|
||||
await java();
|
||||
await pocketmine();
|
||||
await spigot();
|
||||
await paper();
|
||||
await powernukkit();
|
||||
}
|
||||
|
||||
if (options.bedrock) bedrock().then(() => {console.log("Bedrock sucess update"); process.exit(0)}).catch(err => {console.log("Bedrock catch Error: %s", String(err)); process.exit(1)});
|
||||
else if (options.java) java().then(() => {console.log("Java sucess update"); process.exit(0)}).catch(err => {console.log("Java catch Error: %s", String(err)); process.exit(1)});
|
||||
else if (options.spigot) spigot().then(() => {console.log("Spigot sucess update"); process.exit(0)}).catch(err => {console.log("Spigot catch Error: %s", String(err)); process.exit(1)});
|
||||
else if (options.pocketmine) pocketmine().then(() => {console.log("Pocketmine sucess update"); process.exit(0)}).catch(err => {console.log("Pocketmine catch Error: %s", String(err)); process.exit(1)});
|
||||
else if (options.paper) paper().then(() => {console.log("Paper sucess update"); process.exit(0)}).catch(err => {console.log("Paper catch Error: %s", String(err)); process.exit(1)});
|
||||
else if (options.powernukkit) powernukkit().then(() => {console.log("Powernukkit sucess update"); process.exit(0)}).catch(err => {console.log("Powernukkit catch Error: %s", String(err)); process.exit(1)});
|
||||
else if (options.all) all().then(() => process.exit(0)).catch(err => {console.trace(err); process.exit(1)});
|
||||
else {
|
||||
console.log("No options set");
|
||||
process.exit(1);
|
||||
}
|
@ -1,165 +0,0 @@
|
||||
export type javaRelease = {
|
||||
arguments: {
|
||||
game: Array<any>
|
||||
jvm: [
|
||||
{
|
||||
rules: Array<{
|
||||
action: string
|
||||
os: {
|
||||
name: string
|
||||
}
|
||||
}>
|
||||
value: Array<string>
|
||||
},
|
||||
{
|
||||
rules: Array<{
|
||||
action: string
|
||||
os: {
|
||||
name: string
|
||||
}
|
||||
}>
|
||||
value: string
|
||||
},
|
||||
{
|
||||
rules: Array<{
|
||||
action: string
|
||||
os: {
|
||||
name: string
|
||||
version: string
|
||||
}
|
||||
}>
|
||||
value: Array<string>
|
||||
},
|
||||
{
|
||||
rules: Array<{
|
||||
action: string
|
||||
os: {
|
||||
arch: string
|
||||
}
|
||||
}>
|
||||
value: string
|
||||
},
|
||||
string,
|
||||
string,
|
||||
string,
|
||||
string,
|
||||
string
|
||||
]
|
||||
}
|
||||
assetIndex: {
|
||||
id: string
|
||||
sha1: string
|
||||
size: number
|
||||
totalSize: number
|
||||
url: string
|
||||
}
|
||||
assets: string
|
||||
complianceLevel: number
|
||||
downloads: {
|
||||
client: {
|
||||
sha1: string
|
||||
size: number
|
||||
url: string
|
||||
}
|
||||
client_mappings: {
|
||||
sha1: string
|
||||
size: number
|
||||
url: string
|
||||
}
|
||||
server: {
|
||||
sha1: string
|
||||
size: number
|
||||
url: string
|
||||
}
|
||||
server_mappings: {
|
||||
sha1: string
|
||||
size: number
|
||||
url: string
|
||||
}
|
||||
}
|
||||
id: string
|
||||
javaVersion: {
|
||||
component: string
|
||||
majorVersion: number
|
||||
}
|
||||
libraries: Array<{
|
||||
downloads: {
|
||||
artifact: {
|
||||
path: string
|
||||
sha1: string
|
||||
size: number
|
||||
url: string
|
||||
}
|
||||
classifiers?: {
|
||||
javadoc?: {
|
||||
path: string
|
||||
sha1: string
|
||||
size: number
|
||||
url: string
|
||||
}
|
||||
"natives-osx"?: {
|
||||
path: string
|
||||
sha1: string
|
||||
size: number
|
||||
url: string
|
||||
}
|
||||
sources?: {
|
||||
path: string
|
||||
sha1: string
|
||||
size: number
|
||||
url: string
|
||||
}
|
||||
"natives-linux"?: {
|
||||
path: string
|
||||
sha1: string
|
||||
size: number
|
||||
url: string
|
||||
}
|
||||
"natives-windows"?: {
|
||||
path: string
|
||||
sha1: string
|
||||
size: number
|
||||
url: string
|
||||
}
|
||||
"natives-macos"?: {
|
||||
path: string
|
||||
sha1: string
|
||||
size: number
|
||||
url: string
|
||||
}
|
||||
}
|
||||
}
|
||||
name: string
|
||||
rules?: Array<{
|
||||
action: string
|
||||
os?: {
|
||||
name: string
|
||||
}
|
||||
}>
|
||||
natives?: {
|
||||
osx?: string
|
||||
linux?: string
|
||||
windows?: string
|
||||
}
|
||||
extract?: {
|
||||
exclude: Array<string>
|
||||
}
|
||||
}>
|
||||
logging: {
|
||||
client: {
|
||||
argument: string
|
||||
file: {
|
||||
id: string
|
||||
sha1: string
|
||||
size: number
|
||||
url: string
|
||||
}
|
||||
type: string
|
||||
}
|
||||
}
|
||||
mainClass: string
|
||||
minimumLauncherVersion: number
|
||||
releaseTime: string
|
||||
time: string
|
||||
type: string
|
||||
}
|
@ -1,76 +0,0 @@
|
||||
import { bufferFetch } from "@http/simples"
|
||||
import type { bedrockSchema } from "./db/bedrock";
|
||||
import type { javaSchema } from "./db/java";
|
||||
import type { paperSchema } from "./db/paper";
|
||||
import type { powernukkitSchema } from "./db/powernukkit";
|
||||
import type { pocketminemmpSchema } from "./db/pocketmine";
|
||||
import type { spigotSchema } from "./db/spigot";
|
||||
|
||||
export type BdsCorePlatforms = "bedrock"|"java"|"paper"|"powernukkit"|"pocketmine"|"spigot";
|
||||
export type all = bedrockSchema|javaSchema|powernukkitSchema|paperSchema|pocketminemmpSchema|spigotSchema
|
||||
export type {
|
||||
bedrockSchema as bedrock,
|
||||
javaSchema as java,
|
||||
paperSchema as paper,
|
||||
pocketminemmpSchema as pocketmine,
|
||||
spigotSchema as spigot,
|
||||
powernukkitSchema as powernukkit
|
||||
}
|
||||
|
||||
export async function findVersion<PlatformSchema = all[]>(bdsPlaform: BdsCorePlatforms): Promise<PlatformSchema>;
|
||||
export async function findVersion<PlatformSchema = all>(bdsPlaform: BdsCorePlatforms, version: string|boolean): Promise<PlatformSchema>;
|
||||
export async function findVersion<PlatformSchema = all>(bdsPlaform: BdsCorePlatforms, version: string|boolean, ignoreStatic: boolean): Promise<PlatformSchema>;
|
||||
export async function findVersion<PlatformSchema = all|all[]>(bdsPlaform: BdsCorePlatforms, version?: string|boolean, ignoreStatic?: boolean): Promise<PlatformSchema> {
|
||||
const versionURLs = ["https://mcpeversions_backup.sirherobrine23.org", "https://mcpeversions.sirherobrine23.org"];
|
||||
if (!ignoreStatic) versionURLs.push("https://mcpeversion-static.sirherobrine23.org/"); else console.warn("Using dynamic APIs, some may be down!");
|
||||
for (let url of versionURLs.reverse()) {
|
||||
url += "/"+bdsPlaform;
|
||||
if (/static/.test(url)) {
|
||||
if (version === undefined) url += "/all.json";
|
||||
else if (typeof version === "boolean") url += "/latest.json";
|
||||
else url += `/${version}.json`;
|
||||
} else {
|
||||
if (version === undefined||version === "all") url += "/";
|
||||
else {
|
||||
if (typeof version === "boolean"||version === "latest") url += "/latest";
|
||||
else url += `/search?version=${version}`;
|
||||
}
|
||||
}
|
||||
const res = await bufferFetch(url).then(({data}) => data).catch(() => false);
|
||||
if (res === false) continue;
|
||||
const data = JSON.parse(res.toString("utf8"), (key, value) => key === "date" ? new Date(value):value);
|
||||
if (!data) throw new Error("Failed to get data");
|
||||
return data;
|
||||
}
|
||||
throw new Error("Failed to exec API request!");
|
||||
}
|
||||
|
||||
export const platformManeger = {
|
||||
bedrock: {
|
||||
async all(){return findVersion<bedrockSchema[]>("bedrock");},
|
||||
async find(version: string|boolean){return findVersion<bedrockSchema>("bedrock", version);}
|
||||
},
|
||||
pocketmine: {
|
||||
async all(){return findVersion<pocketminemmpSchema[]>("pocketmine");},
|
||||
async find(version: string|boolean){return findVersion<pocketminemmpSchema>("pocketmine", version);}
|
||||
},
|
||||
powernukkit: {
|
||||
async all(){return findVersion<powernukkitSchema[]>("powernukkit");},
|
||||
async find(version: string|boolean){return findVersion<powernukkitSchema>("powernukkit", version);}
|
||||
},
|
||||
java: {
|
||||
async all(){return findVersion<javaSchema[]>("java");},
|
||||
async find(version: string|boolean){return findVersion<javaSchema>("java", version);}
|
||||
},
|
||||
spigot: {
|
||||
async all(){return findVersion<spigotSchema[]>("spigot");},
|
||||
async find(version: string|boolean){return findVersion<spigotSchema>("spigot", version);}
|
||||
},
|
||||
paper: {
|
||||
async all(){return findVersion<paperSchema[]>("paper");},
|
||||
async find(version: string|boolean, build?: number|string){
|
||||
if (!build) build = (await findVersion<paperSchema[]>("paper")).find(ver => ver.version === version)?.build;
|
||||
return findVersion<paperSchema>("paper", `${version}${!!build?"_"+build:""}`);
|
||||
}
|
||||
}
|
||||
};
|
@ -2,18 +2,20 @@ import type { Method } from "got";
|
||||
import * as fs from "node:fs";
|
||||
import * as stream from "node:stream";
|
||||
|
||||
const UserAgent = "Mozilla/5.0 (Linux; Android 12; moto g(7) plus) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/107.0.0.0 Mobile Safari/537.36";
|
||||
|
||||
export let got;
|
||||
export let got: (typeof import("got"))["default"];
|
||||
async function gotCjs(): Promise<(typeof import("got"))["default"]> {
|
||||
if (got) return got;
|
||||
const dyImport = (await (eval('import("got")') as Promise<typeof import("got")>)).default.extend({enableUnixSockets: true, headers: {"User-Agent": UserAgent, "USER-AGENT": UserAgent, "user-agent": UserAgent}});
|
||||
const dyImport = (await (eval('import("got")') as Promise<typeof import("got")>)).default.extend({
|
||||
enableUnixSockets: true,
|
||||
headers: {
|
||||
"user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/107.0.0.0 Safari/537.36",
|
||||
"Accept": "*/*"
|
||||
}
|
||||
});
|
||||
got = dyImport;
|
||||
return dyImport;
|
||||
}
|
||||
|
||||
gotCjs().then(res => got = res);
|
||||
|
||||
export type requestOptions = {
|
||||
url?: string,
|
||||
socket?: {
|
||||
@ -32,7 +34,7 @@ export async function pipeFetch(options: requestOptions & {stream: fs.WriteStrea
|
||||
isStream: true,
|
||||
headers: options.headers||{},
|
||||
method: options.method||"GET",
|
||||
json: options.body,
|
||||
...((options.method||"GET").toLowerCase()!=="get"?(typeof options.body === "string"?{body: options.body}:{json: options.body}):{}),
|
||||
});
|
||||
await new Promise<void>((done, reject) => {
|
||||
gotStream.pipe(options.stream);
|
||||
@ -50,21 +52,18 @@ export async function bufferFetch(options: string|requestOptions) {
|
||||
if (!(options.url||options.socket)) throw new Error("Host blank")
|
||||
const urlRequest = (typeof options.url === "string")?options.url:`http://unix:${options.socket.socketPath}:${options.socket.path||"/"}`;
|
||||
return (await gotCjs())(urlRequest, {
|
||||
responseType: "buffer",
|
||||
headers: options.headers||{},
|
||||
method: options.method||"GET",
|
||||
json: options.body,
|
||||
responseType: "buffer",
|
||||
...((options.method||"GET").toLowerCase()!=="get"?(typeof options.body === "string"?{body: options.body}:{json: options.body}):{}),
|
||||
}).then(res => ({headers: res.headers, data: Buffer.from(res.body), response: res}));
|
||||
}
|
||||
|
||||
export async function getJSON<JSONReturn = any>(request: string|requestOptions): Promise<JSONReturn> {
|
||||
if (typeof request === "string") request = {url: request};
|
||||
const res = (await bufferFetch(request)).data.toString("utf8");
|
||||
return JSON.parse(res) as JSONReturn;
|
||||
return bufferFetch(request).then(({data}) => JSON.parse(data.toString("utf8")) as JSONReturn)
|
||||
}
|
||||
|
||||
const httpUrl = /^http[s]:\/\/[a-z0-9\.\-_]+(|\/([\s\W\S]+?))/;
|
||||
export async function urls(options: requestOptions|string): Promise<string[]> {
|
||||
const data = (await bufferFetch(options)).data.toString("utf8");
|
||||
return data.split(/["'<>]/gi).filter(line => httpUrl.test(line))
|
||||
}
|
||||
return (data.match(/((http[s]):(([A-Za-z0-9$_.+!*(),;/?:@&~=-])|%[A-Fa-f0-9]{2}){2,}(#([a-zA-Z0-9][a-zA-Z0-9$_.+!*(),;/?:@&~=%-]*))?([A-Za-z0-9$_+!*();/?:~-]))/g)).map(res => typeof res === "string"?res:res[1]);
|
||||
}
|
@ -15,7 +15,7 @@
|
||||
"baseUrl": ".",
|
||||
"paths": {
|
||||
"@http/*": [
|
||||
"src/lib/request/*"
|
||||
"src/request/*"
|
||||
]
|
||||
}
|
||||
},
|
||||
|
Reference in New Issue
Block a user