in vizseq/_data/data_sources.py [0:0]
def cached(self, ids: List[int]) -> List[str]:
assert all(0 <= i < len(self) for i in ids)
if self.data_type == VizSeqDataType.text:
return [self.data[i] for i in ids]
else:
result = []
with zipfile.ZipFile(self.path) as zip_f:
for i in ids:
file_ext = _get_file_ext(self.data[i])
media_type = NON_TXT_FILE_EXT_TO_MEDIA_TYPE.get(
file_ext, None
)
assert media_type is not None
with zip_f.open(self.data[i], 'r') as f:
result.append(_get_base64_from_fp(f, media_type))
return result