UNPKG

@told.club/sdk-rn

Version:
54 lines 1.73 kB
import AsyncStorage from '@react-native-async-storage/async-storage'; let surveyData = []; const storageKey = 'ToldSurveyData'; export async function loadSurveyData() { const data = await AsyncStorage.getItem(storageKey); if (data) surveyData = JSON.parse(data); } export function getRepliedSurvey() { return surveyData.filter(data => data.replied > 0).map(data => ({ surveyId: data.surveyId, date: data.date, replied: data.replied > 0 })); } export function setSeen(surveyId) { const actualData = surveyData.find(data => data.surveyId === surveyId); if (actualData) { // If the survey is already seen, increment the seenCount actualData.seenCount += 1; } else { // If the survey is not seen, add it to the list surveyData.push({ surveyId, seenCount: 1, replied: 0, date: undefined }); } AsyncStorage.setItem(storageKey, JSON.stringify(surveyData)); } export function setReplied(surveyId) { const actualData = surveyData.find(data => data.surveyId === surveyId); if (actualData) { // If the survey is already seen, increment the replied actualData.replied += 1; actualData.date = new Date().toISOString(); } else { // If the survey is not seen, add it to the list surveyData.push({ surveyId, seenCount: 0, replied: 1, date: new Date().toISOString() }); } AsyncStorage.setItem(storageKey, JSON.stringify(surveyData)); } export function isSeen(surveyId) { return surveyData.some(data => data.surveyId === surveyId && data.seenCount > 0); } export function isReplied(surveyId) { return surveyData.some(data => data.surveyId === surveyId && data.replied > 0); } //# sourceMappingURL=ToldStorage.js.map