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