All notable changes to this project will be documented in this file. See Conventional Commits for commit guidelines.
- add details to connection signing error (#484) (e24eafd)
- add error message to log (#342) (a79e4f4)
- add option check to attribute constructor (#450) (8aad3e9)
- Add samples folder as test root (#215) (b6a3c1c)
- added ariesframeworkerror to httpoutboundtransport (#438) (ee1a229)
- alter mediation recipient websocket transport priority (#434) (52c7897)
- check instance types of record properties (#163) (cc61c80)
- connection record type was BaseRecord (#278) (515395d)
- convert from buffer now also accepts uint8Array (#283) (dae123b)
- core: convert legacy prefix for inner msgs (#479) (a2b655a)
- core: do not throw error on timeout in http (#512) (4e73a7b)
- core: do not use did-communication service (#402) (cdf2edd)
- core: export AgentMessage (#480) (af39ad5)
- core: expose record metadata types (#556) (68995d7)
- core: fix empty error log in console logger (#524) (7d9c541)
- core: improve wallet not initialized error (#513) (b948d4c)
- core: improved present-proof tests (#482) (41d9282)
- core: log errors if message is undeliverable (#528) (20b586d)
- core: remove isPositive validation decorators (#477) (e316e04)
- core: remove unused url import (#466) (0f1323f)
- core: requested predicates transform type (#393) (69684bc)
- core: send messages now takes a connection id (#491) (ed9db11)
- core: using query-string to parse URLs (#457) (78e5057)
- Correctly persist createdAt attribute (#119) (797a112), closes #118
- date parsing (#426) (2d31b87)
- export indy pool config (#504) (b1e2b8c)
- export module classes from framework root (#315) (a41cc75)
- export ProofsModule to public API (#325) (f2e3a06)
- handle receive message promise rejection (#318) (ca6fb13)
- include error when message cannot be handled (#533) (febfb05)
- incorrect recip key with multi routing keys (#446) (db76823)
- legacy did:sov prefix on invitation (#216) (dce3081)
- make presentation proposal optional (#197) (1c5bfbd)
- make records serializable (#448) (7e2946e)
- mediator transports (#419) (87bc589)
- mediator updates (#432) (163cda1)
- monorepo release issues (#386) (89a628f)
- node: node v12 support for is-indy-installed (#542) (17e9157)
- proof configurable on proofRecord (#397) (8e83c03)
- redux-store: add reducers to initializeStore (#413) (d9aeabf)
- redux-store: credential and proof selector by id (#407) (fd8933d)
- Remove apostrophe from connection request message type (#364) (ee81d01)
- remove dependency on global types (#327) (fb28935)
- removed check for senderkey for connectionless exchange (#555) (ba3f17e)
- return valid schema in create schema method (#193) (4ca020b)
- revert target back to es2017 (#319) (9859db1)
- revert to ES2017 to fix function generator issues in react native (#226) (6078324)
- support mediation for connectionless exchange (#577) (3dadfc7)
- test failing because of moved import (#282) (e5efce0)
- their did doc not ours (#436) (0226609)
- use both thread id and connection id (#299) (3366a55)
- Use custom make-error with cause that works in RN (#285) (799b6c8)
- websocket and fetch fix for browser (#291) (84e570d)
- make a connection with mediator asynchronously (#231) (bafa839)
- fix(core)!: Improved typing on metadata api (#585) (4ab8d73), closes #585
- fix(core)!: update class transformer library (#547) (dee03e3), closes #547
- fix(core)!: prefixed internal metadata with _internal/ (#535) (aa1b320), closes #535
- feat(core)!: metadata on records (#505) (c92393a), closes #505
- fix(core)!: do not request ping res for connection (#527) (3db5519), closes #527
- refactor(core)!: simplify get creds for proof api (#523) (ba9698d), closes #523
- fix(core)!: improve proof request validation (#525) (1b4d8d6), closes #525
- feat(core)!: added basic message sent event (#507) (d2c04c3), closes #507
- Add assertions for credential state transitions (#130) (00d2b1f), closes #123
- add credential info to access attributes (#254) (2fef3aa)
- add delete methods to services and modules (#447) (e7ed602)
- add dependency injection (#257) (1965bfe)
- add from record method to cred preview (#428) (895f7d0)
- add inbound message queue (#339) (93893b7)
- add internal http outbound transporter (#255) (4dd950e)
- add internal polling inbound transporter (#323) (6dd273b)
- add internal ws outbound transporter (#267) (2933207)
- add isInitialized agent property (#293) (deb5554)
- add multiple inbound transports (#433) (56cb9f2)
- add problem report protocol (#560) (baee5db)
- add support for Multibase, Multihash and Hashlinks (#263) (36ceaea)
- add support for RFC 0211 mediator coordination (2465d4d)
- Add support for WebSocket transports (#256) (07b479f)
- add toJson method to BaseRecord (#455) (f3790c9)
- Added attachment extension (#266) (e8ab5fa)
- added decline credential offer method (#416) (d9ac141)
- added declined proof state and decline method for presentations (e5aedd0)
- added their label to the connection record (#370) (353e1d8)
- adds support for linked attachments (#320) (ea91559)
- allow for lazy wallet initialization (#331) (46918a1)
- allow to use legacy did sov prefix (#442) (c41526f)
- auto accept proofs (#367) (735d578)
- automatic transformation of record classes (#253) (e07b90e)
- break out indy wallet, better indy handling (#396) (9f1a4a7)
- core: add discover features protocol (#390) (3347424)
- core: add support for multi use inviations (#460) (540ad7b)
- core: connection-less issuance and verification (#359) (fb46ade)
- core: d_m invitation parameter and invitation image (#456) (f92c322)
- core: ledger module registerPublicDid implementation (#398) (5f2d512)
- core: store mediator id in connection record (#503) (da51f2e)
- core: support image url in invitations (#463) (9fda24e)
- core: support multiple indy ledgers (#474) (47149bc)
- core: update agent label and imageUrl plus per connection label and imageUrl (#516) (5e9a641)
- core: validate outbound messages (#526) (9c3910f)
- expose wallet API (#566) (4027fc9)
- generic attachment handler (#578) (4d7d3c1)
- method to retrieve credentials for proof request (#329) (012afa6)
- negotiation and auto accept credentials (#336) (55e8697)
- node: add http and ws inbound transport (#392) (34a6ff2)
- node: add is-indy-installed command (#510) (e50b821)
- only connect to ledger when needed (#273) (a9c261e)
- Pack and send a message based on DidDoc services (#304) (6a26337)
- redux-store: add mediation store (#424) (03e4341)
- redux-store: move from mobile agent repo (#388) (d84acc7)
- redux: delete credentialRecord and proofRecord (#421) (9fa6c6d)
- support newer did-communication service type (#233) (cf29d8f)
- support node v12+ (#294) (6ec201b)
- use computed tags for records (#313) (4e9a48b)
- Use session to send outbound message (#362) (7366ca7)
- removed the getAll() function.
- The agent’s
shutdown
method does not delete the wallet anymore. If you want to delete the wallet, you can do it via exposed wallet API. - class-transformer released a breaking change in a patch version, causing AFJ to break. I updated to the newer version and pinned the version exactly as this is the second time this has happened now.
- internal metadata is now prefixed with _internal to avoid clashing and accidental overwriting of internal data.
- fix(core): added _internal/ prefix on metadata
- credentialRecord.credentialMetadata has been replaced by credentialRecord.metadata.
- a trust ping response will not be requested anymore after completing a connection. This is not required, and also non-standard behaviour. It was also causing some tests to be flaky as response messages were stil being sent after one of the agents had already shut down.
- The
ProofsModule.getRequestedCredentialsForProofRequest
expected some low level message objects as input. This is not in line with the public API of the rest of the framework and has been simplified to only require a proof record id and optionally a boolean whether the retrieved credentials should be filtered based on the proof proposal (if available). - Proof request requestedAttributes and requestedPredicates are now a map instead of record. This is needed to have proper validation using class-validator.
BasicMessageReceivedEvent
has been replaced by the more generalBasicMessageStateChanged
event which triggers when a basic message is received or sent.- Tags on a record can now be accessed using the
getTags()
method. Records should be updated with this method and return the properties from the record to include in the tags. - extracts outbound transporter from Agent's constructor.