diff --git a/utils/Tools.ts b/utils/Tools.ts index 589e843..655ee0c 100644 --- a/utils/Tools.ts +++ b/utils/Tools.ts @@ -20,4 +20,14 @@ export function checkPerm(base: number, required: number | UserPemissionFlags):b export function makeImageURL(root:string, { format='png', size=256 }:ImageOptions):string { return `${root}.${format}?size=${size}` +} + +export function supportsWebP() { + const elem = document.createElement('canvas') + if (elem.getContext && elem.getContext('2d')) { + // was able or not to get WebP representation + return elem.toDataURL('image/webp').indexOf('data:image/webp') == 0 + } + // very old browser like IE 8, canvas not supported + return false } \ No newline at end of file