September 21, 2023

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 Wallet.

Ссылка для скачивания

Если вы обнаружите, что у пользователя не установлен Fuelet (объект "fuelet" не введен), пожалуйста, добавьте следующую ссылку, чтобы пользователь мог загрузить кошелек:

https://fuelet.app/download/