Commit 1e6ae1ec by G

image caching seems to be functionnal but require more test

parent 2dc5409d
import { loadAssetsAsync } from "@/utils/assetsCache";
import authenticateUser, { parseAuthicationErrors } from "@/utils/requests/authenticateUser";
import type { IuserInformations } from "@/utils/requests/types";
import getUserInformations, {
......@@ -234,6 +235,7 @@ export const UserAuthenticationContextProvider = ({ children }: { children: Reac
log.debug("UserAuthenticationContext | App Startup | loading saved user data.");
(async () => {
try {
await loadAssetsAsync();
const authenticationData = await loadAuthenticationData();
const userInformations = await loadUserInformations();
if (authenticationData && userInformations) {
......
// To load assets asynchronously
import { Asset } from "expo-asset";
import { LOG } from "@logger";
const log = LOG.extend("assetsCache");
const PATH_TO_ASSETS_FOLDER = "../../assets";
const IMAGE_TO_CACHE = [
require("../../assets/beasy_icon.png"),
require(`${PATH_TO_ASSETS_FOLDER}/beasy_splash.png`),
require(`${PATH_TO_ASSETS_FOLDER}/beasy_default.png`),
require(`${PATH_TO_ASSETS_FOLDER}/beasy_background.png`),
];
const cacheImages = () => {
return IMAGE_TO_CACHE.map((image) => {
log.verbose("cacheImages |", image);
return Asset.fromModule(image).downloadAsync();
});
};
export const cacheAssetsAsync = () => {
return Promise.all([...cacheImages()]);
};
export const loadAssetsAsync = async () => {
try {
await cacheAssetsAsync();
} catch (error) {
log.error("loadAssetsAsync |", error);
}
};
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment