parent
034678f4b9
commit
acba57f22b
@ -0,0 +1,38 @@ |
||||
import { |
||||
useEffect, |
||||
useMemo, |
||||
useState, |
||||
} from 'react' |
||||
|
||||
import { readToken } from 'helpers' |
||||
|
||||
export type TUseCardFrontside = { |
||||
preview?: string, |
||||
previewURL?: string, |
||||
} |
||||
|
||||
export const useCardPreview = ({ |
||||
preview, |
||||
previewURL, |
||||
}: TUseCardFrontside) => { |
||||
const [previewImage, setPreviewImage] = useState('') |
||||
const currentPreviewURL = useMemo(() => ( |
||||
previewURL |
||||
? `${previewURL}?access_token=${readToken()}` |
||||
: preview |
||||
), [preview, previewURL]) |
||||
|
||||
useEffect(() => { |
||||
(async () => { |
||||
const image = await fetch(String(currentPreviewURL), { |
||||
headers: { |
||||
Authorization: `Bearer ${readToken()}`, |
||||
}, |
||||
}).then((result) => result.blob()) |
||||
|
||||
setPreviewImage(URL.createObjectURL(image)) |
||||
})() |
||||
}, [currentPreviewURL]) |
||||
|
||||
return { previewImage } |
||||
} |
||||
Loading…
Reference in new issue