We have a mobile app in Angular 4 (Ionic 4) using GraphQL to fetch, mutate, and subscribe to data on our backend servers. What I really want is gracefully enable offline data interaction so that our app can capture user entries, display the optimistic results, and then send the buffered mutations to the server when the internet connection is available again.
I'm rather annoyed that Apollo 2.x has dropped the redux store and corresponding redux-offline options. It looks like the new potential is to build apollo-link handlers and let the network transport chain transparently buffer the operations. Poking around the internet, it appears that some folks have started in this direction with:
[login to view URL]
[login to view URL]
My goal for this is to build out a reusable component that can be contributed to the community as Open Source and have shared support and maintenance.
Successful completion of this project would be a working proof-of-concept Ionic 4 project that demonstrated the ability to connect to a GraphQL server for an initial data load, then have the internet connection shut off with the app recognizing that the internet connection is offline, allow additional data changes with realtime query result and UI changes, and then have the data mutations sent to the server when the internet connection is available again.
Of particular interest/concern is handling the case of having an new GraphQL object created, having a temporary id assigned in the optimistic mutation handler, having additional mutations modify that offline-created object, and then appropriately handling getting an official ID from the server and still applying the buffered follow-on mutations.
15 фрилансеров(-а) в среднем готовы выполнить эту работу за $1253
Hi Client! I read your project description carefully and I'm interested in your project. I can do it. Please contact with me and discuss more detail. Thanks.