- All mentions of
Account
in statement-related classes were replaced withStatementSource
BankCard.type
andAccount.type
are now aCardTypeClass
instance instead of aCardType
enum- In
Statement.list
,reverse
parameter was renamed toisReverseChronological
and now defaults totrue
- In
Statement.list
,ignoreErrors
parameter was removed - The statement stream may now include service messages, notifying about possible
discrepancies in the data. Right now such messages may be yielded when response length
equals
maxPossibleItems
and the requested time range can't be smaller. This means some data might get truncated in the requested time range. You can check for service messages usingStatementItem.isServiceMessage
. You can also setignoreServiceMessages
totrue
. CashbackType.toString
now returns the same kind of string as API returns instead of enum nameLazyAccount
was replaced withLazyStatementSource
, the class was completely removed. The change also impactsLazyStatementItem
class. You can cast the result of theLazyStatementSource.resolve
method toAccount
orJar
to get specific fields.
Account
andJar
are now subclasses ofStatementSource
, this allows to fetch statements from jars too now usingStatementSource.statement
- Added support for
madeInUkraine
card type - Added access to raw card type string in
BankCard.type.raw
- Exposed
lastRequestsTimes
andglobalLastRequestTime
in API class to allow for state restoration and notifying the user about rate limits - Added fields and data types related to service messages in statement items
- Added
AbortController
class to API to allow for cancelling requests. If the request is still in the cart, it will not be sent to the server when its turn comes.APIError
with code 3 will be thrown as a response. - Added support for
AbortController
inAPIRequest
- Added
abortController
argument toStatement.list
- Added methods
BankCard.isMastercard
andBankCard.isVisa
- Made most of constructors in mono library public, including
fromJSON
, to support persistence - Added
toJSON()
methods to many classes in mono library for persistence support APIError
now has a new type -isCancelled
, triggered when the request was cancelled usingAbortController
- Added
Cashback.fromType
factory - Added
StatementItemServiceMessageCode
enum to distinguish between different service message types
- Rewritten
Statement.list
to handle cases when more than maxPossibleItems are returned by the API Statement.maxRequestRange
is now set to 31 days and 1 hour instead of 31 days- Made
Statement.maxRequestRange
andStatement.maxPossibleItems
modifiable API.globalTimeout
is not final anymore
- Bump http to 1.1.x
- Added rebuilding card type
- More careful sendId parsing to avoid exceptions
- Added support for
counterName
field inStatementItem
- Increased upper SDK constraint to declare support for Dart 3
- Documentation fixes
- Don't throw exception when backend returns
null
as cashback type (happens withfop
account type)
- Minimum Dart version is 2.17.0
CurrencyInfo
now requires a date parameter for both its constructors
Client.id
andAccount.sendId
changed their types fromString
toSendId
Cashback.type
andAccount.cashbackType
changed their types fromString
toCashbackType
. Arbitrary money cashback is not supported anymore.
- Added support for card type
eAid
- Added
toString()
implementations forCardType
,BankCard
,Client
,Account
- Fields
Client.id
andAccount.sendId
can now be used to generatesend.monobank.ua
links thanks to the newSendId
type and itsSendId.url
getter - Support for getting
webhookUrl
underClient
and setting one usingClient.setWebhook
- Permissions list of the current token with
Client.permissions
- Jars list of the current user with
Client.jars
- Access FOP invoice ID with
StatementItem.invoiceId
- Parse webhook events with
WebhookEvent.fromJson
- Added
CurrencyInfo.date
property
- Minor refactoring
- Added support for new API fields
- Dependency update
- Max date range extended to 31 days
- Bugs fixed
- Null safety
- Bugs fixed
- Null safety
- Bugs fixed
- Breaking change: /mcc/mcc.dart removed
- Docs fixes
- Fixed CurrencyInfo integer parsing error
- Support for iban
- Support for fop account type
- isCreditUsed works properly now
- Changed card mask type to String so leading zeros won't ruin the actual value
- Fixed currency getting
- Getting currency example
- Formatting
- Renamed files
- more dartfmt
- dartfmt fixes
- Combined examples to a single file
- Added examples
- Fix metadata
- Initial version