UNPKG

@saberhq/sail

Version:

Account caching and batched loading for React-based Solana applications.

24 lines 1.16 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.makeProgramParserHooks = void 0; const tslib_1 = require("tslib"); const lodash_mapvalues_1 = tslib_1.__importDefault(require("lodash.mapvalues")); const programAccounts_1 = require("./programAccounts"); const useBatchedParsedAccounts_1 = require("./useBatchedParsedAccounts"); const useParsedAccount_1 = require("./useParsedAccount"); /** * Makes hooks for parsers. * @param parsers * @returns */ const makeProgramParserHooks = (parsers) => { const sailParsers = (0, programAccounts_1.makeProgramAccountParsers)(parsers); const hooks = (0, lodash_mapvalues_1.default)(sailParsers, (parser) => ({ useSingleData: (key, options) => (0, useParsedAccount_1.useParsedAccount)(key, parser, options), useData: (keys, options) => (0, useParsedAccount_1.useParsedAccounts)(keys, parser, options), useBatchedData: (keys, options) => (0, useBatchedParsedAccounts_1.useBatchedParsedAccounts)(keys, parser, options), })); return hooks; }; exports.makeProgramParserHooks = makeProgramParserHooks; //# sourceMappingURL=makeProgramParserHooks.js.map