Skip to content

Instantly share code, notes, and snippets.

@gtsafas
Created July 23, 2020 21:31
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save gtsafas/851d684f5c12864ea84e1813f96306da to your computer and use it in GitHub Desktop.
Save gtsafas/851d684f5c12864ea84e1813f96306da to your computer and use it in GitHub Desktop.
const saveSnapshotToServer = async (snapshot) => {
// async code here.
// Send a snapshot to the server, store it locally somewhere, etc.
}
const overrideCallback = (Provider) => {
// Extend default behavior
class MyOverride extends Provider {
async getSnapshot() {
// Call super to access vanilla platform behavior
const snapshot = await super.getSnapshot();
// Perform any additional logic needed
const modifiedSnapshot = { ...snapshot, answer: 42 }
await saveSnapshotToServer(modifiedSnapshot);
return modifiedSnapshot;
}
}
// Return instance with methods to be consumed by Platform
return new MyOverride();
};
fin.Platform.init({ overrideCallback });
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment