PHP WebShell
Текущая директория: /usr/lib/node_modules/bitgo/node_modules/viem/accounts
Просмотр файла: hdKeyToAccount.ts
import type { ErrorType } from '../errors/utils.js'
import type { HDKey } from '../types/account.js'
import { type ToHexErrorType, toHex } from '../utils/encoding/toHex.js'
import {
type PrivateKeyToAccountErrorType,
type PrivateKeyToAccountOptions,
privateKeyToAccount,
} from './privateKeyToAccount.js'
import type { HDAccount, HDOptions } from './types.js'
export type HDKeyToAccountOptions = HDOptions & PrivateKeyToAccountOptions
export type HDKeyToAccountErrorType =
| PrivateKeyToAccountErrorType
| ToHexErrorType
| ErrorType
/**
* @description Creates an Account from a HD Key.
*
* @returns A HD Account.
*/
export function hdKeyToAccount(
hdKey_: HDKey,
{
accountIndex = 0,
addressIndex = 0,
changeIndex = 0,
path,
...options
}: HDKeyToAccountOptions = {},
): HDAccount {
const hdKey = hdKey_.derive(
path || `m/44'/60'/${accountIndex}'/${changeIndex}/${addressIndex}`,
)
const account = privateKeyToAccount(toHex(hdKey.privateKey!), options)
return {
...account,
getHdKey: () => hdKey,
source: 'hd',
}
}
Выполнить команду
Для локальной разработки. Не используйте в интернете!