(false);
// Simulate API call
useEffect(() => {
setTimeout(() => {
- setMediaData(dummyMediaData);
+ //Check if token is valid
+ if (token !== dummyMediaData.token) {
+ //if invalid token, set error to true
+ setError(true);
+ setIsLoading(false);
+ } else {
+ setMediaData(dummyMediaData);
+ setIsLoading(false);
+ }
}, 1000);
}, [token]);
- const renderMediaComponent = () => {
- if (!mediaData) {
- return Loading...
;
- }
-
- switch (mediaData.media_type) {
+ function renderMediaComponent(data: MediaData) {
+ switch (data.media_type) {
case "audio":
- return ;
+ return ;
case "video":
- return ;
+ return ;
case "image":
- return ;
+ return ;
default:
return Unsupported media type
;
}
- };
+ }
+
+ if (isLoading) return Loading...
;
+ if (error || !mediaData) return Media not found
;
return (
{mediaData?.token}
- {renderMediaComponent()}
+ {renderMediaComponent(mediaData)}
);
-};
-
-export default MediaPage;
+}