@saberhq/sail
Version:
Account caching and batched loading for React-based Solana applications.
40 lines • 1.16 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.SailBatchFetcher = exports.SailBatchProvider = void 0;
const solana_contrib_1 = require("@saberhq/solana-contrib");
class SailBatchProvider extends solana_contrib_1.SolanaAugmentedProvider {
constructor(provider, loader) {
super(provider);
this.provider = provider;
this.loader = loader;
this.fetcher = new SailBatchFetcher(loader);
}
async getAccountInfo(accountId) {
const data = await this.loader.load(accountId);
if (!data) {
return null;
}
return {
accountId,
accountInfo: data,
};
}
}
exports.SailBatchProvider = SailBatchProvider;
class SailBatchFetcher {
constructor(loader) {
this.loader = loader;
}
async getAccountInfo(accountId) {
const data = await this.loader.load(accountId);
if (!data) {
return null;
}
return {
accountId,
accountInfo: data,
};
}
}
exports.SailBatchFetcher = SailBatchFetcher;
//# sourceMappingURL=batchProvider.js.map
;