n/a
- Added
NormalizedInMemoryCache
as a new cache option. @micimize - Fixed
Mutation
callingonCompleted
for loading state. @rafaelring - Fix type annotations. @HofmannZ
- Fixed http versions. @HofmannZ
- Added docs for the new
NormalizedInMemoryCache
option. @micimize - Added @rafaelring as a contributor. @HofmannZ
n/a
- Fixed
Query
variables not updating in the query. @micimize - Fixed
Mutation
widget's behavior to properly set loading status. @Igor1201
- Added @micimize as a contributor. @HofmannZ
- Added @Igor1201 as a contributor. @HofmannZ
n/a
- Fixed connectivity errors not being thrown and streamed. @HofmannZ
n/a
n/a
- Removed an unused class. @HofmannZ
- Formatted the query manger. @HofmannZ
- Handle charset encoding in responses @kolja-esders
- Added some inline docs to Query widget. @HofmannZ
- Improved the inline docs of the client. @HofmannZ
- Update the example. @HofmannZ
n/a
- Fixed a bug where getting the operation name was always returning null. @HofmannZ
- Override the fetch policy if the default query option is used. @HofmannZ
- Split up fetching and polling in the observable query. @HofmannZ
- Check if the stream is closed, before adding a new event to it. @HofmannZ
- Check if the variables have actually changed form or to null. @HofmannZ
- Added a new getter to check if a query result has errors. @HofmannZ
- Refactored the scheduler to only handle polling queries. @HofmannZ
- Updated the mutation widget to use the new api in observable query. @HofmannZ
- Resolve type cast exception when handling GraphQL errors. @kolja-esders @HofmannZ
- Propagate GraphQL errors to caller instead of throwing network exception. @kolja-esders
n/a
n/a
- Updated lint options in preparation for upcoming CI checks. @HofmannZ
n/a
n/a
- Fixed a bug where the wrong key was selected from the context map. @HofmannZ
- Fixed a scenario where the dispose method was calling the
close
method on theobservableQuery
class which might not have been initialised yet. @HofmannZ - Added the
onComplete
callback for theMutation
widget. @HofmannZ - Added the
initPayload
as an optional parameter for theconnect
method on theSocketClient
class. @lordgreg
- Added an example of optionally overriding http options trough the context. @HofmannZ
- Added @lordgreg as a contributor. @HofmannZ
- Updated the example with explicit type casting. @HofmannZ
- Updated the
Mutation
example with the newonComplete
callback. @HofmannZ
n/a
- Always return something from the
read
method in the cache class. @HofmannZ - Only save to cache with certain fetch policies. @HofmannZ
- Throw an error when no data from network with certain fetch policies. @HofmannZ
- Added a document parser. @HofmannZ
- Added operation name from document to the operation. @HofmannZ
- Only create a new observable query if options have changed. @HofmannZ
- Add context to the links. @HofmannZ
- Parse context in the http link to update the config. @HofmannZ
- Change the type of context from dynamic to Map<String, dynamic. @HofmannZ
n/a
n/a
- Reverted changes to the required Dart version. @HofmannZ
- Added missing return statsments. @HofmannZ
n/a
n/a
GraphQLClient
now reads and writes data from theCache
based on the providedFetchPolicy
option. @HofmannZ- Implemented caching for data from
FetchResults
. @HofmannZ - The library now tagets Dart version
>=2.1.0-dev.0.0 <3.0.0
as recomended by Flutter0.6.0
. @HofmannZ - Removed the old client from the library. @HofmannZ
- Document the new API. @HofmannZ
- Write an upgrade guide. @HofmannZ
- Clean up the example. @HofmannZ
- Renamed
Client
toGraphQLClient
to avoid name collision with other packages. @HofmannZ - Renamed
GraphqlProvider
toGraphQLProvider
to align with new naming. @HofmannZ - Renamed
GraphqlConsumer
toGraphQLConsumer
to align with new naming. @HofmannZ - Renamed
GQLError
toGraphQLError
to align with new naming. @HofmannZ GraphQLClient
requires aLink
to passed into the constructor. @HofmannZGraphQLClient
no longer requires aendPoint
orapiToken
to be passed into the constructor. Instead you can provide it to theLink
. @HofmannZ- The
Query
andMutation
widgets are nowStreamBuilders
, there the api did change slightly. @HofmannZ
- Improved typing throughout the library. @HofmannZ
- Queries are handled as streams of operations. @HofmannZ
- Added the
HttpLink
to handle requests using http. @HofmannZ HttpLink
allows headers to be customised. @HofmannZ- The api allows contributors to write their own custom links. @HofmannZ
- Implement the new link system in the example. @HofmannZ
n/a
- Fix wrong typedef causing runtime type mismatch. @HofmannZ
- Update the reference to the next branch. @HofmannZ
n/a
- Upgrade dependencies. @HofmannZ
- Added a refrence to our next major release. @HofmannZ
n/a
- Move test dependency to the dev section. @fabiocarneiro
- Fix version resolving for test dependencies. @HofmannZ
n/a
n/a
- Added error extensions support. @dustin-graham
- Changed the mutation typedef to return a Future, allowing async/await. @HofmannZ
- Fixed error handling when location is not provided. @adelcasse
- Fixed a bug where the client might no longer be in the same context. @HofmannZ
n/a
n/a
- Added basic error handeling for queries and mutations @mmadjer
- Added missing export for the
GraphqlConsumer
widget @AleksandarFaraj
n/a
n/a
- Code formatting @HofmannZ
- Updated the package description @HofmannZ
n/a
- Added support for subsciptions in the client. @cal-pratt
- Added the
Subscription
widget. You can no direcly acces streams from Flutter. @cal-pratt
- Added instructions for adding subscripton to your poject. @cal-pratt
- Updated the
About this project
section. @HofmannZ
- The library now requires your app to be wrapped with the
GraphqlProvider
widget. @HofmannZ - The global
client
variable is no longer available. Instead use theGraphqlConsumer
widget. @HofmannZ
- Added the
GraphqlProvider
widget. The client is now stored in anInheritedWidget
, and can be accessed anywhere within the app. @HofmannZ
Client client = GraphqlProvider.of(context).value;
- Added the
GraphqlConsumer
widget. For ease of use we added a widget that uses the same builder structure as theQuery
andMutation
widgets. @HofmannZ
Under the hood it access the client from the
BuildContext
.
- Added the option to optionally provide the
apiToken
to theClient
constructor. It is still possible to set theapiToken
with setter method. @HofmannZ
return new GraphqlConsumer(
builder: (Client client) {
// do something with the client
return new Container();
},
);
- Added documentation for the new
GraphqlProvider
@HofmannZ - Added documentation for the new
GraphqlConsumer
@HofmannZ - Changed the setup instructions to include the new widgets @HofmannZ
- Changed the example to include the new widgets @HofmannZ
n/a
- Query: changed
Timer
toTimer.periodic
@eusdima - Minor logic tweak @eusdima
- Use absolute paths in the library @HofmannZ
- Fix mutations example bug not updating star bool @cal-pratt
n/a
- Added polling timer as a variable for easy deletion on dispose
- Fixed bug when Query timer is still active when the Query is disposed
- Added instant query fetch when the query variables are updated
n/a
n/a
- Fixed error when cache file is non-existent
n/a
n/a
- Fixed json error parsing.
n/a
n/a
- Introduced
onCompleted
callback for mutiations. - Excluded some config files from version control.
- Fixed typos in the
readme.md
. - The examples inculde an example of the
onCompleted
callback.
n/a
n/a
- The examples now porperly reflect the changes to the library.
- The Client now requires a from of cache.
- The name of the
execute
method on theClient
class changed toquery
.
- Implemented in-memory cache.
- Write memory to file when in background.
- Added provider widget to save and restore the in-memory cache.
- Restructure the project.
- Update the
README.md
to refelct changes in the code. - update the example to refelct changes in the code.
- Changed data type to
Map
instaid ofObject
to be more explicit.
- Cosmatic changes.
- Added a Flutter app example.
- Fixed the example in
README.md
. - Added more badges.
- Changed query widget
polling
argument topollInterval
, following the react-apollo api.
- Query polling is now optional.
- Updated the docs with the changes in api.
My colleague and I created a simple implementation of a GraphQL Client for Flutter. (Many thanks to Eus Dima, for his work on the initial client.)
n/a
- A client to connect to your GraphQL server.
- A query widget to handle GraphQL queries.
- A mutation widget to handle GraphQL mutations.
- Simple support for query polling.
- Initial documentation.