(self, item: dict, currency: Currency = None)
| 1216 | return self.safe_string(types, type, type) |
| 1217 | |
| 1218 | def parse_ledger_entry(self, item: dict, currency: Currency = None) -> LedgerEntry: |
| 1219 | # |
| 1220 | # { |
| 1221 | # 'LTFK7F-N2CUX-PNY4SX': { |
| 1222 | # "refid": "TSJTGT-DT7WN-GPPQMJ", |
| 1223 | # "time": 1520102320.555, |
| 1224 | # "type": "trade", |
| 1225 | # "aclass": "currency", |
| 1226 | # "asset": "XETH", |
| 1227 | # "amount": "0.1087194600", |
| 1228 | # "fee": "0.0000000000", |
| 1229 | # "balance": "0.2855851000" |
| 1230 | # }, |
| 1231 | # ... |
| 1232 | # } |
| 1233 | # |
| 1234 | id = self.safe_string(item, 'id') |
| 1235 | direction = None |
| 1236 | account = None |
| 1237 | referenceId = self.safe_string(item, 'refid') |
| 1238 | referenceAccount = None |
| 1239 | type = self.parse_ledger_entry_type(self.safe_string(item, 'type')) |
| 1240 | currencyId = self.safe_string(item, 'asset') |
| 1241 | code = self.safe_currency_code(currencyId, currency) |
| 1242 | currency = self.safe_currency(currencyId, currency) |
| 1243 | amount = self.safe_string(item, 'amount') |
| 1244 | if Precise.string_lt(amount, '0'): |
| 1245 | direction = 'out' |
| 1246 | amount = Precise.string_abs(amount) |
| 1247 | else: |
| 1248 | direction = 'in' |
| 1249 | timestamp = self.safe_integer_product(item, 'time', 1000) |
| 1250 | return self.safe_ledger_entry({ |
| 1251 | 'info': item, |
| 1252 | 'id': id, |
| 1253 | 'direction': direction, |
| 1254 | 'account': account, |
| 1255 | 'referenceId': referenceId, |
| 1256 | 'referenceAccount': referenceAccount, |
| 1257 | 'type': type, |
| 1258 | 'currency': code, |
| 1259 | 'amount': self.parse_number(amount), |
| 1260 | 'before': None, |
| 1261 | 'after': self.safe_number(item, 'balance'), |
| 1262 | 'status': 'ok', |
| 1263 | 'timestamp': timestamp, |
| 1264 | 'datetime': self.iso8601(timestamp), |
| 1265 | 'fee': { |
| 1266 | 'cost': self.safe_number(item, 'fee'), |
| 1267 | 'currency': code, |
| 1268 | }, |
| 1269 | }, currency) |
| 1270 | |
| 1271 | def fetch_ledger(self, code: Str = None, since: Int = None, limit: Int = None, params={}) -> List[LedgerEntry]: |
| 1272 | """ |
nothing calls this directly
no test coverage detected