packages/oo7-parity/src/abis/index.js
- // (C) Copyright 2016-2017 Parity Technologies (UK) Ltd.
- //
- // Licensed under the Apache License, Version 2.0 (the "License");
- // you may not use this file except in compliance with the License.
- // You may obtain a copy of the License at
- //
- // http://www.apache.org/licenses/LICENSE-2.0
- //
- // Unless required by applicable law or agreed to in writing, software
- // distributed under the License is distributed on an "AS IS" BASIS,
- // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- // See the License for the specific language governing permissions and
- // limitations under the License.
-
- const ParityApi = require('@parity/api');
-
- const sha3 = ParityApi.util.sha3;
-
- /** @type {ABI} */
- const RegistryABI = require('./registry.json');
- const RegistryExtras = [
- { name: 'lookupData', method: 'getData', args: [n => sha3(n.toLowerCase()), null] },
- { name: 'lookupAddress', method: 'getAddress', args: [n => sha3(n.toLowerCase()), null] },
- { name: 'lookupUint', method: 'getUint', args: [n => sha3(n.toLowerCase()), null] },
- { name: 'lookupOwner', method: 'getOwner', args: [n => sha3(n.toLowerCase())] }
- ];
- /**
- * Github Hint ABI definition.
- *
- * @type {ABI}
- */
- const GitHubHintABI = (() => require('./githubhint.json'))();
- /** @type {ABI} */
- const OperationsABI = (() => require('./operations.json'))();
- /** @type {ABI} */
- const BadgeRegABI = (() => require('./badgereg.json'))();
- /** @type {ABI} */
- const TokenRegABI = (() => require('./tokenreg.json'))();
- /** @type {ABI} */
- const BadgeABI = (() => require('./badge.json'))();
- /** @type {ABI} */
- const TokenABI = (() => require('./token.json'))();
-
- /**
- * Deprecated.
- */
- function abiPolyfill () {
- return {
- registry: RegistryABI,
- registryExtras: RegistryExtras,
- githubhint: GitHubHintABI,
- operations: OperationsABI,
- badgereg: BadgeRegABI,
- tokenreg: TokenRegABI,
- badge: BadgeABI,
- erc20token: TokenABI
- };
- }
-
- module.exports = {
- abiPolyfill,
- RegistryABI,
- RegistryExtras,
- GitHubHintABI,
- OperationsABI,
- BadgeRegABI,
- TokenRegABI,
- BadgeABI,
- TokenABI
- };