{"_id":"@abcwalletio/tron","name":"@abcwalletio/tron","dist-tags":{"latest":"1.0.0"},"versions":{"1.0.0":{"name":"@abcwalletio/tron","version":"1.0.0","description":"ABC WaaS Tron adapter — MPC-based @tronweb3/tronwallet-abstract-adapter compatible wallet (secp256k1)","keywords":["waas","tron","tronweb","trc20","secp256k1","mpc"],"license":"MIT","author":{"name":"Ahnlab Blockchain Company"},"homepage":"http://abcwaas.com/","publishConfig":{"access":"public"},"engines":{"node":">=18.0.0"},"sideEffects":false,"type":"module","main":"./dist/index.cjs","module":"./dist/index.js","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"dependencies":{"@noble/hashes":"^1.8.0"},"peerDependencies":{"@tronweb3/tronwallet-abstract-adapter":">=1.0.0","tronweb":">=5.0.0","@abcwalletio/core":"^1.0.0"},"devDependencies":{"@tronweb3/tronwallet-abstract-adapter":"^1.1.12","eventemitter3":"^5.0.1","tronweb":"^6.0.0","tsup":"^8.0.0","typescript":"^5.4.0","vitest":"^1.4.0","@abcwalletio/core":"^1.0.0"},"scripts":{"build":"tsup","dev":"tsup --watch","typecheck":"tsc --noEmit","test":"vitest run"},"_id":"@abcwalletio/tron@1.0.0","_integrity":"sha512-Hw2FbsL5wh5Az5nEb5W2XFVwpGx60GE5gGaXkNUobxYj57lOKxAc9TrI7Pdu7ngyBldfBPP09h9QLmGq6fcHSw==","_resolved":"/private/var/folders/lt/4x5qd11x2wl8sh4gvr7y0pp80000gn/T/9ac198cda01365cae6c0c792c786d116/abcwalletio-tron-1.0.0.tgz","_from":"file:abcwalletio-tron-1.0.0.tgz","_nodeVersion":"24.13.0","_npmVersion":"11.6.2","dist":{"integrity":"sha512-Hw2FbsL5wh5Az5nEb5W2XFVwpGx60GE5gGaXkNUobxYj57lOKxAc9TrI7Pdu7ngyBldfBPP09h9QLmGq6fcHSw==","shasum":"f2d5895b5f34e8b7d88c189a42b405f26b82641d","tarball":"https://registry.npmjs.org/@abcwalletio/tron/-/tron-1.0.0.tgz","fileCount":9,"unpackedSize":38283,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIEgnNduCADkz/i6emlMVHANqHjsOQciIt0lOBywO3wBBAiEAn1OgHn9gxt+xzYA8rFwYXs+0rvVOdKx1LMqNdlZVmYQ="}]},"_npmUser":{"name":"theo_ahnlabio","email":"theo@ahnlab.com"},"directories":{},"maintainers":[{"name":"abc-admin","email":"abc_it@ahnlab.com"},{"name":"1kko-abc","email":"1kko@ahnlab.com"},{"name":"theo_ahnlabio","email":"theo@ahnlab.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/tron_1.0.0_1776818607928_0.577453471583095"},"_hasShrinkwrap":false}},"time":{"created":"2026-04-22T00:43:27.831Z","1.0.0":"2026-04-22T00:43:28.085Z","modified":"2026-04-22T00:43:28.342Z"},"maintainers":[{"name":"abc-admin","email":"abc_it@ahnlab.com"},{"name":"1kko-abc","email":"1kko@ahnlab.com"},{"name":"theo_ahnlabio","email":"theo@ahnlab.com"}],"description":"ABC WaaS Tron adapter — MPC-based @tronweb3/tronwallet-abstract-adapter compatible wallet (secp256k1)","homepage":"http://abcwaas.com/","keywords":["waas","tron","tronweb","trc20","secp256k1","mpc"],"author":{"name":"Ahnlab Blockchain Company"},"license":"MIT","readme":"# @abcwalletio/tron\n\nABC WaaS SDK의 Tron 체인 어댑터입니다. `@tronweb3/tronwallet-abstract-adapter`의\n`Adapter` 베이스 클래스를 구현하므로 `tronwallet-adapter-react-hooks`의\n`WalletProvider`와 그대로 통합됩니다.\n\n## Installation\n\n```bash\npnpm add @abcwalletio/tron @abcwalletio/core tronweb @tronweb3/tronwallet-abstract-adapter\n```\n\n## Peer Dependencies\n\n- `@abcwalletio/core`\n- `tronweb` `>=5.0.0`\n- `@tronweb3/tronwallet-abstract-adapter` `>=1.0.0`\n\n## Quick Start\n\n```typescript\nimport { createWaasSDK, LocalStorageAdapter } from '@abcwalletio/core';\nimport { AbcTronAdapter } from '@abcwalletio/tron';\n\nconst sdk = await createWaasSDK({\n  storage: new LocalStorageAdapter(),\n  auth: { v2: { clientId: '...', clientSecret: '...' } },\n});\n\n// Tron은 secp256k1 키 사용\nawait sdk.mpc.generateKeyShare('secp256k1', 'password');\n\nconst adapter = new AbcTronAdapter({\n  sdk,\n  requestPassword: async () => prompt('MPC 비밀번호?') ?? '',\n});\n\nawait adapter.connect();\nconsole.log('Address:', adapter.address);  // T... Base58Check\n```\n\n## React + WalletProvider 통합\n\n```tsx\nimport { WalletProvider } from '@tronweb3/tronwallet-adapter-react-hooks';\n\n<WalletProvider adapters={[adapter]}>\n  {/* useWallet() 훅이 adapter를 자동 인식 */}\n</WalletProvider>\n```\n\n## API\n\n### `new AbcTronAdapter(config)`\n\n```typescript\ninterface AbcTronAdapterConfig {\n  sdk: WaasSDK;\n  requestPassword: () => Promise<string>;\n  keyId?: string;  // 생략 시 sdk.mpc.getDefaultKeyId('secp256k1') 자동 조회\n}\n```\n\n### 메서드 (Adapter 규격)\n\n| 메서드 | 설명 |\n|--------|------|\n| `connect()` | 공개키 조회 + Tron Base58Check 주소 도출 + `connect` 이벤트 emit |\n| `disconnect()` | 상태 초기화 |\n| `signMessage(messageHex)` | 메시지 해시 서명 (r:s:v) |\n| `signTransaction(tx)` | `tx.txID`에 서명해 `signature` 필드 추가 |\n| `getPublicKey()` | 원시 공개키 hex 반환 |\n| `getUncompressedPublicKey()` | 64바이트 비압축 공개키 (`0x` prefix 포함) |\n\n### 유틸리티\n\n```typescript\nimport { tronAddressFromUncompressedPublicKey, isValidTronAddress } from '@abcwalletio/tron';\n\nconst address = tronAddressFromUncompressedPublicKey('0x04...');  // \"T...\"\nisValidTronAddress('TXYZ...');  // boolean\n```\n\n## License\n\nMIT — Copyright (c) 2026 Ahnlab Blockchain Company\n","readmeFilename":"README.md","_rev":"1-776f34decbc8f52f3046c6048459e36c"}