const fetchReactionsFromDB = async (request: GetReactionResolverRequest) => {
// Fetch reaction annotations from your DB
const result = await __getReactionsFromYourDB__(request)
.then((response) => {
return { data: response, success: true, statusCode: 200 };
})
.catch((error) => {
return { success: false, statusCode: 500 };
});
return result;
};
const saveReactionsToDB = async (request: SaveReactionResolverRequest) => {
const result = await __saveReactionsToYourDB__(request)
.then((response) => {
return { success: true, statusCode: 200 };
})
.catch((error) => {
return { success: false, statusCode: 500 };
});
return result;
};
const deleteReactionsFromDB = async (request: DeleteReactionResolverRequest) => {
const result = await __deleteReactionsFromYourDB__(request)
.then((response) => {
return { success: true, statusCode: 200 };
})
.catch((error) => {
return { success: false, statusCode: 500 };
});
return result;
};
const reactionResolverConfig: ResolverConfig = {
resolveTimeout: 2000,
getRetryConfig: {
retryCount: 3,
retryDelay: 2000
},
saveRetryConfig: {
retryCount: 3,
retryDelay: 2000
},
deleteRetryConfig: {
retryCount: 3,
retryDelay: 2000
}
};
const reactionAnnotationDataProvider: ReactionAnnotationDataProvider = {
get: fetchReactionsFromDB,
save: saveReactionsToDB,
delete: deleteReactionsFromDB,
config: reactionResolverConfig
};
<VeltProvider
apiKey='YOUR_API_KEY'
dataProviders={{
reaction: reactionAnnotationDataProvider
}}
>
</VeltProvider>