parseStories method
void
parseStories(
- Map<
String, dynamic> toPass, - dynamic imageStoryDuration,
- TextStyle? captionTextStyle,
- EdgeInsets? captionMargin,
- EdgeInsets? captionPadding,
Implementation
void parseStories(
Map<String, dynamic> toPass,
imageStoryDuration,
TextStyle? captionTextStyle,
EdgeInsets? captionMargin,
EdgeInsets? captionPadding,
) {
Map<String, dynamic> temp = {
'storyId': toPass['pressedStoryId'],
'file': toPass['snapshotData']['file'],
'title': toPass['snapshotData']['title'],
'previewImage': toPass['snapshotData']['previewImage'],
};
Stories stories = Stories.fromJson(jsonDecode(jsonEncode(temp)));
stories.file!.asMap().forEach((index, storyInsideImage) {
if (storyInsideImage.filetype != 'video') {
storyItems.add(StoryItem.pageImage(
CachedNetworkImageProvider(storyInsideImage.url![languageCode!]!),
// controller: storyController,
duration: Duration(seconds: imageStoryDuration),
caption: storyInsideImage.fileTitle != null
? storyInsideImage.fileTitle![languageCode!]
: null,
// captionTextStyle: captionTextStyle,
// captionMargin: captionMargin,
// captionPadding: captionPadding,
));
///todo fix
// storyItems.add(StoryItem.pageGif(
// storyInsideImage.url![languageCode!],
// controller: storyController,
// duration: Duration(seconds: imageStoryDuration),
// caption: storyInsideImage.fileTitle != null
// ? storyInsideImage.fileTitle![languageCode!]
// : null,
// captionTextStyle: captionTextStyle,
// captionMargin: captionMargin,
// captionPadding: captionPadding,
// ));
} else {
storyItems.add(
StoryItem.pageVideo(
storyInsideImage.url![languageCode!],
controller: storyController,
caption: storyInsideImage.fileTitle != null
? storyInsideImage.fileTitle![languageCode!]
: null,
captionTextStyle: captionTextStyle,
captionPadding: captionPadding,
captionMargin: captionMargin,
),
);
}
// cache images inside story
if (index < stories.file!.length - 1) {
DefaultCacheManager()
.getSingleFile(stories.file![index + 1].url![languageCode!]!);
}
});
}