style: run npm run format

This commit is contained in:
Danny Liu 2024-04-05 21:02:02 -07:00
parent a68b95c95f
commit 5694f16624
3 changed files with 27 additions and 16 deletions

View file

@ -151,9 +151,12 @@
if (canvasPixelTest()) { if (canvasPixelTest()) {
profileImageUrl = generateInitialsImage(name); profileImageUrl = generateInitialsImage(name);
} else { } else {
toast.error("Canvas pixel test failed, fingerprint evasion likely. Disable fingerprint evasion and try again!", { toast.error(
autoClose: 1000 * 10, 'Canvas pixel test failed, fingerprint evasion likely. Disable fingerprint evasion and try again!',
}); {
autoClose: 1000 * 10
}
);
} }
}}>{$i18n.t('Use Gravatar')}</button }}>{$i18n.t('Use Gravatar')}</button
> >

View file

@ -99,7 +99,7 @@ export const getGravatarURL = (email) => {
export const canvasPixelTest = () => { export const canvasPixelTest = () => {
// Test a 1x1 pixel to potentially identify browser/plugin fingerprint blocking or spoofing // Test a 1x1 pixel to potentially identify browser/plugin fingerprint blocking or spoofing
// Inspiration: https://github.com/kkapsner/CanvasBlocker/blob/master/test/detectionTest.js // Inspiration: https://github.com/kkapsner/CanvasBlocker/blob/master/test/detectionTest.js
const canvas = document.createElement("canvas"); const canvas = document.createElement('canvas');
const ctx = canvas.getContext('2d'); const ctx = canvas.getContext('2d');
canvas.height = 1; canvas.height = 1;
canvas.width = 1; canvas.width = 1;
@ -107,11 +107,10 @@ export const canvasPixelTest = () => {
const pixelValues = imageData.data; const pixelValues = imageData.data;
// Generate RGB test data // Generate RGB test data
for (let i = 0; i < imageData.data.length; i += 1){ for (let i = 0; i < imageData.data.length; i += 1) {
if (i % 4 !== 3){ if (i % 4 !== 3) {
pixelValues[i] = Math.floor(256 * Math.random()); pixelValues[i] = Math.floor(256 * Math.random());
} } else {
else {
pixelValues[i] = 255; pixelValues[i] = 255;
} }
} }
@ -120,16 +119,23 @@ export const canvasPixelTest = () => {
const p = ctx.getImageData(0, 0, canvas.width, canvas.height).data; const p = ctx.getImageData(0, 0, canvas.width, canvas.height).data;
// Read RGB data and fail if unmatched // Read RGB data and fail if unmatched
for (let i = 0; i < p.length; i += 1){ for (let i = 0; i < p.length; i += 1) {
if (p[i] !== pixelValues[i]){ if (p[i] !== pixelValues[i]) {
console.log("canvasPixelTest: Wrong canvas pixel RGB value detected:", p[i], "at:", i, "expected:", pixelValues[i]); console.log(
console.log("canvasPixelTest: Canvas blocking or spoofing is likely"); 'canvasPixelTest: Wrong canvas pixel RGB value detected:',
p[i],
'at:',
i,
'expected:',
pixelValues[i]
);
console.log('canvasPixelTest: Canvas blocking or spoofing is likely');
return false; return false;
} }
} }
return true; return true;
} };
export const generateInitialsImage = (name) => { export const generateInitialsImage = (name) => {
const canvas = document.createElement('canvas'); const canvas = document.createElement('canvas');
@ -138,7 +144,9 @@ export const generateInitialsImage = (name) => {
canvas.height = 100; canvas.height = 100;
if (!canvasPixelTest()) { if (!canvasPixelTest()) {
console.log("generateInitialsImage: failed pixel test, fingerprint evasion is likely. Using default image."); console.log(
'generateInitialsImage: failed pixel test, fingerprint evasion is likely. Using default image.'
);
return '/user.png'; return '/user.png';
} }

View file

@ -44,8 +44,8 @@
); );
if (!canvasPixelTest()) { if (!canvasPixelTest()) {
toast.error("Canvas pixel test failed, fingerprint evasion likely. Default image used.", { toast.error('Canvas pixel test failed, fingerprint evasion likely. Default image used.', {
autoClose: 1000 * 10, autoClose: 1000 * 10
}); });
} }