API Кошелька
Расширение Fueled вводит объект fuelet в окно DOM и предоставляет следующий API. API отражает API, предоставляемый Fuel Wallet, и интегрируется с @fuel-wallet/sdk. Объект fuelet реализует интерфейс Fuel из SDK, поэтому он может быть интегрирован в проект следующим образом:
const onFueletLoaded = () => {
setFuel(window.fuelet);
};
// If fuelet is already loaded, call the handler
if (window.fuelet) {
onFueletLoaded();
}
// Listen for the fueletLoaded event
document.addEventListener("FueletLoaded", onFueletLoaded);Если у вас есть какие-либо замечания или предложения, пожалуйста, свяжитесь с нами: hi@fuelet.app.
Методы
подключение
async disconnect(): Promise<boolean>
Подключите веб-сайт к кошельку.
await fuelet.connect(); // true await fuelet.isConnected(); // true
отключение
async disconnect(): Promise<boolean>
Отключите веб-сайт от кошелька.
await fuelet.disconnect(); // true await fuelet.isConnected(); // false
подключен
async isConnected(): Promise<boolean>
Проверьте состояние подключения.
await fuelet.isConnected(); // true
аккаунты
async accounts(): Promise<Array<string>>
Список подключенных учетных записей в формате bech32.
await fuelet.isConnected(); // true await fuelet.accounts(); // ['fuel13uz8al8u5ue6a0nelqz64fesjyazp4a72vexzpvq5kr65vzha5vqhtt06m']
текущий аккаунт
async currentAccount(): Promise<string>
Верните выбранную в данный момент учетную запись в кошельке, если она подключена.
await fuelet.isConnected(); // true await fuelet.currentAccount(); // 'fuel13uz8al8u5ue6a0nelqz64fesjyazp4a72vexzpvq5kr65vzha5vqhtt06m'
сеть
async network(): Promise<NetworkInfo>
Верните выбранную в данный момент сеть, если она подключена.
await fuelet.isConnected();
// true
await fuelet.network();
// {
// url: 'https://beta-3.fuel.network/graphql'
// }подписать сообщение
async signMessage(address: string, message: string): Promise<string>
Подписывает сообщение, используя указанную учетную запись. Предлагает пользователю одобрить запрос. Возвращает подпись.
await fuelet.isConnected();
// true
await fuelet.signMessage("fuel13uz8al8u5ue6a0nelqz64fesjyazp4a72vexzpvq5kr65vzha5vqhtt06m", "message");
// "signature"Отправка транзакции
async sendTransaction(request: TransactionRequestLike): Promise<string>
Отправляет транзакцию от имени выбранной в данный момент учетной записи. Предлагает пользователю одобрить запрос. Возвращает идентификатор транзакции.
await fuelet.isConnected(); // true await fuelet.sendTransaction(transactionRequest); // "tx id"
Модель
Сетевая информация
type NetworkInfo = {
url: string;
};Наилучшая практика
Присвоение имен
Пожалуйста, используйте следующее имя при добавлении поддержки Fueled wallet на вашей стороне:
Ссылка для скачивания
Если вы обнаружите, что у пользователя не установлен Fuelet (объект "fuelet" не введен), пожалуйста, добавьте следующую ссылку, чтобы пользователь мог загрузить кошелек: