@aeternity/aepp-sdk 8.2.1 → 10.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (159) hide show
  1. package/CHANGELOG.md +216 -337
  2. package/README.md +16 -9
  3. package/dist/aepp-sdk.browser-script.js +1 -1
  4. package/dist/aepp-sdk.browser-script.js.LICENSE.txt +0 -9
  5. package/dist/aepp-sdk.browser-script.js.map +1 -1
  6. package/dist/aepp-sdk.browser.js +1 -1
  7. package/dist/aepp-sdk.browser.js.map +1 -1
  8. package/dist/aepp-sdk.js +1 -1
  9. package/dist/aepp-sdk.js.map +1 -1
  10. package/es/account/base.js +36 -120
  11. package/es/account/base.js.map +1 -1
  12. package/es/account/memory.js +17 -19
  13. package/es/account/memory.js.map +1 -1
  14. package/es/account/multiple.js +79 -156
  15. package/es/account/multiple.js.map +1 -1
  16. package/es/ae/aens.js +205 -626
  17. package/es/ae/aens.js.map +1 -1
  18. package/es/ae/contract.js +114 -918
  19. package/es/ae/contract.js.map +1 -1
  20. package/es/ae/index.js +90 -250
  21. package/es/ae/index.js.map +1 -1
  22. package/es/ae/oracle.js +136 -504
  23. package/es/ae/oracle.js.map +1 -1
  24. package/es/ae/universal.js.map +1 -1
  25. package/es/chain/index.js +12 -27
  26. package/es/chain/index.js.map +1 -1
  27. package/es/chain/node.js +289 -1020
  28. package/es/chain/node.js.map +1 -1
  29. package/es/channel/handlers.js +597 -1086
  30. package/es/channel/handlers.js.map +1 -1
  31. package/es/channel/index.js +238 -465
  32. package/es/channel/index.js.map +1 -1
  33. package/es/channel/internal.js +129 -301
  34. package/es/channel/internal.js.map +1 -1
  35. package/es/contract/aci/index.js +328 -495
  36. package/es/contract/aci/index.js.map +1 -1
  37. package/es/contract/aci/transformation.js +35 -711
  38. package/es/contract/aci/transformation.js.map +1 -1
  39. package/es/contract/compiler.js +131 -203
  40. package/es/contract/compiler.js.map +1 -1
  41. package/es/contract/ga/helpers.js +17 -122
  42. package/es/contract/ga/helpers.js.map +1 -1
  43. package/es/contract/ga/index.js +108 -249
  44. package/es/contract/ga/index.js.map +1 -1
  45. package/es/contract/index.js +7 -3
  46. package/es/contract/index.js.map +1 -1
  47. package/es/index.js +3 -3
  48. package/es/index.js.map +1 -1
  49. package/es/node-pool/index.js +57 -74
  50. package/es/node-pool/index.js.map +1 -1
  51. package/es/node.js +65 -161
  52. package/es/node.js.map +1 -1
  53. package/es/other.d.ts +1 -1
  54. package/es/tx/builder/helpers.js +62 -115
  55. package/es/tx/builder/helpers.js.map +1 -1
  56. package/es/tx/builder/index.js +218 -309
  57. package/es/tx/builder/index.js.map +1 -1
  58. package/es/tx/builder/schema.js +586 -573
  59. package/es/tx/builder/schema.js.map +1 -1
  60. package/es/tx/index.js +102 -13
  61. package/es/tx/index.js.map +1 -1
  62. package/es/tx/tx-object.js +114 -138
  63. package/es/tx/tx-object.js.map +1 -1
  64. package/es/tx/tx.js +810 -1586
  65. package/es/tx/tx.js.map +1 -1
  66. package/es/tx/validator.js +191 -426
  67. package/es/tx/validator.js.map +1 -1
  68. package/es/utils/aepp-wallet-communication/connection/browser-runtime.js +20 -23
  69. package/es/utils/aepp-wallet-communication/connection/browser-runtime.js.map +1 -1
  70. package/es/utils/aepp-wallet-communication/connection/browser-window-message.js +53 -80
  71. package/es/utils/aepp-wallet-communication/connection/browser-window-message.js.map +1 -1
  72. package/es/utils/aepp-wallet-communication/connection/index.js +2 -1
  73. package/es/utils/aepp-wallet-communication/connection/index.js.map +1 -1
  74. package/es/utils/aepp-wallet-communication/content-script-bridge.js +24 -19
  75. package/es/utils/aepp-wallet-communication/content-script-bridge.js.map +1 -1
  76. package/es/utils/aepp-wallet-communication/helpers.js +60 -105
  77. package/es/utils/aepp-wallet-communication/helpers.js.map +1 -1
  78. package/es/utils/aepp-wallet-communication/rpc/aepp-rpc.js +191 -514
  79. package/es/utils/aepp-wallet-communication/rpc/aepp-rpc.js.map +1 -1
  80. package/es/utils/aepp-wallet-communication/rpc/rpc-client.js +78 -93
  81. package/es/utils/aepp-wallet-communication/rpc/rpc-client.js.map +1 -1
  82. package/es/utils/aepp-wallet-communication/rpc/wallet-rpc.js +381 -613
  83. package/es/utils/aepp-wallet-communication/rpc/wallet-rpc.js.map +1 -1
  84. package/es/utils/aepp-wallet-communication/schema.js +43 -39
  85. package/es/utils/aepp-wallet-communication/schema.js.map +1 -1
  86. package/es/utils/aepp-wallet-communication/wallet-detector.js +32 -58
  87. package/es/utils/aepp-wallet-communication/wallet-detector.js.map +1 -1
  88. package/es/utils/amount-formatter.js +41 -61
  89. package/es/utils/amount-formatter.js.map +1 -1
  90. package/es/utils/async-init.js +28 -64
  91. package/es/utils/async-init.js.map +1 -1
  92. package/es/utils/bignumber.js +3 -11
  93. package/es/utils/bignumber.js.map +1 -1
  94. package/es/utils/bytes.js +5 -9
  95. package/es/utils/bytes.js.map +1 -1
  96. package/es/utils/crypto.js +41 -106
  97. package/es/utils/crypto.js.map +1 -1
  98. package/es/utils/hd-wallet.js +45 -81
  99. package/es/utils/hd-wallet.js.map +1 -1
  100. package/es/utils/json-big.js +16 -49
  101. package/es/utils/json-big.js.map +1 -1
  102. package/es/utils/keystore.js +81 -246
  103. package/es/utils/keystore.js.map +1 -1
  104. package/es/utils/mptree.js +88 -134
  105. package/es/utils/mptree.js.map +1 -1
  106. package/es/utils/other.js +10 -60
  107. package/es/utils/other.js.map +1 -1
  108. package/es/utils/semver-satisfies.js +9 -28
  109. package/es/utils/semver-satisfies.js.map +1 -1
  110. package/es/utils/string.js +4 -13
  111. package/es/utils/string.js.map +1 -1
  112. package/es/utils/swagger.js +87 -224
  113. package/es/utils/swagger.js.map +1 -1
  114. package/package.json +51 -44
  115. package/src/account/base.js +11 -10
  116. package/src/account/multiple.js +24 -18
  117. package/src/ae/aens.js +64 -61
  118. package/src/ae/contract.js +71 -248
  119. package/src/ae/index.js +34 -9
  120. package/src/ae/oracle.js +30 -22
  121. package/src/ae/universal.js +3 -1
  122. package/src/chain/index.js +10 -16
  123. package/src/chain/node.js +38 -38
  124. package/src/channel/handlers.js +10 -4
  125. package/src/channel/index.js +44 -20
  126. package/src/contract/aci/index.js +234 -112
  127. package/src/contract/aci/transformation.js +30 -422
  128. package/src/contract/compiler.js +50 -5
  129. package/src/contract/ga/helpers.js +6 -14
  130. package/src/contract/ga/index.js +28 -28
  131. package/src/contract/index.js +6 -2
  132. package/src/index.js +4 -4
  133. package/src/node-pool/index.js +24 -13
  134. package/src/node.js +29 -30
  135. package/src/tx/builder/helpers.js +31 -56
  136. package/src/tx/builder/index.js +67 -28
  137. package/src/tx/builder/schema.js +79 -121
  138. package/src/tx/index.js +101 -12
  139. package/src/tx/tx-object.js +25 -8
  140. package/src/tx/tx.js +229 -150
  141. package/src/tx/validator.js +134 -202
  142. package/src/utils/aepp-wallet-communication/connection/browser-runtime.js +3 -2
  143. package/src/utils/aepp-wallet-communication/connection/browser-window-message.js +25 -7
  144. package/src/utils/aepp-wallet-communication/connection/index.js +2 -1
  145. package/src/utils/aepp-wallet-communication/content-script-bridge.js +10 -4
  146. package/src/utils/aepp-wallet-communication/helpers.js +4 -2
  147. package/src/utils/aepp-wallet-communication/rpc/aepp-rpc.js +33 -12
  148. package/src/utils/aepp-wallet-communication/rpc/rpc-client.js +9 -5
  149. package/src/utils/aepp-wallet-communication/rpc/wallet-rpc.js +59 -29
  150. package/src/utils/aepp-wallet-communication/schema.js +1 -3
  151. package/src/utils/aepp-wallet-communication/wallet-detector.js +4 -1
  152. package/src/utils/amount-formatter.ts +1 -1
  153. package/src/utils/bignumber.ts +2 -1
  154. package/src/utils/crypto.js +4 -68
  155. package/src/utils/keystore.js +10 -2
  156. package/src/utils/other.ts +1 -1
  157. package/src/utils/semver-satisfies.ts +1 -1
  158. package/src/utils/swagger.js +22 -10
  159. package/src/contract/aci/helpers.js +0 -140
@@ -1,30 +1,13 @@
1
- import _Object$keys from "@babel/runtime-corejs3/core-js-stable/object/keys";
2
- import _Object$getOwnPropertySymbols from "@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols";
3
- import _Object$getOwnPropertyDescriptor from "@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor";
4
- import _forEachInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/for-each";
5
- import _Object$getOwnPropertyDescriptors from "@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptors";
6
- import _Object$defineProperties from "@babel/runtime-corejs3/core-js-stable/object/define-properties";
7
- import _Object$defineProperty from "@babel/runtime-corejs3/core-js-stable/object/define-property";
8
- import _typeof from "@babel/runtime-corejs3/helpers/typeof";
9
- import _asyncToGenerator from "@babel/runtime-corejs3/helpers/asyncToGenerator";
10
- import _defineProperty from "@babel/runtime-corejs3/helpers/defineProperty";
11
- import _filterInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/filter";
12
- import _findInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/find";
13
- import _regeneratorRuntime from "@babel/runtime-corejs3/regenerator";
14
-
15
- function ownKeys(object, enumerableOnly) { var keys = _Object$keys(object); if (_Object$getOwnPropertySymbols) { var symbols = _Object$getOwnPropertySymbols(object); if (enumerableOnly) { symbols = _filterInstanceProperty(symbols).call(symbols, function (sym) { return _Object$getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
16
-
17
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { var _context3; _forEachInstanceProperty(_context3 = ownKeys(Object(source), true)).call(_context3, function (key) { _defineProperty(target, key, source[key]); }); } else if (_Object$getOwnPropertyDescriptors) { _Object$defineProperties(target, _Object$getOwnPropertyDescriptors(source)); } else { var _context4; _forEachInstanceProperty(_context4 = ownKeys(Object(source))).call(_context4, function (key) { _Object$defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key)); }); } } return target; }
18
-
19
1
  /**
20
2
  * Browser helper functions
21
3
  */
22
4
  import { isAccountBase } from '../../account/base';
23
- export var getBrowserAPI = function getBrowserAPI() {
24
- var force = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
25
- var _window = window,
26
- chrome = _window.chrome,
27
- browser = _window.browser; // Chrome, Opera support
5
+ export const getBrowserAPI = function () {
6
+ let force = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
7
+ const {
8
+ chrome,
9
+ browser
10
+ } = window; // Chrome, Opera support
28
11
 
29
12
  if (typeof chrome !== 'undefined' && chrome === Object(chrome)) return chrome; // Firefox support
30
13
 
@@ -32,114 +15,86 @@ export var getBrowserAPI = function getBrowserAPI() {
32
15
  if (!force) throw new Error('Browser is not detected');
33
16
  return {};
34
17
  };
35
- export var isInIframe = function isInIframe() {
36
- return window !== window.parent;
37
- };
18
+ export const isInIframe = () => window !== window.parent;
38
19
  /**
39
20
  * RPC helper functions
40
21
  */
41
22
 
42
- export var sendMessage = function sendMessage(connection) {
43
- var messageId = 0;
23
+ export const sendMessage = connection => {
24
+ let messageId = 0;
44
25
  return function (_ref) {
45
- var id = _ref.id,
46
- method = _ref.method,
47
- params = _ref.params,
48
- result = _ref.result,
49
- error = _ref.error;
50
- var isNotificationOrResponse = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
26
+ let {
27
+ id,
28
+ method,
29
+ params,
30
+ result,
31
+ error
32
+ } = _ref;
33
+ let isNotificationOrResponse = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
51
34
  // Increment id for each request
52
35
  isNotificationOrResponse || (messageId += 1);
53
36
  id = isNotificationOrResponse ? id || null : messageId;
54
- var msgData = params ? {
55
- params: params
37
+ const msgData = params ? {
38
+ params
56
39
  } : result ? {
57
- result: result
40
+ result
58
41
  } : {
59
- error: error
42
+ error
60
43
  };
61
- connection.sendMessage(_objectSpread(_objectSpread({
62
- jsonrpc: '2.0'
63
- }, id ? {
64
- id: id
65
- } : {}), {}, {
66
- method: method
67
- }, msgData));
44
+ connection.sendMessage({
45
+ jsonrpc: '2.0',
46
+ ...(id ? {
47
+ id
48
+ } : {}),
49
+ method,
50
+ ...msgData
51
+ });
68
52
  return id;
69
53
  };
70
54
  };
71
- export var getHandler = function getHandler(schema, msg) {
72
- var _ref2 = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {},
73
- _ref2$debug = _ref2.debug,
74
- debug = _ref2$debug === void 0 ? false : _ref2$debug;
75
-
76
- var handler = schema[msg.method];
55
+ export const getHandler = function (schema, msg) {
56
+ let {
57
+ debug = false
58
+ } = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
59
+ const handler = schema[msg.method];
77
60
 
78
61
  if (!handler || typeof handler !== 'function') {
79
- debug && console.log("Unknown message method ".concat(msg.method));
80
- return function () {
81
- return /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
82
- return _regeneratorRuntime.wrap(function _callee$(_context) {
83
- while (1) {
84
- switch (_context.prev = _context.next) {
85
- case 0:
86
- return _context.abrupt("return", true);
87
-
88
- case 1:
89
- case "end":
90
- return _context.stop();
91
- }
92
- }
93
- }, _callee);
94
- }));
95
- };
62
+ debug && console.log(`Unknown message method ${msg.method}`);
63
+ return () => async () => true;
96
64
  }
97
65
 
98
66
  return handler;
99
67
  };
100
- export var message = function message(method) {
101
- var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
68
+ export const message = function (method) {
69
+ let params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
102
70
  return {
103
- method: method,
104
- params: params
71
+ method,
72
+ params
105
73
  };
106
74
  };
107
- export var responseMessage = function responseMessage(id, method) {
108
- var _ref4 = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {},
109
- error = _ref4.error,
110
- result = _ref4.result;
111
-
112
- return _objectSpread({
113
- id: id,
114
- method: method
115
- }, error ? {
116
- error: error
117
- } : {
118
- result: result
119
- });
120
- };
121
- export var sendResponseMessage = function sendResponseMessage(client) {
122
- return function (id, method, data) {
123
- return client.sendMessage(responseMessage(id, method, data), true);
75
+ export const responseMessage = function (id, method) {
76
+ let {
77
+ error,
78
+ result
79
+ } = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
80
+ return {
81
+ id,
82
+ method,
83
+ ...(error ? {
84
+ error
85
+ } : {
86
+ result
87
+ })
124
88
  };
125
89
  };
126
- export var voidFn = function voidFn() {
127
- return undefined;
128
- };
129
- export var isValidAccounts = function isValidAccounts(accounts) {
130
- var _context2;
131
-
132
- return _filterInstanceProperty(_context2 = ['', 'connected', 'current']).call(_context2, function (k) {
133
- return _typeof(k ? accounts[k] : accounts) === 'object';
134
- }).length === 3;
135
- };
136
- export var resolveOnAccount = function resolveOnAccount(addresses, onAccount) {
137
- var opt = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
90
+ export const sendResponseMessage = client => (id, method, data) => client.sendMessage(responseMessage(id, method, data), true);
91
+ export const voidFn = () => undefined;
92
+ export const isValidAccounts = accounts => ['', 'connected', 'current'].filter(k => typeof (k ? accounts[k] : accounts) === 'object').length === 3;
93
+ export const resolveOnAccount = function (addresses, onAccount) {
94
+ let opt = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
138
95
 
139
- if (!_findInstanceProperty(addresses).call(addresses, function (a) {
140
- return a === onAccount;
141
- })) {
142
- if (_typeof(opt.onAccount) !== 'object' || !isAccountBase(opt.onAccount)) throw new Error('Provided onAccount should be an AccountBase');
96
+ if (!addresses.find(a => a === onAccount)) {
97
+ if (typeof opt.onAccount !== 'object' || !isAccountBase(opt.onAccount)) throw new Error('Provided onAccount should be an AccountBase');
143
98
  onAccount = opt.onAccount;
144
99
  }
145
100
 
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/utils/aepp-wallet-communication/helpers.js"],"names":["isAccountBase","getBrowserAPI","force","window","chrome","browser","Object","Error","isInIframe","parent","sendMessage","connection","messageId","id","method","params","result","error","isNotificationOrResponse","msgData","jsonrpc","getHandler","schema","msg","debug","handler","console","log","message","responseMessage","sendResponseMessage","client","data","voidFn","undefined","isValidAccounts","accounts","k","length","resolveOnAccount","addresses","onAccount","opt","a"],"mappings":"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","sourcesContent":["/**\n * Browser helper functions\n */\nimport { isAccountBase } from '../../account/base'\n\nexport const getBrowserAPI = (force = false) => {\n const { chrome, browser } = window\n // Chrome, Opera support\n if (typeof chrome !== 'undefined' && chrome === Object(chrome)) return chrome\n // Firefox support\n if (typeof browser !== 'undefined' && browser === Object(browser)) return browser\n if (!force) throw new Error('Browser is not detected')\n return {}\n}\n\nexport const isInIframe = () => window !== window.parent\n\n/**\n * RPC helper functions\n */\nexport const sendMessage = (connection) => {\n let messageId = 0\n\n return ({ id, method, params, result, error }, isNotificationOrResponse = false) => {\n // Increment id for each request\n isNotificationOrResponse || (messageId += 1)\n id = isNotificationOrResponse ? (id || null) : messageId\n const msgData = params\n ? { params }\n : result\n ? { result }\n : { error }\n connection.sendMessage({\n jsonrpc: '2.0',\n ...id ? { id } : {},\n method,\n ...msgData\n })\n return id\n }\n}\n\nexport const getHandler = (schema, msg, { debug = false } = {}) => {\n const handler = schema[msg.method]\n if (!handler || typeof handler !== 'function') {\n debug && console.log(`Unknown message method ${msg.method}`)\n return () => async () => true\n }\n return handler\n}\n\nexport const message = (method, params = {}) => ({ method, params })\n\nexport const responseMessage = (id, method, { error, result } = {}) => ({ id, method, ...(error ? { error } : { result }) })\n\nexport const sendResponseMessage = (client) => (id, method, data) => client.sendMessage(responseMessage(id, method, data), true)\n\nexport const voidFn = () => undefined\n\nexport const isValidAccounts = (accounts) => (['', 'connected', 'current'].filter(k => typeof (k ? accounts[k] : accounts) === 'object')).length === 3\n\nexport const resolveOnAccount = (addresses, onAccount, opt = {}) => {\n if (!addresses.find(a => a === onAccount)) {\n if (typeof opt.onAccount !== 'object' || !isAccountBase(opt.onAccount)) throw new Error('Provided onAccount should be an AccountBase')\n onAccount = opt.onAccount\n }\n return onAccount\n}\n"],"file":"helpers.js"}
1
+ {"version":3,"sources":["../../../src/utils/aepp-wallet-communication/helpers.js"],"names":["isAccountBase","getBrowserAPI","force","chrome","browser","window","Object","Error","isInIframe","parent","sendMessage","connection","messageId","id","method","params","result","error","isNotificationOrResponse","msgData","jsonrpc","getHandler","schema","msg","debug","handler","console","log","message","responseMessage","sendResponseMessage","client","data","voidFn","undefined","isValidAccounts","accounts","filter","k","length","resolveOnAccount","addresses","onAccount","opt","find","a"],"mappings":"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","sourcesContent":["/**\n * Browser helper functions\n */\nimport { isAccountBase } from '../../account/base'\n\nexport const getBrowserAPI = (force = false) => {\n const { chrome, browser } = window\n // Chrome, Opera support\n if (typeof chrome !== 'undefined' && chrome === Object(chrome)) return chrome\n // Firefox support\n if (typeof browser !== 'undefined' && browser === Object(browser)) return browser\n if (!force) throw new Error('Browser is not detected')\n return {}\n}\n\nexport const isInIframe = () => window !== window.parent\n\n/**\n * RPC helper functions\n */\nexport const sendMessage = (connection) => {\n let messageId = 0\n\n return ({ id, method, params, result, error }, isNotificationOrResponse = false) => {\n // Increment id for each request\n isNotificationOrResponse || (messageId += 1)\n id = isNotificationOrResponse ? (id || null) : messageId\n const msgData = params\n ? { params }\n : result\n ? { result }\n : { error }\n connection.sendMessage({\n jsonrpc: '2.0',\n ...id ? { id } : {},\n method,\n ...msgData\n })\n return id\n }\n}\n\nexport const getHandler = (schema, msg, { debug = false } = {}) => {\n const handler = schema[msg.method]\n if (!handler || typeof handler !== 'function') {\n debug && console.log(`Unknown message method ${msg.method}`)\n return () => async () => true\n }\n return handler\n}\n\nexport const message = (method, params = {}) => ({ method, params })\n\nexport const responseMessage = (id, method, { error, result } = {}) =>\n ({ id, method, ...(error ? { error } : { result }) })\n\nexport const sendResponseMessage = (client) => (id, method, data) =>\n client.sendMessage(responseMessage(id, method, data), true)\n\nexport const voidFn = () => undefined\n\nexport const isValidAccounts = (accounts) => (['', 'connected', 'current'].filter(k => typeof (k ? accounts[k] : accounts) === 'object')).length === 3\n\nexport const resolveOnAccount = (addresses, onAccount, opt = {}) => {\n if (!addresses.find(a => a === onAccount)) {\n if (typeof opt.onAccount !== 'object' || !isAccountBase(opt.onAccount)) throw new Error('Provided onAccount should be an AccountBase')\n onAccount = opt.onAccount\n }\n return onAccount\n}\n"],"file":"helpers.js"}