json_api 4.0.0
json_api: ^4.0.0 copied to clipboard
Framework-agnostic implementations of JSON:API Client (Flutter, Web and VM) and Server (VM). Supports JSON:API v1.0 (http://jsonapi.org)
Changelog #
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
3.2.0 - 2019-12-30 #
3.1.0 - 2019-12-19 #
3.0.0 - 2019-12-17 #
Added #
- Support for custom non-standard links (#61)
- Client supports
jsonapikey in outgoing requests. Document.contentTypeconstant.IdentifierObject.fromIdentifierfactory method
Changed #
Most of the changes are BC-BREAKING.
URLBuilderwas renamed toUrlFactory.DocumentBuilderwas split intoServerDocumentFactoryandClientDocumentFactory. Some methods were renamed.- Static
decodeJsonmethods were renamed tofromJson. Identifier.equalsnow requires the runtime type to be exactly the same.Link.decodeJsonMapwas renamed tomapFromJson.- The signature of
TargetMatcher. - The signature of
Controller. Serverwas renamed toJsonApiServer.Paginationwas renamed toPaginationStrategy.
Removed #
- (Server)
ResourceTarget,CollectionTarget,RelationshipTargetclasses. QueryParametersinterface.Routerclass.Queryclass.
2.0.0 - 2019-07-12 #
Changed #
- This package now consolidates the Client, the Server and the Document in one single library.
It does not depend on
json_api_documentandjson_api_serveranymore, please remove these packages from yourpubspec.yaml. - The min Dart SDK version bumped to
2.3.0 - The Client requires an instance of HttpClient to be passed to the constructor explicitly.
- Both the Document and the Server have been refactored with lots of BREAKING CHANGES. See the examples and the functional tests for details.
- Meta properties are not defensively copied, but set directly. Meta property behavior is unified across the Document model.
Removed #
JsonApiParseris removed. Use the staticdecodeJsonmethods in the corresponding classes instead.
0.6.0 - 2019-03-25 #
Changed #
- JSON:API Document moved out
- Renamed
client.removeToOne(...)toclient.deleteToOne(...)