(address: Address)
| 156 | } |
| 157 | |
| 158 | export function toChecksumAddress(address: Address): string { |
| 159 | let lowerCaseAddress = address.toHex().slice(2); |
| 160 | let hash = crypto |
| 161 | .keccak256(ByteArray.fromUTF8(address.toHex().slice(2))) |
| 162 | .toHex() |
| 163 | .slice(2); |
| 164 | let result = ''; |
| 165 | |
| 166 | for (let i = 0; i < lowerCaseAddress.length; i++) { |
| 167 | if (parseInt(hash.charAt(i), 16) >= 8) { |
| 168 | result += toUpper(lowerCaseAddress.charAt(i)); |
| 169 | } else { |
| 170 | result += lowerCaseAddress.charAt(i); |
| 171 | } |
| 172 | } |
| 173 | |
| 174 | return toHex(result); |
| 175 | } |
| 176 | |
| 177 | export function toHex(bytes: string): string { |
| 178 | return '0x' + bytes; |
no test coverage detected