UNPKG

10.2 kBJavaScriptView Raw
1"use strict";
2Object.defineProperty(exports, "__esModule", { value: true });
3const decimalsFunction = {
4 name: 'decimals',
5 constant: true,
6 parameters: [],
7 returnType: { type: 'Integer', decimals: 0 },
8};
9exports.abi = (decimals) => ({
10 functions: [
11 {
12 name: 'name',
13 constant: true,
14 parameters: [],
15 returnType: { type: 'String' },
16 },
17 {
18 name: 'symbol',
19 constant: true,
20 parameters: [],
21 returnType: { type: 'String' },
22 },
23 decimalsFunction,
24 {
25 name: 'totalSupply',
26 constant: true,
27 parameters: [],
28 returnType: { type: 'Integer', decimals },
29 },
30 {
31 name: 'transfer',
32 parameters: [
33 {
34 type: 'Address',
35 name: 'from',
36 },
37 {
38 type: 'Address',
39 name: 'to',
40 },
41 {
42 type: 'Integer',
43 name: 'value',
44 decimals,
45 },
46 ],
47 returnType: { type: 'Boolean' },
48 },
49 {
50 name: 'balanceOf',
51 constant: true,
52 parameters: [
53 {
54 type: 'Address',
55 name: 'account',
56 },
57 ],
58 returnType: { type: 'Integer', decimals },
59 },
60 ],
61 events: [
62 {
63 name: 'transfer',
64 parameters: [
65 {
66 type: 'Address',
67 name: 'from',
68 optional: true,
69 },
70 {
71 type: 'Address',
72 name: 'to',
73 optional: true,
74 },
75 {
76 type: 'Integer',
77 name: 'amount',
78 decimals,
79 },
80 ],
81 },
82 ],
83});
84exports.getDecimals = async (client, networksDefinition, network) => {
85 const decimalsBigNumber = await client
86 .smartContract({ networks: networksDefinition, abi: { functions: [decimalsFunction] } })
87 .decimals({ network });
88 return decimalsBigNumber.toNumber();
89};
90exports.createNEP5SmartContract = (client, networksDefinition, decimals) => client.smartContract({
91 networks: networksDefinition,
92 abi: exports.abi(decimals),
93});
94
95//# sourceMappingURL=data:application/json;charset=utf8;base64,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QWtCO0lBQzVCLEdBQUcsRUFBRSxXQUFHLENBQUMsUUFBUSxDQUFDO0NBQ25CLENBQUMsQ0FBQyIsImZpbGUiOiJuZW8tb25lLWNsaWVudC1jb3JlL3NyYy9uZXA1LmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQUJJLFxuICBBQklGdW5jdGlvbixcbiAgQWRkcmVzc1N0cmluZyxcbiAgRXZlbnQsXG4gIEludm9rZVJlY2VpcHQsXG4gIE5ldHdvcmtUeXBlLFxuICBTbWFydENvbnRyYWN0TmV0d29ya3NEZWZpbml0aW9uLFxuICBTbWFydENvbnRyYWN0UmVhZE9wdGlvbnMsXG4gIFRyYW5zYWN0aW9uT3B0aW9ucyxcbiAgVHJhbnNhY3Rpb25SZXN1bHQsXG59IGZyb20gJ0BuZW8tb25lL2NsaWVudC1jb21tb24nO1xuaW1wb3J0IEJpZ051bWJlciBmcm9tICdiaWdudW1iZXIuanMnO1xuaW1wb3J0IHsgQ2xpZW50IH0gZnJvbSAnLi9DbGllbnQnO1xuaW1wb3J0IHsgU21hcnRDb250cmFjdCB9IGZyb20gJy4vdHlwZXMnO1xuXG5leHBvcnQgdHlwZSBORVA1RXZlbnQgPSBORVA1VHJhbnNmZXJFdmVudDtcblxuZXhwb3J0IGludGVyZmFjZSBORVA1VHJhbnNmZXJFdmVudFBhcmFtZXRlcnMge1xuICByZWFkb25seSBmcm9tOiBBZGRyZXNzU3RyaW5nIHwgdW5kZWZpbmVkO1xuICByZWFkb25seSB0bzogQWRkcmVzc1N0cmluZyB8IHVuZGVmaW5lZDtcbiAgcmVhZG9ubHkgYW1vdW50OiBCaWdOdW1iZXI7XG59XG5leHBvcnQgaW50ZXJmYWNlIE5FUDVUcmFuc2ZlckV2ZW50IGV4dGVuZHMgRXZlbnQ8J3RyYW5zZmVyJywgTkVQNVRyYW5zZmVyRXZlbnRQYXJhbWV0ZXJzPiB7fVxuXG5leHBvcnQgaW50ZXJmYWNlIE5FUDVTbWFydENvbnRyYWN0PFRDbGllbnQgZXh0ZW5kcyBDbGllbnQgPSBDbGllbnQ+IGV4dGVuZHMgU21hcnRDb250cmFjdDxUQ2xpZW50LCBORVA1RXZlbnQ+IHtcbiAgcmVhZG9ubHkgYmFsYW5jZU9mOiAoYWRkcmVzczogQWRkcmVzc1N0cmluZywgb3B0aW9ucz86IFNtYXJ0Q29udHJhY3RSZWFkT3B0aW9ucykgPT4gUHJvbWlzZTxCaWdOdW1iZXI+O1xuICByZWFkb25seSBkZWNpbWFsczogKG9wdGlvbnM/OiBTbWFydENvbnRyYWN0UmVhZE9wdGlvbnMpID0+IFByb21pc2U8QmlnTnVtYmVyPjtcbiAgcmVhZG9ubHkgbmFtZTogKG9wdGlvbnM/OiBTbWFydENvbnRyYWN0UmVhZE9wdGlvbnMpID0+IFByb21pc2U8c3RyaW5nPjtcbiAgcmVhZG9ubHkgb3duZXI6IChvcHRpb25zPzogU21hcnRDb250cmFjdFJlYWRPcHRpb25zKSA9PiBQcm9taXNlPEFkZHJlc3NTdHJpbmc+O1xuICByZWFkb25seSBzeW1ib2w6IChvcHRpb25zPzogU21hcnRDb250cmFjdFJlYWRPcHRpb25zKSA9PiBQcm9taXNlPHN0cmluZz47XG4gIHJlYWRvbmx5IHRvdGFsU3VwcGx5OiAob3B0aW9ucz86IFNtYXJ0Q29udHJhY3RSZWFkT3B0aW9ucykgPT4gUHJvbWlzZTxCaWdOdW1iZXI+O1xuICByZWFkb25seSB0cmFuc2ZlcjogKFxuICAgIGZyb206IEFkZHJlc3NTdHJpbmcsXG4gICAgdG86IEFkZHJlc3NTdHJpbmcsXG4gICAgYW1vdW50OiBCaWdOdW1iZXIsXG4gICAgb3B0aW9ucz86IFRyYW5zYWN0aW9uT3B0aW9ucyxcbiAgKSA9PiBUcmFuc2FjdGlvblJlc3VsdDxJbnZva2VSZWNlaXB0PGJvb2xlYW4sIE5FUDVFdmVudD4+O1xufVxuXG5jb25zdCBkZWNpbWFsc0Z1bmN0aW9uOiBBQklGdW5jdGlvbiA9IHtcbiAgbmFtZTogJ2RlY2ltYWxzJyxcbiAgY29uc3RhbnQ6IHRydWUsXG4gIHBhcmFtZXRlcnM6IFtdLFxuICByZXR1cm5UeXBlOiB7IHR5cGU6ICdJbnRlZ2VyJywgZGVjaW1hbHM6IDAgfSxcbn07XG5cbmV4cG9ydCBjb25zdCBhYmkgPSAoZGVjaW1hbHM6IG51bWJlcik6IEFCSSA9PiAoe1xuICBmdW5jdGlvbnM6IFtcbiAgICB7XG4gICAgICBuYW1lOiAnbmFtZScsXG4gICAgICBjb25zdGFudDogdHJ1ZSxcbiAgICAgIHBhcmFtZXRlcnM6IFtdLFxuICAgICAgcmV0dXJuVHlwZTogeyB0eXBlOiAnU3RyaW5nJyB9LFxuICAgIH0sXG4gICAge1xuICAgICAgbmFtZTogJ3N5bWJvbCcsXG4gICAgICBjb25zdGFudDogdHJ1ZSxcbiAgICAgIHBhcmFtZXRlcnM6IFtdLFxuICAgICAgcmV0dXJuVHlwZTogeyB0eXBlOiAnU3RyaW5nJyB9LFxuICAgIH0sXG4gICAgZGVjaW1hbHNGdW5jdGlvbixcbiAgICB7XG4gICAgICBuYW1lOiAndG90YWxTdXBwbHknLFxuICAgICAgY29uc3RhbnQ6IHRydWUsXG4gICAgICBwYXJhbWV0ZXJzOiBbXSxcbiAgICAgIHJldHVyblR5cGU6IHsgdHlwZTogJ0ludGVnZXInLCBkZWNpbWFscyB9LFxuICAgIH0sXG4gICAge1xuICAgICAgbmFtZTogJ3RyYW5zZmVyJyxcbiAgICAgIHBhcmFtZXRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgIHR5cGU6ICdBZGRyZXNzJyxcbiAgICAgICAgICBuYW1lOiAnZnJvbScsXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICB0eXBlOiAnQWRkcmVzcycsXG4gICAgICAgICAgbmFtZTogJ3RvJyxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIHR5cGU6ICdJbnRlZ2VyJyxcbiAgICAgICAgICBuYW1lOiAndmFsdWUnLFxuICAgICAgICAgIGRlY2ltYWxzLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICAgIHJldHVyblR5cGU6IHsgdHlwZTogJ0Jvb2xlYW4nIH0sXG4gICAgfSxcbiAgICB7XG4gICAgICBuYW1lOiAnYmFsYW5jZU9mJyxcbiAgICAgIGNvbnN0YW50OiB0cnVlLFxuICAgICAgcGFyYW1ldGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgdHlwZTogJ0FkZHJlc3MnLFxuICAgICAgICAgIG5hbWU6ICdhY2NvdW50JyxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgICByZXR1cm5UeXBlOiB7IHR5cGU6ICdJbnRlZ2VyJywgZGVjaW1hbHMgfSxcbiAgICB9LFxuICBdLFxuICBldmVudHM6IFtcbiAgICB7XG4gICAgICBuYW1lOiAndHJhbnNmZXInLFxuICAgICAgcGFyYW1ldGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgdHlwZTogJ0FkZHJlc3MnLFxuICAgICAgICAgIG5hbWU6ICdmcm9tJyxcbiAgICAgICAgICBvcHRpb25hbDogdHJ1ZSxcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIHR5cGU6ICdBZGRyZXNzJyxcbiAgICAgICAgICBuYW1lOiAndG8nLFxuICAgICAgICAgIG9wdGlvbmFsOiB0cnVlLFxuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgdHlwZTogJ0ludGVnZXInLFxuICAgICAgICAgIG5hbWU6ICdhbW91bnQnLFxuICAgICAgICAgIGRlY2ltYWxzLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICB9LFxuICBdLFxufSk7XG5cbmV4cG9ydCBjb25zdCBnZXREZWNpbWFscyA9IGFzeW5jIChcbiAgY2xpZW50OiBDbGllbnQsXG4gIG5ldHdvcmtzRGVmaW5pdGlvbjogU21hcnRDb250cmFjdE5ldHdvcmtzRGVmaW5pdGlvbixcbiAgbmV0d29yazogTmV0d29ya1R5cGUsXG4pOiBQcm9taXNlPG51bWJlcj4gPT4ge1xuICBjb25zdCBkZWNpbWFsc0JpZ051bWJlciA9IGF3YWl0IGNsaWVudFxuICAgIC5zbWFydENvbnRyYWN0KHsgbmV0d29ya3M6IG5ldHdvcmtzRGVmaW5pdGlvbiwgYWJpOiB7IGZ1bmN0aW9uczogW2RlY2ltYWxzRnVuY3Rpb25dIH0gfSlcbiAgICAuZGVjaW1hbHMoeyBuZXR3b3JrIH0pO1xuXG4gIHJldHVybiBkZWNpbWFsc0JpZ051bWJlci50b051bWJlcigpO1xufTtcblxuZXhwb3J0IGNvbnN0IGNyZWF0ZU5FUDVTbWFydENvbnRyYWN0ID0gPFRDbGllbnQgZXh0ZW5kcyBDbGllbnQ+KFxuICBjbGllbnQ6IFRDbGllbnQsXG4gIG5ldHdvcmtzRGVmaW5pdGlvbjogU21hcnRDb250cmFjdE5ldHdvcmtzRGVmaW5pdGlvbixcbiAgZGVjaW1hbHM6IG51bWJlcixcbik6IE5FUDVTbWFydENvbnRyYWN0ID0+XG4gIGNsaWVudC5zbWFydENvbnRyYWN0PE5FUDVTbWFydENvbnRyYWN0PFRDbGllbnQ+Pih7XG4gICAgbmV0d29ya3M6IG5ldHdvcmtzRGVmaW5pdGlvbixcbiAgICBhYmk6IGFiaShkZWNpbWFscyksXG4gIH0pO1xuIl19