Skip to content

Commit 3a6118c

Browse files
author
iGroza
committed
feat: tron provider for mnemonic
1 parent 73c31e8 commit 3a6118c

File tree

4 files changed

+234
-11
lines changed

4 files changed

+234
-11
lines changed

package.json

+5-3
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,12 @@
11
{
22
"name": "@haqq/rn-wallet-providers",
3-
"version": "0.0.4",
3+
"version": "0.0.5",
44
"description": "React Native providers for Haqq wallet",
55
"main": "dist/index.js",
66
"types": "dist/index.d.ts",
77
"files": [
8-
"dist/**/*"
8+
"dist/**/*",
9+
"src"
910
],
1011
"license": "MIT",
1112
"repository": {
@@ -36,7 +37,8 @@
3637
"bip39": "^3.1.0",
3738
"ethers": "^5.7.2",
3839
"events": "^3.3.0",
39-
"rxjs": "^7.8.0"
40+
"rxjs": "^7.8.0",
41+
"tronweb": "6.0.0"
4042
},
4143
"peerDependencies": {
4244
"@haqq/encryption-react-native": "*",

src/providers/mnemonic/index.ts

+1
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
export * from './tron-provider';
12
export * from './evm-provider';
23
export * from './provider';
34
export * from './types';
+94
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,94 @@
1+
import {derive} from '@haqq/provider-web3-utils';
2+
import tron from 'tronweb';
3+
4+
import {ProviderMnemonicBase} from './provider';
5+
6+
import {getMnemonic} from '../../utils/mnemonic/get-mnemonic';
7+
import {
8+
BytesLike,
9+
ProviderInterface,
10+
TransactionRequest,
11+
TypedData,
12+
} from '../types';
13+
14+
export class ProviderMnemonicTron
15+
extends ProviderMnemonicBase
16+
implements ProviderInterface
17+
{
18+
async signTransaction(
19+
hdPath: string,
20+
transaction: TransactionRequest,
21+
): Promise<string> {
22+
let resp = '';
23+
try {
24+
const share = await getMnemonic(
25+
this._options.account,
26+
this._options.getPassword,
27+
);
28+
29+
if (!share) {
30+
throw new Error('seed_not_found');
31+
}
32+
33+
const seed = await ProviderMnemonicBase.shareToSeed(share);
34+
35+
const privateKey = await derive(seed, hdPath);
36+
37+
if (!privateKey) {
38+
throw new Error('private_key_not_found');
39+
}
40+
41+
const tronWeb = new tron.TronWeb({
42+
fullHost: 'https://api.trongrid.io',
43+
privateKey: privateKey,
44+
});
45+
46+
// Convert Ethereum-style transaction to Tron transaction
47+
const tronTransaction = {
48+
to_address: tronWeb.address.toHex(transaction.to),
49+
owner_address: tronWeb.address.toHex(transaction.from),
50+
amount: tronWeb.toSun(Number(transaction.value)),
51+
};
52+
53+
// Create an unsigned transaction
54+
const unsignedTxn = await tronWeb.transactionBuilder.sendTrx(
55+
tronTransaction.to_address,
56+
Number(transaction.value),
57+
tronTransaction.owner_address,
58+
);
59+
60+
// Sign the transaction
61+
const signedTxn = await tronWeb.trx.sign(unsignedTxn, privateKey);
62+
63+
// Get the signature
64+
resp = signedTxn.signature[0];
65+
66+
this.emit('signTransaction', true);
67+
} catch (e) {
68+
if (e instanceof Error) {
69+
this.catchError(e, 'signTransaction');
70+
}
71+
}
72+
73+
return resp;
74+
}
75+
76+
async signPersonalMessage(
77+
_hdPath: string,
78+
_message: BytesLike | string,
79+
): Promise<string> {
80+
throw new Error(' signPersonalMessage not implemented');
81+
}
82+
83+
async signTypedData(_hdPath: string, _typedData: TypedData): Promise<string> {
84+
try {
85+
throw new Error(
86+
"Tron blockchain doesn't support signTypedData medthods.",
87+
);
88+
} catch (e) {
89+
this.catchError(e, 'signTypedData');
90+
} finally {
91+
return '';
92+
}
93+
}
94+
}

yarn.lock

+134-8
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,11 @@
22
# yarn lockfile v1
33

44

5+
"@adraffy/ens-normalize@1.10.1":
6+
version "1.10.1"
7+
resolved "https://registry.yarnpkg.com/@adraffy/ens-normalize/-/ens-normalize-1.10.1.tgz#63430d04bd8c5e74f8d7d049338f1cd9d4f02069"
8+
integrity sha512-96Z2IP3mYmF1Xg2cDm8f1gWGf/HUVedQ3FMifV4kG/PQ4yEP51xDtRAEfhVNt5f/uzpNkZHwWQuUcu6D6K+Ekw==
9+
510
"@ampproject/remapping@^2.2.0":
611
version "2.3.0"
712
resolved "https://registry.yarnpkg.com/@ampproject/remapping/-/remapping-2.3.0.tgz#ed441b6fa600072520ce18b43d2c8cc8caecc7f4"
@@ -264,6 +269,13 @@
264269
dependencies:
265270
"@babel/helper-plugin-utils" "^7.25.7"
266271

272+
"@babel/runtime@^7.0.0":
273+
version "7.25.7"
274+
resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.25.7.tgz#7ffb53c37a8f247c8c4d335e89cdf16a2e0d0fb6"
275+
integrity sha512-FjoyLe754PMiYsFaN5C94ttGiOmBNYTf6pLr4xXHAT5uctHb092PBszndLDR5XA/jghQvn4n7JMHl7dmTgbm9w==
276+
dependencies:
277+
regenerator-runtime "^0.14.0"
278+
267279
"@babel/template@^7.25.7", "@babel/template@^7.3.3":
268280
version "7.25.7"
269281
resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.25.7.tgz#27f69ce382855d915b14ab0fe5fb4cbf88fa0769"
@@ -1161,6 +1173,30 @@
11611173
dependencies:
11621174
eslint-scope "5.1.1"
11631175

1176+
"@noble/curves@1.2.0":
1177+
version "1.2.0"
1178+
resolved "https://registry.yarnpkg.com/@noble/curves/-/curves-1.2.0.tgz#92d7e12e4e49b23105a2555c6984d41733d65c35"
1179+
integrity sha512-oYclrNgRaM9SsBUBVbb8M6DTV7ZHRTKugureoYEncY5c65HOmRzvSiTE3y5CYaPYJA/GVkrhXEoF0M3Ya9PMnw==
1180+
dependencies:
1181+
"@noble/hashes" "1.3.2"
1182+
1183+
"@noble/curves@1.4.2", "@noble/curves@~1.4.0":
1184+
version "1.4.2"
1185+
resolved "https://registry.yarnpkg.com/@noble/curves/-/curves-1.4.2.tgz#40309198c76ed71bc6dbf7ba24e81ceb4d0d1fe9"
1186+
integrity sha512-TavHr8qycMChk8UwMld0ZDRvatedkzWfH8IiaeGCfymOP5i0hSCozz9vHOL0nkwk7HRMlFnAiKpS2jrUmSybcw==
1187+
dependencies:
1188+
"@noble/hashes" "1.4.0"
1189+
1190+
"@noble/hashes@1.3.2":
1191+
version "1.3.2"
1192+
resolved "https://registry.yarnpkg.com/@noble/hashes/-/hashes-1.3.2.tgz#6f26dbc8fbc7205873ce3cee2f690eba0d421b39"
1193+
integrity sha512-MVC8EAQp7MvEcm30KWENFjgR+Mkmf+D189XJTkFIlwohU5hcBbn1ZkKq7KVTi2Hme3PMGF390DaL52beVrIihQ==
1194+
1195+
"@noble/hashes@1.4.0", "@noble/hashes@~1.4.0":
1196+
version "1.4.0"
1197+
resolved "https://registry.yarnpkg.com/@noble/hashes/-/hashes-1.4.0.tgz#45814aa329f30e4fe0ba49426f49dfccdd066426"
1198+
integrity sha512-V1JJ1WTRUqHHrOSh597hURcMqVKVGL/ea3kv0gSnEdsEZ0/+VyPghM1lMNGc00z7CIQorSvbKpuJkxvuHbvdbg==
1199+
11641200
"@noble/hashes@^1.2.0":
11651201
version "1.5.0"
11661202
resolved "https://registry.yarnpkg.com/@noble/hashes/-/hashes-1.5.0.tgz#abadc5ca20332db2b1b2aa3e496e9af1213570b0"
@@ -1216,6 +1252,28 @@
12161252
resolved "https://registry.yarnpkg.com/@react-native-community/eslint-plugin/-/eslint-plugin-1.3.0.tgz#9e558170c106bbafaa1ef502bd8e6d4651012bf9"
12171253
integrity sha512-+zDZ20NUnSWghj7Ku5aFphMzuM9JulqCW+aPXT6IfIXFbb8tzYTTOSeRFOtuekJ99ibW2fUCSsjuKNlwDIbHFg==
12181254

1255+
"@scure/base@~1.1.6":
1256+
version "1.1.9"
1257+
resolved "https://registry.yarnpkg.com/@scure/base/-/base-1.1.9.tgz#e5e142fbbfe251091f9c5f1dd4c834ac04c3dbd1"
1258+
integrity sha512-8YKhl8GHiNI/pU2VMaofa2Tor7PJRAjwQLBBuilkJ9L5+13yVbC7JO/wS7piioAvPSwR3JKM1IJ/u4xQzbcXKg==
1259+
1260+
"@scure/bip32@1.4.0":
1261+
version "1.4.0"
1262+
resolved "https://registry.yarnpkg.com/@scure/bip32/-/bip32-1.4.0.tgz#4e1f1e196abedcef395b33b9674a042524e20d67"
1263+
integrity sha512-sVUpc0Vq3tXCkDGYVWGIZTRfnvu8LoTDaev7vbwh0omSvVORONr960MQWdKqJDCReIEmTj3PAr73O3aoxz7OPg==
1264+
dependencies:
1265+
"@noble/curves" "~1.4.0"
1266+
"@noble/hashes" "~1.4.0"
1267+
"@scure/base" "~1.1.6"
1268+
1269+
"@scure/bip39@1.3.0":
1270+
version "1.3.0"
1271+
resolved "https://registry.yarnpkg.com/@scure/bip39/-/bip39-1.3.0.tgz#0f258c16823ddd00739461ac31398b4e7d6a18c3"
1272+
integrity sha512-disdg7gHuTDZtY+ZdkmLpPCk7fxZSu3gBiEGuoC1XYxv9cGx3Z6cpTggCgW6odSOOIXCiDjuGejW+aJKCY/pIQ==
1273+
dependencies:
1274+
"@noble/hashes" "~1.4.0"
1275+
"@scure/base" "~1.1.6"
1276+
12191277
"@sinclair/typebox@^0.27.8":
12201278
version "0.27.8"
12211279
resolved "https://registry.yarnpkg.com/@sinclair/typebox/-/typebox-0.27.8.tgz#6667fac16c436b5434a387a34dedb013198f6e6e"
@@ -1235,6 +1293,11 @@
12351293
dependencies:
12361294
"@sinonjs/commons" "^3.0.0"
12371295

1296+
"@tronweb3/google-protobuf@^3.21.2":
1297+
version "3.21.2"
1298+
resolved "https://registry.yarnpkg.com/@tronweb3/google-protobuf/-/google-protobuf-3.21.2.tgz#0964cf83ed7826d31c3cb4e4ecf07655681631c9"
1299+
integrity sha512-IVcT2GfWX3K6tHUVhs14NP5uzKhQt4KeDya1g9ACxuZsUzsaoGUIGzceK2Ltu7xp1YV94AaHOf4yxLAivlvEkQ==
1300+
12381301
"@types/babel__core@^7.1.14":
12391302
version "7.20.5"
12401303
resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.20.5.tgz#3df15f27ba85319caa07ba08d0721889bb39c017"
@@ -1319,7 +1382,7 @@
13191382
resolved "https://registry.yarnpkg.com/@types/json5/-/json5-0.0.29.tgz#ee28707ae94e11d2b827bcbe5270bcea7f3e71ee"
13201383
integrity sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==
13211384

1322-
"@types/node@*":
1385+
"@types/node@*", "@types/node@22.7.5":
13231386
version "22.7.5"
13241387
resolved "https://registry.yarnpkg.com/@types/node/-/node-22.7.5.tgz#cfde981727a7ab3611a481510b473ae54442b92b"
13251388
integrity sha512-jML7s2NAzMWc//QSJ1a3prpk78cOPchGvXJsC3C6R6PSMoooztvRVQEz89gmBTBY1SPMaqo5teB4uNHPdetShQ==
@@ -1576,6 +1639,11 @@ aes-js@3.0.0:
15761639
resolved "https://registry.yarnpkg.com/aes-js/-/aes-js-3.0.0.tgz#e21df10ad6c2053295bcbb8dab40b09dbea87e4d"
15771640
integrity sha512-H7wUZRn8WpTq9jocdxQ2c8x2sKo9ZVmzfRE13GiNJXfp7NcKYEdvl3vspKjXox6RIG2VtaRe4JFvxG4rqp2Zuw==
15781641

1642+
aes-js@4.0.0-beta.5:
1643+
version "4.0.0-beta.5"
1644+
resolved "https://registry.yarnpkg.com/aes-js/-/aes-js-4.0.0-beta.5.tgz#8d2452c52adedebc3a3e28465d858c11ca315873"
1645+
integrity sha512-G965FqalsNyrPqgEGON7nIx1e/OVENSgiEIzyC63haUMuvNnwIgIjMs52hlTCKhkBny7A2ORNlfY9Zu+jmGk1Q==
1646+
15791647
ajv@^6.10.0, ajv@^6.12.4:
15801648
version "6.12.6"
15811649
resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4"
@@ -1752,7 +1820,7 @@ available-typed-arrays@^1.0.7:
17521820
dependencies:
17531821
possible-typed-array-names "^1.0.0"
17541822

1755-
axios@1.7.7, axios@^1.3.4, axios@^1.6.0:
1823+
axios@1.7.7, axios@^1.3.4, axios@^1.6.0, axios@^1.7.4:
17561824
version "1.7.7"
17571825
resolved "https://registry.yarnpkg.com/axios/-/axios-1.7.7.tgz#2f554296f9892a72ac8d8e4c5b79c14a91d0a47f"
17581826
integrity sha512-S4kL7XrjgBmvdGut0sN3yJxqYzrDOnivkBiN0OFs6hLiUam3UPvswUo0kqGyhqUZGEOytHyumEdXsAkgCOUf3Q==
@@ -2842,6 +2910,16 @@ ethereum-cryptography@^0.1.3:
28422910
secp256k1 "^4.0.1"
28432911
setimmediate "^1.0.5"
28442912

2913+
ethereum-cryptography@^2.1.3:
2914+
version "2.2.1"
2915+
resolved "https://registry.yarnpkg.com/ethereum-cryptography/-/ethereum-cryptography-2.2.1.tgz#58f2810f8e020aecb97de8c8c76147600b0b8ccf"
2916+
integrity sha512-r/W8lkHSiTLxUxW8Rf3u4HGB0xQweG2RyETjywylKZSzLWoWAijRz8WCuOtJ6wah+avllXBqZuk29HCCvhEIRg==
2917+
dependencies:
2918+
"@noble/curves" "1.4.2"
2919+
"@noble/hashes" "1.4.0"
2920+
"@scure/bip32" "1.4.0"
2921+
"@scure/bip39" "1.3.0"
2922+
28452923
ethereumjs-util@^7.0.8:
28462924
version "7.1.5"
28472925
resolved "https://registry.yarnpkg.com/ethereumjs-util/-/ethereumjs-util-7.1.5.tgz#9ecf04861e4fbbeed7465ece5f23317ad1129181"
@@ -2889,6 +2967,24 @@ ethers@5.7.2, ethers@^5.7.2:
28892967
"@ethersproject/web" "5.7.1"
28902968
"@ethersproject/wordlists" "5.7.0"
28912969

2970+
ethers@^6.13.1:
2971+
version "6.13.4"
2972+
resolved "https://registry.yarnpkg.com/ethers/-/ethers-6.13.4.tgz#bd3e1c3dc1e7dc8ce10f9ffb4ee40967a651b53c"
2973+
integrity sha512-21YtnZVg4/zKkCQPjrDj38B1r4nQvTZLopUGMLQ1ePU2zV/joCfDC3t3iKQjWRzjjjbzR+mdAIoikeBRNkdllA==
2974+
dependencies:
2975+
"@adraffy/ens-normalize" "1.10.1"
2976+
"@noble/curves" "1.2.0"
2977+
"@noble/hashes" "1.3.2"
2978+
"@types/node" "22.7.5"
2979+
aes-js "4.0.0-beta.5"
2980+
tslib "2.7.0"
2981+
ws "8.17.1"
2982+
2983+
eventemitter3@^3.1.0:
2984+
version "3.1.2"
2985+
resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-3.1.2.tgz#2d3d48f9c346698fce83a85d7d664e98535df6e7"
2986+
integrity sha512-tvtQIeLVHjDkJYnzf2dgVMxfuSGJeM/7UCG17TT4EumTfNtF+0nebF/4zWOIkCreAbtNqhGEboB6BWrwqNaw4Q==
2987+
28922988
events@^3.3.0:
28932989
version "3.3.0"
28942990
resolved "https://registry.yarnpkg.com/events/-/events-3.3.0.tgz#31a95ad0a924e2d2c419a813aeb2c4e878ea7400"
@@ -4727,6 +4823,11 @@ reflect.getprototypeof@^1.0.4:
47274823
globalthis "^1.0.3"
47284824
which-builtin-type "^1.1.3"
47294825

4826+
regenerator-runtime@^0.14.0:
4827+
version "0.14.1"
4828+
resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz#356ade10263f685dda125100cd862c1db895327f"
4829+
integrity sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==
4830+
47304831
regexp.prototype.flags@^1.5.2:
47314832
version "1.5.3"
47324833
resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.5.3.tgz#b3ae40b1d2499b8350ab2c3fe6ef3845d3a96f42"
@@ -4873,7 +4974,7 @@ secp256k1@^4.0.0, secp256k1@^4.0.1:
48734974
node-addon-api "^2.0.0"
48744975
node-gyp-build "^4.2.0"
48754976

4876-
semver@^5.3.0:
4977+
semver@^5.3.0, semver@^5.6.0:
48774978
version "5.7.2"
48784979
resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.2.tgz#48d55db737c3287cd4835e17fa13feace1c41ef8"
48794980
integrity sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==
@@ -5188,6 +5289,21 @@ to-regex-range@^5.0.1:
51885289
dependencies:
51895290
is-number "^7.0.0"
51905291

5292+
tronweb@6.0.0:
5293+
version "6.0.0"
5294+
resolved "https://registry.yarnpkg.com/tronweb/-/tronweb-6.0.0.tgz#9c1f23155473f0b6a6e0c33f96b655d38de38343"
5295+
integrity sha512-mIh00KG00Iu80UT1SLDgNEBLzWiR24WnttlObP8B9eQyNJ6mg4oD2gE+vG0cd6FcHL9DV6Jd18gKeBp4y3Y7Ew==
5296+
dependencies:
5297+
"@babel/runtime" "^7.0.0"
5298+
"@tronweb3/google-protobuf" "^3.21.2"
5299+
axios "^1.7.4"
5300+
bignumber.js "^9.0.1"
5301+
ethereum-cryptography "^2.1.3"
5302+
ethers "^6.13.1"
5303+
eventemitter3 "^3.1.0"
5304+
semver "^5.6.0"
5305+
validator "^13.7.0"
5306+
51915307
ts-api-utils@^1.0.1:
51925308
version "1.3.0"
51935309
resolved "https://registry.yarnpkg.com/ts-api-utils/-/ts-api-utils-1.3.0.tgz#4b490e27129f1e8e686b45cc4ab63714dc60eea1"
@@ -5218,16 +5334,16 @@ tsconfig-paths@^3.14.1:
52185334
minimist "^1.2.6"
52195335
strip-bom "^3.0.0"
52205336

5337+
tslib@2.7.0, tslib@^2.1.0, tslib@^2.3.0, tslib@^2.6.2:
5338+
version "2.7.0"
5339+
resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.7.0.tgz#d9b40c5c40ab59e8738f297df3087bf1a2690c01"
5340+
integrity sha512-gLXCKdN1/j47AiHiOkJN69hJmcbGTHI0ImLmbYLHykhgeN0jVGola9yVjFgzCUklsZQMW55o+dW7IXv3RCXDzA==
5341+
52215342
tslib@^1.13.0, tslib@^1.8.1:
52225343
version "1.14.1"
52235344
resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00"
52245345
integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==
52255346

5226-
tslib@^2.1.0, tslib@^2.3.0, tslib@^2.6.2:
5227-
version "2.7.0"
5228-
resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.7.0.tgz#d9b40c5c40ab59e8738f297df3087bf1a2690c01"
5229-
integrity sha512-gLXCKdN1/j47AiHiOkJN69hJmcbGTHI0ImLmbYLHykhgeN0jVGola9yVjFgzCUklsZQMW55o+dW7IXv3RCXDzA==
5230-
52315347
tslint-config-prettier@^1.18.0:
52325348
version "1.18.0"
52335349
resolved "https://registry.yarnpkg.com/tslint-config-prettier/-/tslint-config-prettier-1.18.0.tgz#75f140bde947d35d8f0d238e0ebf809d64592c37"
@@ -5429,6 +5545,11 @@ v8-to-istanbul@^9.0.1:
54295545
"@types/istanbul-lib-coverage" "^2.0.1"
54305546
convert-source-map "^2.0.0"
54315547

5548+
validator@^13.7.0:
5549+
version "13.12.0"
5550+
resolved "https://registry.yarnpkg.com/validator/-/validator-13.12.0.tgz#7d78e76ba85504da3fee4fd1922b385914d4b35f"
5551+
integrity sha512-c1Q0mCiPlgdTVVVIJIrBuxNicYE+t/7oKeI9MWLj3fh/uq2Pxh/3eeWbVZ4OcGW1TUf53At0njHw5SMdA3tmMg==
5552+
54325553
vscode-oniguruma@^1.7.0:
54335554
version "1.7.0"
54345555
resolved "https://registry.yarnpkg.com/vscode-oniguruma/-/vscode-oniguruma-1.7.0.tgz#439bfad8fe71abd7798338d1cd3dc53a8beea94b"
@@ -5547,6 +5668,11 @@ ws@7.4.6:
55475668
resolved "https://registry.yarnpkg.com/ws/-/ws-7.4.6.tgz#5654ca8ecdeee47c33a9a4bf6d28e2be2980377c"
55485669
integrity sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A==
55495670

5671+
ws@8.17.1:
5672+
version "8.17.1"
5673+
resolved "https://registry.yarnpkg.com/ws/-/ws-8.17.1.tgz#9293da530bb548febc95371d90f9c878727d919b"
5674+
integrity sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==
5675+
55505676
y18n@^5.0.5:
55515677
version "5.0.8"
55525678
resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.8.tgz#7f4934d0f7ca8c56f95314939ddcd2dd91ce1d55"

0 commit comments

Comments
 (0)