chore: viewblock transactions analysis

This commit is contained in:
ppedziwiatr
2021-09-24 17:54:57 +02:00
parent d2adc33f08
commit 64a3fc0794
16 changed files with 956055 additions and 3 deletions

View File

@@ -61,16 +61,19 @@
"tslog": "^3.2.1"
},
"devDependencies": {
"@types/cheerio": "^0.22.30",
"@types/jest": "^27.0.1",
"@types/node": "^16.7.1",
"@typescript-eslint/eslint-plugin": "^4.29.2",
"@typescript-eslint/parser": "^4.29.2",
"arlocal": "^1.0.44",
"cheerio": "^1.0.0-rc.10",
"cors": "^2.8.5",
"eslint": "^7.32.0",
"eslint-config-prettier": "^8.3.0",
"eslint-plugin-prettier": "^3.4.1",
"express": "^4.17.1",
"got": "^11.8.2",
"jest": "^27.1.0",
"prettier": "^2.3.2",
"rimraf": "^3.0.2",

View File

@@ -0,0 +1,35 @@
import { InteractionsLoader } from '../src/core/modules/InteractionsLoader';
import { GQLEdgeInterface } from '../src/legacy/gqlResult';
import * as fs from 'fs';
import { LoggerFactory } from '../src';
const brokenTransactions = [
'3O5Nvfbj72BDJT2bDC5EUm6gmkManJADsn93vKzQISU',
'6uNZj-IV5sDx2Rpe7E2Jh_8phHzmDwts771mwbbuZc4',
'oQt1SJz5dxNxyjYBMPCsthUR0OyhTLTwrnNH9rbcOE4',
't2LOZSWW8u4G8a8gQqIoN9MdczQb7mIflPuQG7MGgtU',
'v6bGNzNMTb7fj_q_KwRyLH2pSN6rSmPzHXUvrfDPYHs',
'vofahl_F506NkD6dP-1gYis-1N6sWQnfcXazDhoKaiQ',
'z2fZzeB_466S9kTikjA2RihwEuBVUUe9FAceYj_KKtA',
]
export class FromFileInteractionsLoader implements InteractionsLoader {
private readonly logger = LoggerFactory.INST.create('FromFileInteractionsLoader');
private readonly transactions: GQLEdgeInterface[] = [];
constructor(filePath: string) {
const fileContent = JSON.parse(fs.readFileSync(filePath, 'utf-8'));
this.transactions = (fileContent.cachedValue as GQLEdgeInterface[]).filter(e => {
const skip = brokenTransactions.indexOf(e.node.id) >= 0
if (skip) {
this.logger.debug('Skipping', e.node.id);
}
return !skip;
});
}
async load(contractId: string, fromBlockHeight: number, toBlockHeight: number): Promise<GQLEdgeInterface[]> {
return this.transactions;
}
}

417117
tools/data/interactions.json Normal file

File diff suppressed because it is too large Load Diff

1005
tools/data/loot.json Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,330 @@
[
{
"node": {
"id": "3O5Nvfbj72BDJT2bDC5EUm6gmkManJADsn93vKzQISU",
"owner": {
"address": "srdO4TuzGuA_esCR_BxbezYXrrhbqkJgBmeFRgM391U"
},
"recipient": "",
"tags": [
{
"name": "App-Name",
"value": "SmartWeaveAction"
},
{
"name": "App-Version",
"value": "0.3.0"
},
{
"name": "Contract",
"value": "Daj-MNSnH55TDfxqC7v4eq0lKzVIwh98srUaWqyuZtY"
},
{
"name": "Input",
"value": "{\"function\":\"generate\"}"
},
{
"name": "Signing-Client",
"value": "ArConnect"
},
{
"name": "Signing-Client-Version",
"value": "0.3.5"
}
],
"block": {
"height": 769686,
"id": "bAUsEgzlbGyhJpyg-klaqw9GXhrqiVpbHsV2tjpGJ02faWGzLtuisqGagTqk5tQS",
"timestamp": 1631650687
},
"fee": {
"winston": "1473297"
},
"quantity": {
"winston": "0"
},
"parent": null
},
"cursor": "WyIyMDIxLTA5LTI0VDA4OjU4OjE1Ljg3MloiLDFd"
},
{
"node": {
"id": "6uNZj-IV5sDx2Rpe7E2Jh_8phHzmDwts771mwbbuZc4",
"owner": {
"address": "srdO4TuzGuA_esCR_BxbezYXrrhbqkJgBmeFRgM391U"
},
"recipient": "",
"tags": [
{
"name": "App-Name",
"value": "SmartWeaveAction"
},
{
"name": "App-Version",
"value": "0.3.0"
},
{
"name": "Contract",
"value": "Daj-MNSnH55TDfxqC7v4eq0lKzVIwh98srUaWqyuZtY"
},
{
"name": "Input",
"value": "{\"function\":\"generate\"}"
},
{
"name": "Signing-Client",
"value": "ArConnect"
},
{
"name": "Signing-Client-Version",
"value": "0.3.5"
}
],
"block": {
"height": 769686,
"id": "bAUsEgzlbGyhJpyg-klaqw9GXhrqiVpbHsV2tjpGJ02faWGzLtuisqGagTqk5tQS",
"timestamp": 1631650687
},
"fee": {
"winston": "1473297"
},
"quantity": {
"winston": "0"
},
"parent": null
},
"cursor": "WyIyMDIxLTA5LTI0VDA4OjU4OjE1Ljg3MloiLDJd"
},
{
"node": {
"id": "oQt1SJz5dxNxyjYBMPCsthUR0OyhTLTwrnNH9rbcOE4",
"owner": {
"address": "srdO4TuzGuA_esCR_BxbezYXrrhbqkJgBmeFRgM391U"
},
"recipient": "",
"tags": [
{
"name": "App-Name",
"value": "SmartWeaveAction"
},
{
"name": "App-Version",
"value": "0.3.0"
},
{
"name": "Contract",
"value": "Daj-MNSnH55TDfxqC7v4eq0lKzVIwh98srUaWqyuZtY"
},
{
"name": "Input",
"value": "{\"function\":\"generate\"}"
},
{
"name": "Signing-Client",
"value": "ArConnect"
},
{
"name": "Signing-Client-Version",
"value": "0.3.5"
}
],
"block": {
"height": 769686,
"id": "bAUsEgzlbGyhJpyg-klaqw9GXhrqiVpbHsV2tjpGJ02faWGzLtuisqGagTqk5tQS",
"timestamp": 1631650687
},
"fee": {
"winston": "1473297"
},
"quantity": {
"winston": "0"
},
"parent": null
},
"cursor": "WyIyMDIxLTA5LTI0VDA4OjU4OjE1Ljg3MloiLDNd"
},
{
"node": {
"id": "t2LOZSWW8u4G8a8gQqIoN9MdczQb7mIflPuQG7MGgtU",
"owner": {
"address": "sWuh7hwUTB-EtcVOSxBt-TiBT1iNRvK9F35pCmDChaE"
},
"recipient": "",
"tags": [
{
"name": "App-Name",
"value": "SmartWeaveAction"
},
{
"name": "App-Version",
"value": "0.3.0"
},
{
"name": "Contract",
"value": "Daj-MNSnH55TDfxqC7v4eq0lKzVIwh98srUaWqyuZtY"
},
{
"name": "Input",
"value": "{\"function\":\"generate\"}"
},
{
"name": "Signing-Client",
"value": "ArConnect"
},
{
"name": "Signing-Client-Version",
"value": "0.3.5"
}
],
"block": {
"height": 769686,
"id": "bAUsEgzlbGyhJpyg-klaqw9GXhrqiVpbHsV2tjpGJ02faWGzLtuisqGagTqk5tQS",
"timestamp": 1631650687
},
"fee": {
"winston": "1473297"
},
"quantity": {
"winston": "0"
},
"parent": null
},
"cursor": "WyIyMDIxLTA5LTI0VDA4OjU4OjE1Ljg3MloiLDRd"
},
{
"node": {
"id": "v6bGNzNMTb7fj_q_KwRyLH2pSN6rSmPzHXUvrfDPYHs",
"owner": {
"address": "W9cZ5-ZwSHjBsN0w3Sw3WTQTILMyQ4LKV-VgIOxrTAw"
},
"recipient": "",
"tags": [
{
"name": "App-Name",
"value": "SmartWeaveAction"
},
{
"name": "App-Version",
"value": "0.3.0"
},
{
"name": "Contract",
"value": "Daj-MNSnH55TDfxqC7v4eq0lKzVIwh98srUaWqyuZtY"
},
{
"name": "Input",
"value": "{\"function\":\"generate\"}"
}
],
"block": {
"height": 769686,
"id": "bAUsEgzlbGyhJpyg-klaqw9GXhrqiVpbHsV2tjpGJ02faWGzLtuisqGagTqk5tQS",
"timestamp": 1631650687
},
"fee": {
"winston": "1473297"
},
"quantity": {
"winston": "0"
},
"parent": null
},
"cursor": "WyIyMDIxLTA5LTI0VDA4OjU4OjE1Ljg3MloiLDVd"
},
{
"node": {
"id": "vofahl_F506NkD6dP-1gYis-1N6sWQnfcXazDhoKaiQ",
"owner": {
"address": "sWuh7hwUTB-EtcVOSxBt-TiBT1iNRvK9F35pCmDChaE"
},
"recipient": "",
"tags": [
{
"name": "App-Name",
"value": "SmartWeaveAction"
},
{
"name": "App-Version",
"value": "0.3.0"
},
{
"name": "Contract",
"value": "Daj-MNSnH55TDfxqC7v4eq0lKzVIwh98srUaWqyuZtY"
},
{
"name": "Input",
"value": "{\"function\":\"generate\"}"
},
{
"name": "Signing-Client",
"value": "ArConnect"
},
{
"name": "Signing-Client-Version",
"value": "0.3.5"
}
],
"block": {
"height": 769686,
"id": "bAUsEgzlbGyhJpyg-klaqw9GXhrqiVpbHsV2tjpGJ02faWGzLtuisqGagTqk5tQS",
"timestamp": 1631650687
},
"fee": {
"winston": "1473297"
},
"quantity": {
"winston": "0"
},
"parent": null
},
"cursor": "WyIyMDIxLTA5LTI0VDA4OjU4OjE1Ljg3MloiLDZd"
},
{
"node": {
"id": "z2fZzeB_466S9kTikjA2RihwEuBVUUe9FAceYj_KKtA",
"owner": {
"address": "sWuh7hwUTB-EtcVOSxBt-TiBT1iNRvK9F35pCmDChaE"
},
"recipient": "",
"tags": [
{
"name": "App-Name",
"value": "SmartWeaveAction"
},
{
"name": "App-Version",
"value": "0.3.0"
},
{
"name": "Contract",
"value": "Daj-MNSnH55TDfxqC7v4eq0lKzVIwh98srUaWqyuZtY"
},
{
"name": "Input",
"value": "{\"function\":\"generate\"}"
},
{
"name": "Signing-Client",
"value": "ArConnect"
},
{
"name": "Signing-Client-Version",
"value": "0.3.5"
}
],
"block": {
"height": 769686,
"id": "bAUsEgzlbGyhJpyg-klaqw9GXhrqiVpbHsV2tjpGJ02faWGzLtuisqGagTqk5tQS",
"timestamp": 1631650687
},
"fee": {
"winston": "1473297"
},
"quantity": {
"winston": "0"
},
"parent": null
},
"cursor": "WyIyMDIxLTA5LTI0VDA4OjU4OjE1Ljg3MloiLDdd"
}
]

File diff suppressed because it is too large Load Diff

117806
tools/data/validity-report.json Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,128 @@
{
"R65qiHHS5cmuFBhdZ4MPXlY6E3Sq1eSRg1K4wKAkRnk": true,
"YE1U5ngH8ZwmvRHuPoc9ZliPItZSkuFiyCdV63YcogQ": false,
"SVGnekCLQQQjukRzB0Fg6On1m6GyrVPkK0NF0w_vNp4": true,
"HbbvOcU330ZiRvn7NzmDNLgTUbbGHWHqbze8GNqr81E": true,
"U3LL1JAgzVLr6pBOMTjdWWK4rB1Ew7mHhACA2BEszOA": true,
"IRIhmWOM3euhmdE9FI5RV87q4oTMMhFEP5JS7bYeza8": true,
"UbC9SmQwptIC9aS4rfXA7L55Tj9b507fben9ZCXrcjo": true,
"K6Kh5a5q6iLk4MxbrFIQ_lWN3SZ4G7A84JmVQCDDUYA": true,
"VM4u69czA0kellrXLhjl_QNCZt37hG_CHTWebio0RSE": true,
"JAA7Bkx_C5_hp-uisC7bJ0dNOMBS2UM1OeY6VtgW33c": false,
"VbQdemGiXniiPO4F_-YzQjiN9pD_1nU-UgiyFhRo5tM": true,
"JqUEv91ZU6eMPCtCuu7lmR139hYcSNDip6_H5L_bttE": false,
"Vbwe0jKRLAe6exW2vEdU3nXVDbgl9nx3Y_ZKF9G-rVY": true,
"QKu5g8nn9hiJZein5piYTJ0T0fcGosrjTlZnk0lKmVU": true,
"Vlk5YzrNLsND-xrM62N5CI2P99p2uhfs51FY9w_D54k": true,
"HbfOYlbPgvIXYAJnW4yTUCc6iP7KNS-vccgBL-a5JBs": true,
"KM9ExihO1Zj8UVlv1m7yGDIc7feFBgbJNoumODfEEeo": true,
"d4pDOwRdwIoIuMB4MbRYcg9lk7Bw0Q4GaaceOuuZtNE": true,
"cznjoZ1fTp5bNSOKTwN9axpgNBoxhoPb0oD251ToxwM": true,
"bDWf_YcVdpxW7ADzEsuCcUYW0I2mTXzbAxmVL3uA10s": true,
"XdVV5Jeip3R6RCWp2JxJ3coboRvOw_EMOidLee_u0AU": true,
"LIbTpGx989pHel1qIYxzEy7TYJ7iQT6lnZw60jbBr1w": true,
"JvbxdX75g7LlkHB1A5m3t0SekF2RVvznKb-zQUVCMsA": true,
"Qjm5E8c5Mi_jto_dYjcTxhm2sJhI6PMP9b8ArStxmLE": true,
"OUqPqlhmi1MAZ8uPBpvj8zZ3lWdjwrL7GasCOiYZb-4": true,
"3SOj9gWWgMkW7MpeDia1-vgAec00gBi5DtEQoVmpvyo": true,
"A-XSBMX0wYgjbkTKoTVRhnTqUpcD1dWj3EDl3I3TirQ": true,
"9pc-nuEqtlVhTPN0GZo4T41kqYiil1snlX0E1D0EO0M": true,
"7opslE8cxiZPeJLOvnM31C8l8LcmUkFH3N7BsFq8ipI": false,
"9drU_gXb-6XnOOzehJTYcasMZj2n0qQsqGUoVM6CitY": true,
"4KjMjbI2RA5zHT2l2fbeICYnazJRcv69ESGYAHFgs3U": true,
"7ZF0pHWOoBbQw2y4cKJKLdlMh7q6bCsD6zZJLmb20dQ": true,
"6Dk56vY370ul-7Y2yqDyZZ411iEn0ElYyLRxItxQ6z0": true,
"5RnYOC3P7voeW3WeWA_UOKhP6iFy2ZmVy6wzjAKkTxQ": true,
"64cY4C0kVL5Uh6UiazgGw5Kt7ovXLt5dVgX_SXa3pdo": true,
"5gMr6wyeZVmsANl1gImJk51QZThKYXvr78lL4Uw80B0": true,
"5TAc3NSlUsl2FNHXztOqoOSgfnRrjy_9yPozaECFucg": true,
"0HztiTN6s_DkMsMbtTHjpLqdcqg40W3fUs5QcPHpY3E": true,
"-GBed-KOGdQcfz0NVeBi_mUBua-9xWLI9n9pfpZM718": false,
"8TDax40m17XwqW882N0uV1vHofxW4SXN4YWrOHNjaG0": true,
"-VfY_HF1e8dhm7LkptBroP4qIZcsjMXcTkWjSBvkik0": false,
"0_eoQPrfqNzsMYyvUaM7pa3tUPHJXw8tWA8boOcouv0": true,
"TAGKSqaxu7NlHqsr4wQEhMHioLRfAcowBJtssepic5o": true,
"aRaBUGA8XjJ-3L_YYC65q0bWPe_IUUB12zfrJNPNecE": true,
"GyPxy-OH3eew8uARJksJkX5WJkhRlPx6sOjG4TduN8M": true,
"nRvj6dMIZBhMIrf6kp_7u_cKzbrCblrL6IdKbNV5dls": false,
"n5yVu4Rp2CNR9xTRx4CsqQ8borweFkJSGp0svQu-3jg": true,
"rc1Bfs9phpJ5rE-okTUWlpOEJi0c0BvKlPjTDSrH7gE": true,
"nMAMVR0NJG9QN7ZtiJtPy0tzb8Rx_QxqZCyPCz95BUM": true,
"v4SH8tE5-rvTyYvPEXgzxf5LszyPek6ASZClP4FdJpc": true,
"aRNJIDFflqr69kqGQxbmawBFTY_z3w6ehNx8bqayc4U": true,
"ksnqDtutpDIs2Z39NfhiMvFFS7RDLdyUCb42m8o2MSY": true,
"aYiu_M54xBj_6PAdHyelfx3hBCfw2mDIfAfAINdooag": true,
"OqL1v9WSthhrFzdadaGnl80VJENdvyMd83Uak-Ijdvw": true,
"bfuBXiM9Ag3GT4SkyAFyDJopMUE2GxS_wTJXU9qLo5Y": true,
"QDiLA-F8lCc-08_fCVrqpj-CUxfrKM1BdCGYKELaIbQ": true,
"e4kAQj8cAju0DIW2XHhvJzRyRbPP7EFU9HQf0_54Hns": true,
"SgVTTfUKoJd0Faeo6UFgai2FQoR2i6teO6R7BkK-Cek": true,
"fJ087o88f7lQrayopxsMd6bMGTt-vG1DeoYQcA2qyR4": true,
"TfjgpmkeELaS0coJ9JV0HlGeMbFiZPT-040U4YXbW5Y": true,
"f_MQsK-DJBdDTrgg6s3oGdpgqS8KFCD-vc_PHhMg_u0": true,
"XKhRP8lx0LEdvg3DfvzBgCbTDoRMNpRtlSGnPtV24Wg": true,
"gWuMdpKp5-LhMa1dpKs37Ymo0X1c_0Bf9hkAWNBTUsk": true,
"XfjbgIqeJfPxj-5n0IgkMG7R_VYFjDHOyR-zuAUWiqI": true,
"i93S_jvkTQPj8hPhImH59kydqdltE18PUNITsXzOnCg": true,
"PKJUAz1EI_JH8EOzE6Rqw9RGLKfag8eG0ANG5zxds7o": true,
"T1aLKSQuwojKPJiIDXMBBLwpCgdU_dCMGuZNbAca9jw": true,
"k19AVBkK7Mx9NaCzriplQVXYCD_griNhEMlxlwjgiME": true,
"jXmRu50XcGRayy-beW9LiXYxcGbfQuD022t13NRgDfo": true,
"istuHXnxwgDClV4rJbcqIluDz0wYIv1qERhHhvYEtuI": true,
"iLtXJmAGXEvcm1aB-bTwYOyGS32G3OFPRZfcX5Lahpg": true,
"X4_azabiKOL4IzuJlJ3U4zy6D5m9I10B0R9gsSnXO4U": true,
"QmlnydLYZ6q95PBppJuDWkpk25h2_prAS4IUd0f6A4Q": true,
"YIIwUqbsKK414TGB6XGxxLFMncr8ih5RnQgYSKR4d1E": true,
"XV67Oyab9xxU-HjV9YKqL_0onDoD9FvQNEqzPu3knkE": true,
"9tCvYoh7wAGy5TE0GBcWTQEamLmHku1tGM9GJ2rt0p4": true,
"2PEiMxGcMs4CAxNcBQyRqMKB_Pjs5ayZIUzvX6I-16Y": true,
"CC4dsLSOTd4gHTviBWjycCxhVmjoSpMly0ytNBl1zZQ": true,
"0uNRls-BDWF_dJQZ4hkvEW2rBV8CmqyNwFL6fP-KH7w": false,
"4kaTGqa7SdZDBigWt6hCxC_09cmSgttdAVNmoG0QPoc": true,
"5w-zR8xWTmLR8ld8u3hMwSitoT-VO4TpwlocAFPLRHE": false,
"88eLhmMxw-b4_G220GBGF_XqvhSwvXIBotT79EqdQ80": true,
"C8Cjsax0aOQrERF_fSIIRSAdP8S_RkjelwmARVrD2jQ": true,
"BGJw1sxj3NgIm4L0G5cOhHVTDC_4Xh1Jyw7bLvaPUJ4": true,
"C3oGnbPBI7K1nC8fZ5ZB6ZiL5cvDybPakPuliE_2zgw": true,
"At1IZAzJprQtGJUA32bwCvVQbnsGWK_I6l73gyIdAaQ": false,
"lBTruEysBXtdd2HEP0dPqNOy4NWrWvz48_DSsQFSpew": true,
"yZuxCH0k9LZAfk1sPZc-90Z3p8gLiFK2aEgOgNdheVA": true,
"5QdKCEySQpI0-sOWbG7__Ib3EZyRacGMjRk1KYZcfPY": true,
"6p-nbyElDyWcUDaqcYIan3Wdew68-G5PrqoAoGv6uRc": true,
"6qmPMm8IKNVgjA2HFQa8ASd2FfNbjZHWKP2KynWPpiI": true,
"1AByHgxVN3QXBZnjAHmaiTHPVPrnito3DIpMK-vgw74": true,
"6GaA9FX6V339q15-CWPqSFzdj2LKLX6j9qZT9fAQMV0": true,
"HArOhxMp9dL35N4yiqdGWhwqQCUq6fWZbps9moj77_c": true,
"Z3o0RhzAyNjvdN534vekP0jRyvALGOXyHeMgYLDx0ko": true,
"cFaOAsuGhzSfNXNehF25hTmdT5H3IDJU8rFY5ToUYiU": false,
"srVLWOHI4IAenVHtbG0_Yx9vijDHnaWwAEHdBuHUZIE": true,
"_F0y7wW5PT8C-eLFbz4jVeCc2bYyYFg-I1ttQdVRdsU": true,
"aZvob-gOO2st8TGTa-CfzFiAcYQNUUliMCZ8s-VBPF8": true,
"eTePPOG772a05KLJry1RyLcM01kgffFhqoqd7XKybCQ": true,
"E-AhTt6A7mZZwshfBG-IbPTbY5PYR-BsHV6iclX173A": true,
"DoudC1fl-ZNt5Rog2ewV0kzlTHPQSKX7AorIqJTuf3I": true,
"G0-rvPooSi1acpUileqj9PhJDGVCucMRytWJZnVT7K0": true,
"NaisLKdWQcrRUmQ1fOIfNt6Lcz0b9bS26LnSCiCkG4I": true,
"zgK2NiEz1IyuKDYMJhB6yOtrRclvZ5z7-4rqVD924iA": true,
"k612ryjf5e1t6IWYDcgDbSOBZnse6c5qBZfTV4posUc": true,
"khO_pEQzcbvagUB8aoKOvamsVK4qYnJckS06NfGbT4o": true,
"1RdZintM0Ggl776lgIIBgy0I9iazVxMpcxoMb0cuFPo": true,
"8lDiAwLhjSs7EZyGzdNgt554pxzqRNWVnm3u4rMPIP0": true,
"gjPeMeUN7DHwmEMJ_FrXvzWOHa2WdZxFvxwfsQS4rpo": true,
"hYa7zhC5_-NOqjw6Dysr6ozOZNxVBZxIhjpoRGY3ofc": true,
"u2XxZZlFKB9HdxyLlricsoEJ6IyM7_TQJqGwICAgLFY": true,
"jzVSNmncG7r44NhQeN1WaeF-JUAWFXWkAmhGzU38fEY": true,
"TBRiqS8HkAX_VIbLKgHUopfDXCXEMl9Jvb4oJe_Ilsk": true,
"9Mqu8Mh7r9wPcjyrFgYzCKcKrObYmjVzJqlUxYUWfF4": true,
"yI0iRiK9C_VR1q928dcYs23QQ8nlg9GxtxAytRuQHzg": true,
"77LPiKrSFoekGX9tIncS_lpQFxyORdjth89MBpR2AEM": true,
"8Y8Fcbn3LV0YH8IPLvXoocGbbuPh_ctJoBsHPlT6n_0": true,
"HuLwBoZCh7WQhG9hduGfNr_SIrayJxEnurF1oYYNioI": true,
"w1bi3dy8HeOYDOvuuSlt8pCMs6M5mrJgIQSA0NRE260": true,
"drQvXOtlq4QHMDCZS03tQs9ElInni4sAkPg2xW__ukg": true,
"RoSLnoTZw8MeU9Ru-xITHItglr6pSuxFD-ROekA_9L4": true,
"lsHcDjTjP6kQM829yy4ZvCbWyPkhqizvV4TKGuXWDi0": true,
"qYG9SPGazoBsO7UBMmO35CFXAMYrn4TUoQCYeLE1bU8": true,
"UBrExC7Y1ccHiXfD_tMZw0aNtrKvlWUqUsXFHgSluJU": true,
"RaW_er2EidTFdaNXm4D3qRxBZWHN1ofGiYxta-QjDEY": true
}

File diff suppressed because it is too large Load Diff

1005
tools/data/viewblock.json Normal file

File diff suppressed because it is too large Load Diff

32
tools/loot-contract.ts Normal file
View File

@@ -0,0 +1,32 @@
import Arweave from 'arweave';
import { LoggerFactory } from '../src';
import { TsLogFactory } from '../src/logging/node/TsLogFactory';
import fs from 'fs';
import path from 'path';
import { SmartWeaveWebFactory } from '../src/core/web/SmartWeaveWebFactory';
import { FromFileInteractionsLoader } from './FromFileInteractionsLoader';
async function main() {
LoggerFactory.use(new TsLogFactory());
LoggerFactory.INST.logLevel('debug');
const arweave = Arweave.init({
host: 'arweave.net', // Hostname or IP address for a Arweave host
port: 443, // Port
protocol: 'https', // Network protocol http or https
timeout: 60000, // Network request timeouts in milliseconds
logging: false // Enable network request logging
});
const interactionsLoader = new FromFileInteractionsLoader(path.join(__dirname, 'data', 'interactions.json'));
const smartweave = SmartWeaveWebFactory.memCachedBased(arweave).setInteractionsLoader(interactionsLoader).build();
const lootContract = smartweave.contract('Daj-MNSnH55TDfxqC7v4eq0lKzVIwh98srUaWqyuZtY');
const { state } = await lootContract.readState();
fs.writeFileSync(path.join(__dirname, 'data', 'loot.json'), JSON.stringify(state));
}
main().catch((e) => console.error(e));

View File

@@ -0,0 +1,88 @@
import interactions from './data/interactions.json';
import Arweave from 'arweave';
import { LoggerFactory } from '../src';
import { TsLogFactory } from '../src/logging/node/TsLogFactory';
import { GQLEdgeInterface } from 'smartweave/lib/interfaces/gqlResult';
import fs from 'fs';
import path from 'path';
async function main() {
LoggerFactory.use(new TsLogFactory());
const logger = LoggerFactory.INST.create('checker');
LoggerFactory.INST.logLevel('debug');
const arweave = Arweave.init({
host: 'arweave.net', // Hostname or IP address for a Arweave host
port: 443, // Port
protocol: 'https', // Network protocol http or https
timeout: 60000, // Network request timeouts in milliseconds
logging: false // Enable network request logging
});
const result = [];
for (const t of (interactions['cachedValue'] as Array<GQLEdgeInterface>)) {
const index: number = (interactions['cachedValue'] as Array<GQLEdgeInterface>).indexOf(t);
const tx = t.node;
logger.debug('Checking', {
index,
height: tx.block.height,
id: tx.id
});
const transactionStatus = await arweave.transactions.getStatus(tx.id);
let numberOfConfirmations = null;
let blockHeight = null;
let properNumberOfConfirmations = null;
let confirmationsDiff = null;
let currentHeight = null;
let lowConfirmations = false;
let tooBigConfirmationsDiff = false;
if (transactionStatus.status !== 404 && transactionStatus.confirmed !== null) {
const info = await arweave.network.getInfo();
currentHeight = info.height;
logger.debug('Current height:', currentHeight);
numberOfConfirmations = transactionStatus.confirmed.number_of_confirmations;
if (numberOfConfirmations < 10) {
logger.warn('Low amount of confirmations:', numberOfConfirmations);
lowConfirmations = true;
}
blockHeight = transactionStatus.confirmed.block_height;
properNumberOfConfirmations = currentHeight - blockHeight;
confirmationsDiff = currentHeight - blockHeight - numberOfConfirmations;
if (confirmationsDiff > 2) {
logger.warn('Too big confirmations diff', {
numberOfConfirmations,
properNumberOfConfirmations,
confirmationsDiff
});
tooBigConfirmationsDiff = true;
}
} else {
logger.warn('Wrong status', transactionStatus);
}
result.push({
index: index,
id: tx.id,
status: transactionStatus.status,
networkHeight: currentHeight,
confirmations: numberOfConfirmations,
height: blockHeight,
theoreticalNumberOfConfirmations: properNumberOfConfirmations,
confirmationsDiff: confirmationsDiff,
lowConfirmations: lowConfirmations,
tooBigConfirmationsDiff: tooBigConfirmationsDiff
});
}
const resultString = JSON.stringify(result);
fs.writeFileSync(path.join(__dirname, 'result_fixed.json'), resultString);
}
main().catch((e) => console.error(e));

View File

@@ -0,0 +1,28 @@
import Arweave from 'arweave';
import { LoggerFactory } from '../src';
import { TsLogFactory } from '../src/logging/node/TsLogFactory';
import fs from 'fs';
import path from 'path';
import { ContractInteractionsLoader } from '../src/core/modules/impl/ContractInteractionsLoader';
async function main() {
LoggerFactory.use(new TsLogFactory());
LoggerFactory.INST.logLevel('debug');
const arweave = Arweave.init({
host: 'arweave.net', // Hostname or IP address for a Arweave host
port: 443, // Port
protocol: 'https', // Network protocol http or https
timeout: 60000, // Network request timeouts in milliseconds
logging: false // Enable network request logging
});
const transactionsLoader = new ContractInteractionsLoader(arweave);
const result = await transactionsLoader.load('Daj-MNSnH55TDfxqC7v4eq0lKzVIwh98srUaWqyuZtY', 769686, 769686);
fs.writeFileSync(path.join(__dirname, 'transactions.json'), JSON.stringify(result));
}
main().catch((e) => console.error(e));

View File

@@ -0,0 +1,59 @@
import got from 'got';
import { LoggerFactory } from '../src';
import { TsLogFactory } from '../src/logging/node/TsLogFactory';
import cheerio from 'cheerio';
import fs from 'fs';
import path from 'path';
import { sleep } from '../src/utils';
const viewblockUrl = 'https://viewblock.io/arweave/address/Daj-MNSnH55TDfxqC7v4eq0lKzVIwh98srUaWqyuZtY?page=';
const pageFrom = 36;
const pageTo = 42;
(async () => {
LoggerFactory.use(new TsLogFactory());
LoggerFactory.INST.logLevel('debug');
const logger = LoggerFactory.INST.create('scraper');
const transactions = {};
for (let i = pageFrom; i <= pageTo; i++) {
logger.info('Loading page', i);
const response = await got(`${viewblockUrl}${i}`);
logger.debug('Response:', {
status: response.statusCode,
message: response.statusMessage
});
const $ = cheerio.load(response.body);
$('table > tbody > tr').each((index, element) => {
let txId = null;
let validity = null;
const $tr = cheerio.load(element);
$tr("td.ell > a[href^='/arweave/tx/']").each((idx2, el2) => {
const tx = el2.attribs.href;
txId = tx.replace('/arweave/tx/', '');
});
$tr('td > div').each((idx2, el2) => {
if (idx2 !== 0) {
return;
}
const title = el2.attribs.title;
logger.debug(title);
validity = title.localeCompare('Contract execution') === 0;
});
logger.debug(`${txId}: ${validity}`);
transactions[txId] = validity;
});
await sleep(1000);
}
fs.writeFileSync(path.join(__dirname, 'data', 'viewblock-transactions-2.json'), JSON.stringify(transactions));
})();

View File

@@ -13,6 +13,7 @@
"esModuleInterop": true,
"suppressImplicitAnyIndexErrors": true,
"allowSyntheticDefaultImports": true,
"resolveJsonModule": true,
"baseUrl": "./src",
"paths": {
"@smartweave/cache": ["cache/index"],

301
yarn.lock
View File

@@ -693,6 +693,11 @@
resolved "https://registry.yarnpkg.com/@protobufjs/utf8/-/utf8-1.1.0.tgz#a777360b5b39a1a2e5106f8e858f2fd2d060c570"
integrity sha1-p3c2C1s5oaLlEG+OhY8v0tBgxXA=
"@sindresorhus/is@^4.0.0":
version "4.2.0"
resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-4.2.0.tgz#667bfc6186ae7c9e0b45a08960c551437176e1ca"
integrity sha512-VkE3KLBmJwcCaVARtQpfuKcKv8gcBmUubrfHGF84dXuuW6jgsRYxPtzcIhPyK9WAPpRt2/xY6zkD9MnRaJzSyw==
"@sinonjs/commons@^1.7.0":
version "1.8.3"
resolved "https://registry.yarnpkg.com/@sinonjs/commons/-/commons-1.8.3.tgz#3802ddd21a50a949b6721ddd72da36e67e7f1b2d"
@@ -707,6 +712,13 @@
dependencies:
"@sinonjs/commons" "^1.7.0"
"@szmarczak/http-timer@^4.0.5":
version "4.0.6"
resolved "https://registry.yarnpkg.com/@szmarczak/http-timer/-/http-timer-4.0.6.tgz#b4a914bb62e7c272d4e5989fe4440f812ab1d807"
integrity sha512-4BAffykYOgO+5nzBWYwE3W90sBgLJoUPRWWcL8wlyiM8IB8ipJz3UMJ9KXQd1RKQXpKp8Tutn80HZtWsu2u76w==
dependencies:
defer-to-connect "^2.0.0"
"@tootallnate/once@1":
version "1.1.2"
resolved "https://registry.yarnpkg.com/@tootallnate/once/-/once-1.1.2.tgz#ccb91445360179a04e7fe6aff78c00ffc1eeaf82"
@@ -792,6 +804,23 @@
resolved "https://registry.yarnpkg.com/@types/browser-or-node/-/browser-or-node-1.3.0.tgz#896ec59bcb8109fc858d8e68d3c056c176a19622"
integrity sha512-MVetr65IR7RdJbUxVHsaPFaXAO8fi89zv1g8L/mHygh1Q7xnnK02XZLwfMh57FOpTO6gtnagoPMQ/UOFfctXRQ==
"@types/cacheable-request@^6.0.1":
version "6.0.2"
resolved "https://registry.yarnpkg.com/@types/cacheable-request/-/cacheable-request-6.0.2.tgz#c324da0197de0a98a2312156536ae262429ff6b9"
integrity sha512-B3xVo+dlKM6nnKTcmm5ZtY/OL8bOAOd2Olee9M1zft65ox50OzjEHW91sDiU9j6cvW8Ejg1/Qkf4xd2kugApUA==
dependencies:
"@types/http-cache-semantics" "*"
"@types/keyv" "*"
"@types/node" "*"
"@types/responselike" "*"
"@types/cheerio@^0.22.30":
version "0.22.30"
resolved "https://registry.yarnpkg.com/@types/cheerio/-/cheerio-0.22.30.tgz#6c1ded70d20d890337f0f5144be2c5e9ce0936e6"
integrity sha512-t7ZVArWZlq3dFa9Yt33qFBQIK4CQd1Q3UJp0V+UhP6vgLWLM6Qug7vZuRSGXg45zXeB1Fm5X2vmBkEX58LV2Tw==
dependencies:
"@types/node" "*"
"@types/cli-color@*":
version "2.0.1"
resolved "https://registry.yarnpkg.com/@types/cli-color/-/cli-color-2.0.1.tgz#9815147585a16ed5f1a408b5d0bb2bdb7fe552b6"
@@ -871,6 +900,11 @@
resolved "https://registry.yarnpkg.com/@types/http-assert/-/http-assert-1.5.3.tgz#ef8e3d1a8d46c387f04ab0f2e8ab8cb0c5078661"
integrity sha512-FyAOrDuQmBi8/or3ns4rwPno7/9tJTijVW6aQQjK02+kOQ8zmoNg2XJtAuQhvQcy1ASJq38wirX5//9J1EqoUA==
"@types/http-cache-semantics@*":
version "4.0.1"
resolved "https://registry.yarnpkg.com/@types/http-cache-semantics/-/http-cache-semantics-4.0.1.tgz#0ea7b61496902b95890dc4c3a116b60cb8dae812"
integrity sha512-SZs7ekbP8CN0txVG2xVRH6EgKmEm31BOxA07vkFaETzZz1xh+cbt8BcI0slpymvwhx5dlFnQG2rTlPVQn+iRPQ==
"@types/http-errors@*":
version "1.8.1"
resolved "https://registry.yarnpkg.com/@types/http-errors/-/http-errors-1.8.1.tgz#e81ad28a60bee0328c6d2384e029aec626f1ae67"
@@ -926,6 +960,13 @@
resolved "https://registry.yarnpkg.com/@types/keygrip/-/keygrip-1.0.2.tgz#513abfd256d7ad0bf1ee1873606317b33b1b2a72"
integrity sha512-GJhpTepz2udxGexqos8wgaBx4I/zWIDPh/KOGEwAqtuGDkOUJu5eFvwmdBX4AmB8Odsr+9pHCQqiAqDL/yKMKw==
"@types/keyv@*":
version "3.1.3"
resolved "https://registry.yarnpkg.com/@types/keyv/-/keyv-3.1.3.tgz#1c9aae32872ec1f20dcdaee89a9f3ba88f465e41"
integrity sha512-FXCJgyyN3ivVgRoml4h94G/p3kY+u/B86La+QptcqJaWtBWtmc6TtkNfS40n9bIvyLteHh7zXOtgbobORKPbDg==
dependencies:
"@types/node" "*"
"@types/koa-bodyparser@^4.2.1":
version "4.3.3"
resolved "https://registry.yarnpkg.com/@types/koa-bodyparser/-/koa-bodyparser-4.3.3.tgz#9c7d4295576bc863d550002f732f1c57dd88cc58"
@@ -1003,6 +1044,13 @@
resolved "https://registry.yarnpkg.com/@types/range-parser/-/range-parser-1.2.4.tgz#cd667bcfdd025213aafb7ca5915a932590acdcdc"
integrity sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==
"@types/responselike@*", "@types/responselike@^1.0.0":
version "1.0.0"
resolved "https://registry.yarnpkg.com/@types/responselike/-/responselike-1.0.0.tgz#251f4fe7d154d2bad125abe1b429b23afd262e29"
integrity sha512-85Y2BjiufFzaMIlvJDvTTB8Fxl2xfLo4HgmHzVBz08w4wDePCTjYw66PdrolO0kzli3yam/YCgRufyo1DdQVTA==
dependencies:
"@types/node" "*"
"@types/serve-static@*":
version "1.13.10"
resolved "https://registry.yarnpkg.com/@types/serve-static/-/serve-static-1.13.10.tgz#f5e0ce8797d2d7cc5ebeda48a52c96c4fa47a8d9"
@@ -1757,6 +1805,11 @@ body-parser@1.19.0:
raw-body "2.4.0"
type-is "~1.6.17"
boolbase@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e"
integrity sha1-aN/1++YMUes3cl6p4+0xDcwed24=
brace-expansion@^1.1.7:
version "1.1.11"
resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd"
@@ -1842,6 +1895,24 @@ cache-content-type@^1.0.0:
mime-types "^2.1.18"
ylru "^1.2.0"
cacheable-lookup@^5.0.3:
version "5.0.4"
resolved "https://registry.yarnpkg.com/cacheable-lookup/-/cacheable-lookup-5.0.4.tgz#5a6b865b2c44357be3d5ebc2a467b032719a7005"
integrity sha512-2/kNscPhpcxrOigMZzbiWF7dz8ilhb/nIHU3EyZiXWXpeq/au8qJ8VhdftMkty3n7Gj6HIGalQG8oiBNB3AJgA==
cacheable-request@^7.0.1:
version "7.0.2"
resolved "https://registry.yarnpkg.com/cacheable-request/-/cacheable-request-7.0.2.tgz#ea0d0b889364a25854757301ca12b2da77f91d27"
integrity sha512-pouW8/FmiPQbuGpkXQ9BAPv/Mo5xDGANgSNXzTzJ8DrKGuXOssM4wIQRjfanNRh3Yu5cfYPvcorqbhg2KIJtew==
dependencies:
clone-response "^1.0.2"
get-stream "^5.1.0"
http-cache-semantics "^4.0.0"
keyv "^4.0.0"
lowercase-keys "^2.0.0"
normalize-url "^6.0.1"
responselike "^2.0.0"
call-bind@^1.0.0, call-bind@^1.0.2:
version "1.0.2"
resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.2.tgz#b1d4e89e688119c3c9a903ad30abb2f6a919be3c"
@@ -1902,6 +1973,30 @@ chardet@^0.7.0:
resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e"
integrity sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==
cheerio-select@^1.5.0:
version "1.5.0"
resolved "https://registry.yarnpkg.com/cheerio-select/-/cheerio-select-1.5.0.tgz#faf3daeb31b17c5e1a9dabcee288aaf8aafa5823"
integrity sha512-qocaHPv5ypefh6YNxvnbABM07KMxExbtbfuJoIie3iZXX1ERwYmJcIiRrr9H05ucQP1k28dav8rpdDgjQd8drg==
dependencies:
css-select "^4.1.3"
css-what "^5.0.1"
domelementtype "^2.2.0"
domhandler "^4.2.0"
domutils "^2.7.0"
cheerio@^1.0.0-rc.10:
version "1.0.0-rc.10"
resolved "https://registry.yarnpkg.com/cheerio/-/cheerio-1.0.0-rc.10.tgz#2ba3dcdfcc26e7956fc1f440e61d51c643379f3e"
integrity sha512-g0J0q/O6mW8z5zxQ3A8E8J1hUgp4SMOvEoW/x84OwyHKe/Zccz83PVT4y5Crcr530FV6NgmKI1qvGTKVl9XXVw==
dependencies:
cheerio-select "^1.5.0"
dom-serializer "^1.3.2"
domhandler "^4.2.0"
htmlparser2 "^6.1.0"
parse5 "^6.0.1"
parse5-htmlparser2-tree-adapter "^6.0.1"
tslib "^2.2.0"
chokidar@^3.5.0:
version "3.5.2"
resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.5.2.tgz#dba3976fcadb016f66fd365021d91600d01c1e75"
@@ -1968,6 +2063,13 @@ cliui@^7.0.2:
strip-ansi "^6.0.0"
wrap-ansi "^7.0.0"
clone-response@^1.0.2:
version "1.0.2"
resolved "https://registry.yarnpkg.com/clone-response/-/clone-response-1.0.2.tgz#d1dc973920314df67fbeb94223b4ee350239e96b"
integrity sha1-0dyXOSAxTfZ/vrlCI7TuNQI56Ws=
dependencies:
mimic-response "^1.0.0"
clone@^1.0.2:
version "1.0.4"
resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.4.tgz#da309cc263df15994c688ca902179ca3c7cd7c7e"
@@ -2185,6 +2287,22 @@ cross-spawn@^7.0.2, cross-spawn@^7.0.3:
shebang-command "^2.0.0"
which "^2.0.1"
css-select@^4.1.3:
version "4.1.3"
resolved "https://registry.yarnpkg.com/css-select/-/css-select-4.1.3.tgz#a70440f70317f2669118ad74ff105e65849c7067"
integrity sha512-gT3wBNd9Nj49rAbmtFHj1cljIAOLYSX1nZ8CB7TBO3INYckygm5B7LISU/szY//YmdiSLbJvDLOx9VnMVpMBxA==
dependencies:
boolbase "^1.0.0"
css-what "^5.0.0"
domhandler "^4.2.0"
domutils "^2.6.0"
nth-check "^2.0.0"
css-what@^5.0.0, css-what@^5.0.1:
version "5.0.1"
resolved "https://registry.yarnpkg.com/css-what/-/css-what-5.0.1.tgz#3efa820131f4669a8ac2408f9c32e7c7de9f4cad"
integrity sha512-FYDTSHb/7KXsWICVsxdmiExPjCfRC4qRFBdVwv7Ax9hMnvMmEjP9RfxTEZ3qPZGmADDn2vAKSo9UcN1jKVYscg==
cssfilter@0.0.10:
version "0.0.10"
resolved "https://registry.yarnpkg.com/cssfilter/-/cssfilter-0.0.10.tgz#c6d2672632a2e5c83e013e6864a42ce8defd20ae"
@@ -2271,6 +2389,13 @@ decimal.js@^10.2.1:
resolved "https://registry.yarnpkg.com/decimal.js/-/decimal.js-10.3.1.tgz#d8c3a444a9c6774ba60ca6ad7261c3a94fd5e783"
integrity sha512-V0pfhfr8suzyPGOx3nmq4aHqabehUZn6Ch9kyFpV79TGDTWFmHqUqXdabR7QHqxzrYolF4+tVmJhUG4OURg5dQ==
decompress-response@^6.0.0:
version "6.0.0"
resolved "https://registry.yarnpkg.com/decompress-response/-/decompress-response-6.0.0.tgz#ca387612ddb7e104bd16d85aab00d5ecf09c66fc"
integrity sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==
dependencies:
mimic-response "^3.1.0"
dedent@^0.7.0:
version "0.7.0"
resolved "https://registry.yarnpkg.com/dedent/-/dedent-0.7.0.tgz#2495ddbaf6eb874abb0e1be9df22d2e5a544326c"
@@ -2303,6 +2428,11 @@ defaults@^1.0.3:
dependencies:
clone "^1.0.2"
defer-to-connect@^2.0.0:
version "2.0.1"
resolved "https://registry.yarnpkg.com/defer-to-connect/-/defer-to-connect-2.0.1.tgz#8016bdb4143e4632b77a3449c6236277de520587"
integrity sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg==
define-properties@^1.1.3:
version "1.1.3"
resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1"
@@ -2386,6 +2516,20 @@ doctrine@^3.0.0:
dependencies:
esutils "^2.0.2"
dom-serializer@^1.0.1, dom-serializer@^1.3.2:
version "1.3.2"
resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-1.3.2.tgz#6206437d32ceefaec7161803230c7a20bc1b4d91"
integrity sha512-5c54Bk5Dw4qAxNOI1pFEizPSjVsx5+bpJKmL2kPn8JhBUq2q09tTCa3mjijun2NfK78NMouDYNMBkOrPZiS+ig==
dependencies:
domelementtype "^2.0.1"
domhandler "^4.2.0"
entities "^2.0.0"
domelementtype@^2.0.1, domelementtype@^2.2.0:
version "2.2.0"
resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.2.0.tgz#9a0b6c2782ed6a1c7323d42267183df9bd8b1d57"
integrity sha512-DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A==
domexception@^2.0.1:
version "2.0.1"
resolved "https://registry.yarnpkg.com/domexception/-/domexception-2.0.1.tgz#fb44aefba793e1574b0af6aed2801d057529f304"
@@ -2393,6 +2537,22 @@ domexception@^2.0.1:
dependencies:
webidl-conversions "^5.0.0"
domhandler@^4.0.0, domhandler@^4.2.0:
version "4.2.2"
resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-4.2.2.tgz#e825d721d19a86b8c201a35264e226c678ee755f"
integrity sha512-PzE9aBMsdZO8TK4BnuJwH0QT41wgMbRzuZrHUcpYncEjmQazq8QEaBWgLG7ZyC/DAZKEgglpIA6j4Qn/HmxS3w==
dependencies:
domelementtype "^2.2.0"
domutils@^2.5.2, domutils@^2.6.0, domutils@^2.7.0:
version "2.8.0"
resolved "https://registry.yarnpkg.com/domutils/-/domutils-2.8.0.tgz#4437def5db6e2d1f5d6ee859bd95ca7d02048135"
integrity sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==
dependencies:
dom-serializer "^1.0.1"
domelementtype "^2.2.0"
domhandler "^4.2.0"
duplexer@~0.1.1:
version "0.1.2"
resolved "https://registry.yarnpkg.com/duplexer/-/duplexer-0.1.2.tgz#3abe43aef3835f8ae077d136ddce0f276b0400e6"
@@ -2431,6 +2591,13 @@ encodeurl@^1.0.2, encodeurl@~1.0.2:
resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59"
integrity sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=
end-of-stream@^1.1.0:
version "1.4.4"
resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.4.tgz#5ae64a5f45057baf3626ec14da0ca5e4b2431eb0"
integrity sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==
dependencies:
once "^1.4.0"
enquirer@^2.3.5:
version "2.3.6"
resolved "https://registry.yarnpkg.com/enquirer/-/enquirer-2.3.6.tgz#2a7fe5dd634a1e4125a975ec994ff5456dc3734d"
@@ -2438,6 +2605,11 @@ enquirer@^2.3.5:
dependencies:
ansi-colors "^4.1.1"
entities@^2.0.0:
version "2.2.0"
resolved "https://registry.yarnpkg.com/entities/-/entities-2.2.0.tgz#098dc90ebb83d8dffa089d55256b351d34c4da55"
integrity sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==
es-abstract@^1.18.0-next.2:
version "1.18.5"
resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.18.5.tgz#9b10de7d4c206a3581fd5b2124233e04db49ae19"
@@ -3098,6 +3270,13 @@ get-package-type@^0.1.0:
resolved "https://registry.yarnpkg.com/get-package-type/-/get-package-type-0.1.0.tgz#8de2d803cff44df3bc6c456e6668b36c3926e11a"
integrity sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==
get-stream@^5.1.0:
version "5.2.0"
resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-5.2.0.tgz#4966a1795ee5ace65e706c4b7beb71257d6e22d3"
integrity sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==
dependencies:
pump "^3.0.0"
get-stream@^6.0.0:
version "6.0.1"
resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-6.0.1.tgz#a262d8eef67aced57c2852ad6167526a43cbf7b7"
@@ -3178,6 +3357,23 @@ globby@^11.0.2, globby@^11.0.3:
merge2 "^1.3.0"
slash "^3.0.0"
got@^11.8.2:
version "11.8.2"
resolved "https://registry.yarnpkg.com/got/-/got-11.8.2.tgz#7abb3959ea28c31f3576f1576c1effce23f33599"
integrity sha512-D0QywKgIe30ODs+fm8wMZiAcZjypcCodPNuMz5H9Mny7RJ+IjJ10BdmGW7OM7fHXP+O7r6ZwapQ/YQmMSvB0UQ==
dependencies:
"@sindresorhus/is" "^4.0.0"
"@szmarczak/http-timer" "^4.0.5"
"@types/cacheable-request" "^6.0.1"
"@types/responselike" "^1.0.0"
cacheable-lookup "^5.0.3"
cacheable-request "^7.0.1"
decompress-response "^6.0.0"
http2-wrapper "^1.0.0-beta.5.2"
lowercase-keys "^2.0.0"
p-cancelable "^2.0.0"
responselike "^2.0.0"
graceful-fs@^4.1.2, graceful-fs@^4.2.4:
version "4.2.8"
resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.8.tgz#e412b8d33f5e006593cbd3cee6df9f2cebbe802a"
@@ -3298,6 +3494,16 @@ html-escaper@^2.0.0:
resolved "https://registry.yarnpkg.com/html-escaper/-/html-escaper-2.0.2.tgz#dfd60027da36a36dfcbe236262c00a5822681453"
integrity sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==
htmlparser2@^6.1.0:
version "6.1.0"
resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-6.1.0.tgz#c4d762b6c3371a05dbe65e94ae43a9f845fb8fb7"
integrity sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==
dependencies:
domelementtype "^2.0.1"
domhandler "^4.0.0"
domutils "^2.5.2"
entities "^2.0.0"
http-assert@^1.3.0:
version "1.5.0"
resolved "https://registry.yarnpkg.com/http-assert/-/http-assert-1.5.0.tgz#c389ccd87ac16ed2dfa6246fd73b926aa00e6b8f"
@@ -3306,6 +3512,11 @@ http-assert@^1.3.0:
deep-equal "~1.0.1"
http-errors "~1.8.0"
http-cache-semantics@^4.0.0:
version "4.1.0"
resolved "https://registry.yarnpkg.com/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz#49e91c5cbf36c9b94bcfcd71c23d5249ec74e390"
integrity sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==
http-errors@1.7.2:
version "1.7.2"
resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.7.2.tgz#4f5029cf13239f31036e5b2e55292bcfbcc85c8f"
@@ -3357,6 +3568,14 @@ http-signature@~1.2.0:
jsprim "^1.2.2"
sshpk "^1.7.0"
http2-wrapper@^1.0.0-beta.5.2:
version "1.0.3"
resolved "https://registry.yarnpkg.com/http2-wrapper/-/http2-wrapper-1.0.3.tgz#b8f55e0c1f25d4ebd08b3b0c2c079f9590800b3d"
integrity sha512-V+23sDMr12Wnz7iTcDeJr3O6AIxlnvT/bmaAAAP/Xda35C90p9599p0F1eHR/N1KILWSoWVAiOMFjBBXaXSMxg==
dependencies:
quick-lru "^5.1.1"
resolve-alpn "^1.0.0"
https-proxy-agent@^5.0.0:
version "5.0.0"
resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-5.0.0.tgz#e2a90542abb68a762e0a0850f6c9edadfd8506b2"
@@ -4183,6 +4402,11 @@ json-beautify@^1.1.1:
resolved "https://registry.yarnpkg.com/json-beautify/-/json-beautify-1.1.1.tgz#8a1ed511ad5d52ca63ed29f7c61896c6a6ebbb9f"
integrity sha512-17j+Hk2lado0xqKtUcyAjK0AtoHnPSIgktWRsEXgdFQFG9UnaGw6CHa0J7xsvulxRpFl6CrkDFHght1p5ZJc4A==
json-buffer@3.0.1:
version "3.0.1"
resolved "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.1.tgz#9338802a30d3b6605fbe0613e094008ca8c05a13"
integrity sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==
json-schema-traverse@^0.4.1:
version "0.4.1"
resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660"
@@ -4239,6 +4463,13 @@ keygrip@~1.1.0:
dependencies:
tsscmp "1.0.6"
keyv@^4.0.0:
version "4.0.3"
resolved "https://registry.yarnpkg.com/keyv/-/keyv-4.0.3.tgz#4f3aa98de254803cafcd2896734108daa35e4254"
integrity sha512-zdGa2TOpSZPq5mU6iowDARnMBZgtCqJ11dJROFi6tg6kTn4nuUdU09lFyLFSaHrWqpIJ+EBq4E8/Dc0Vx5vLdA==
dependencies:
json-buffer "3.0.1"
kleur@^3.0.3:
version "3.0.3"
resolved "https://registry.yarnpkg.com/kleur/-/kleur-3.0.3.tgz#a79c9ecc86ee1ce3fa6206d1216c501f147fc07e"
@@ -4434,6 +4665,11 @@ long@^4.0.0:
resolved "https://registry.yarnpkg.com/long/-/long-4.0.0.tgz#9a7b71cfb7d361a194ea555241c92f7468d5bf28"
integrity sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA==
lowercase-keys@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-2.0.0.tgz#2603e78b7b4b0006cbca2fbcc8a3202558ac9479"
integrity sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==
lru-cache@^6.0.0:
version "6.0.0"
resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94"
@@ -4545,6 +4781,16 @@ mimic-fn@^2.1.0:
resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b"
integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==
mimic-response@^1.0.0:
version "1.0.1"
resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-1.0.1.tgz#4923538878eef42063cb8a3e3b0798781487ab1b"
integrity sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==
mimic-response@^3.1.0:
version "3.1.0"
resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-3.1.0.tgz#2d1d59af9c1b129815accc2c46a022a5ce1fa3c9"
integrity sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==
minimalistic-assert@^1.0.0:
version "1.0.1"
resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7"
@@ -4749,6 +4995,11 @@ normalize-path@^3.0.0, normalize-path@~3.0.0:
resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65"
integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==
normalize-url@^6.0.1:
version "6.1.0"
resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-6.1.0.tgz#40d0885b535deffe3f3147bec877d05fe4c5668a"
integrity sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==
npm-bundled@^1.0.1:
version "1.1.2"
resolved "https://registry.yarnpkg.com/npm-bundled/-/npm-bundled-1.1.2.tgz#944c78789bd739035b70baa2ca5cc32b8d860bc1"
@@ -4787,6 +5038,13 @@ npm-run-path@^4.0.1:
gauge "~2.7.3"
set-blocking "~2.0.0"
nth-check@^2.0.0:
version "2.0.1"
resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-2.0.1.tgz#2efe162f5c3da06a28959fbd3db75dbeea9f0fc2"
integrity sha512-it1vE95zF6dTT9lBsYbxvqh0Soy4SPowchj0UBGj/V6cTPnXXtQOPUbhZ6CmGzAD/rW22LQK6E96pcdJXk4A4w==
dependencies:
boolbase "^1.0.0"
number-is-nan@^1.0.0:
version "1.0.1"
resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d"
@@ -4848,7 +5106,7 @@ on-finished@^2.3.0, on-finished@~2.3.0:
dependencies:
ee-first "1.1.1"
once@^1.3.0, once@^1.4.0:
once@^1.3.0, once@^1.3.1, once@^1.4.0:
version "1.4.0"
resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1"
integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E=
@@ -4924,6 +5182,11 @@ osenv@0, osenv@^0.1.4:
os-homedir "^1.0.0"
os-tmpdir "^1.0.0"
p-cancelable@^2.0.0:
version "2.1.1"
resolved "https://registry.yarnpkg.com/p-cancelable/-/p-cancelable-2.1.1.tgz#aab7fbd416582fa32a3db49859c122487c5ed2cf"
integrity sha512-BZOr3nRQHOntUjTrH8+Lh54smKHoHyur8We1V8DSMVrl5A2malOOwuJRnKRDjSnkoeBh4at6BwEnb5I7Jl31wg==
p-each-series@^2.1.0:
version "2.2.0"
resolved "https://registry.yarnpkg.com/p-each-series/-/p-each-series-2.2.0.tgz#105ab0357ce72b202a8a8b94933672657b5e2a9a"
@@ -4960,7 +5223,14 @@ parse-passwd@^1.0.0:
resolved "https://registry.yarnpkg.com/parse-passwd/-/parse-passwd-1.0.0.tgz#6d5b934a456993b23d37f40a382d6f1666a8e5c6"
integrity sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY=
parse5@6.0.1:
parse5-htmlparser2-tree-adapter@^6.0.1:
version "6.0.1"
resolved "https://registry.yarnpkg.com/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-6.0.1.tgz#2cdf9ad823321140370d4dbf5d3e92c7c8ddc6e6"
integrity sha512-qPuWvbLgvDGilKc5BoicRovlT4MtYT6JfJyBOMDsKoiT+GiuP5qyrPCnR9HcPECIJJmZh5jRndyNThnhhb/vlA==
dependencies:
parse5 "^6.0.1"
parse5@6.0.1, parse5@^6.0.1:
version "6.0.1"
resolved "https://registry.yarnpkg.com/parse5/-/parse5-6.0.1.tgz#e1a1c085c569b3dc08321184f19a39cc27f7c30b"
integrity sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==
@@ -5121,6 +5391,14 @@ psl@^1.1.28, psl@^1.1.33:
resolved "https://registry.yarnpkg.com/psl/-/psl-1.8.0.tgz#9326f8bcfb013adcc005fdff056acce020e51c24"
integrity sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==
pump@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64"
integrity sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==
dependencies:
end-of-stream "^1.1.0"
once "^1.3.1"
punycode@^2.1.0, punycode@^2.1.1:
version "2.1.1"
resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec"
@@ -5148,6 +5426,11 @@ queue-microtask@^1.2.2:
resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243"
integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==
quick-lru@^5.1.1:
version "5.1.1"
resolved "https://registry.yarnpkg.com/quick-lru/-/quick-lru-5.1.1.tgz#366493e6b3e42a3a6885e2e99d18f80fb7a8c932"
integrity sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==
randy@~1.5.1:
version "1.5.1"
resolved "https://registry.yarnpkg.com/randy/-/randy-1.5.1.tgz#e7dc086a0ecb8bef7d67356642cd2a33f962465c"
@@ -5277,6 +5560,11 @@ require-from-string@^2.0.2:
resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-2.0.2.tgz#89a7fdd938261267318eafe14f9c32e598c36909"
integrity sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==
resolve-alpn@^1.0.0:
version "1.2.1"
resolved "https://registry.yarnpkg.com/resolve-alpn/-/resolve-alpn-1.2.1.tgz#b7adbdac3546aaaec20b45e7d8265927072726f9"
integrity sha512-0a1F4l73/ZFZOakJnQ3FvkJ2+gSTQWz/r2KE5OdDY0TxPm5h4GkqkWWfM47T7HsbnOtcJVEF4epCVy6u7Q3K+g==
resolve-cwd@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/resolve-cwd/-/resolve-cwd-3.0.0.tgz#0f0075f1bb2544766cf73ba6a6e2adfebcb13f2d"
@@ -5310,6 +5598,13 @@ resolve@^1.20.0, resolve@^1.9.0:
is-core-module "^2.2.0"
path-parse "^1.0.6"
responselike@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/responselike/-/responselike-2.0.0.tgz#26391bcc3174f750f9a79eacc40a12a5c42d7723"
integrity sha512-xH48u3FTB9VsZw7R+vvgaKeLKzT6jOogbQhEe/jewwnZgzPcnyWui2Av6JpoYZF/91uueC+lqhWqeURw5/qhCw==
dependencies:
lowercase-keys "^2.0.0"
restore-cursor@^3.1.0:
version "3.1.0"
resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-3.1.0.tgz#39f67c54b3a7a58cea5236d95cf0034239631f7e"
@@ -6061,7 +6356,7 @@ tslib@^1.10.0, tslib@^1.8.1, tslib@^1.9.0, tslib@^1.9.3:
resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00"
integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==
tslib@^2.1.0, tslib@^2.3.0:
tslib@^2.1.0, tslib@^2.2.0, tslib@^2.3.0:
version "2.3.1"
resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.3.1.tgz#e8a335add5ceae51aa261d32a490158ef042ef01"
integrity sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==