UNPKG

@amityco/ts-sdk-react-native

Version:

Amity Social Cloud Typescript SDK

24 lines (19 loc) 730 B
// Due to we have optimistic logic, we will use referenceId as a id in SDK instead of storyId export const applyMissingField = ( rawData: Amity.RawStory, isCreated = false, ): Amity.InternalStory => { const { storyId, referenceId } = rawData; if (!isCreated) { if (referenceId) return { ...rawData, syncState: Amity.SyncState.Synced }; } return { ...rawData, syncState: Amity.SyncState.Synced, referenceId: storyId }; }; export const convertRawStoryToInternal = ( data: Amity.StoryPayload, isCreated = false, ): Amity.StoryWithOptimisticPayload => { const { stories } = data; const storiesData = stories.map(story => applyMissingField(story, isCreated)); return { ...data, stories: storiesData }; };