UNPKG

@acala-network/types

Version:

Acala types for @polkadot/api

34 lines (33 loc) 1.25 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.typesFromDefs = exports.typesAliasFromDefs = exports.jsonrpcFromDefs = void 0; function jsonrpcFromDefs(definitions, jsonrpc = {}) { Object.keys(definitions) .filter((key) => Object.keys(definitions[key]?.rpc || {}).length !== 0) .forEach((section) => { jsonrpc[section] = {}; Object.entries(definitions[section].rpc).forEach(([method, def]) => { const isSubscription = !!def.pubsub; jsonrpc[section][method] = { ...def, isSubscription, jsonrpc: `${section}_${method}`, method, section, }; }); }); return jsonrpc; } exports.jsonrpcFromDefs = jsonrpcFromDefs; function typesAliasFromDefs(definitions, initAlias = {}) { return Object.values(definitions).reduce((res, { typesAlias }) => ({ ...typesAlias, ...res }), initAlias); } exports.typesAliasFromDefs = typesAliasFromDefs; function typesFromDefs(definitions, initTypes = {}) { return Object.values(definitions).reduce((res, { types }) => ({ ...res, ...types, }), initTypes); } exports.typesFromDefs = typesFromDefs;