PixelNavigation commited on
Commit
689b21b
·
1 Parent(s): 4fdda65

Added a dropbox

Browse files
frontend/package-lock.json CHANGED
@@ -8,7 +8,7 @@
8
  "name": "unmask",
9
  "version": "0.1.0",
10
  "dependencies": {
11
- "next": "15.3.5",
12
  "react": "^19.0.0",
13
  "react-dom": "^19.0.0"
14
  },
@@ -272,9 +272,9 @@
272
  }
273
  },
274
  "node_modules/@img/sharp-darwin-arm64": {
275
- "version": "0.34.2",
276
- "resolved": "https://registry.npmjs.org/@img/sharp-darwin-arm64/-/sharp-darwin-arm64-0.34.2.tgz",
277
- "integrity": "sha512-OfXHZPppddivUJnqyKoi5YVeHRkkNE2zUFT2gbpKxp/JZCFYEYubnMg+gOp6lWfasPrTS+KPosKqdI+ELYVDtg==",
278
  "cpu": [
279
  "arm64"
280
  ],
@@ -290,13 +290,13 @@
290
  "url": "https://opencollective.com/libvips"
291
  },
292
  "optionalDependencies": {
293
- "@img/sharp-libvips-darwin-arm64": "1.1.0"
294
  }
295
  },
296
  "node_modules/@img/sharp-darwin-x64": {
297
- "version": "0.34.2",
298
- "resolved": "https://registry.npmjs.org/@img/sharp-darwin-x64/-/sharp-darwin-x64-0.34.2.tgz",
299
- "integrity": "sha512-dYvWqmjU9VxqXmjEtjmvHnGqF8GrVjM2Epj9rJ6BUIXvk8slvNDJbhGFvIoXzkDhrJC2jUxNLz/GUjjvSzfw+g==",
300
  "cpu": [
301
  "x64"
302
  ],
@@ -312,13 +312,13 @@
312
  "url": "https://opencollective.com/libvips"
313
  },
314
  "optionalDependencies": {
315
- "@img/sharp-libvips-darwin-x64": "1.1.0"
316
  }
317
  },
318
  "node_modules/@img/sharp-libvips-darwin-arm64": {
319
- "version": "1.1.0",
320
- "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-arm64/-/sharp-libvips-darwin-arm64-1.1.0.tgz",
321
- "integrity": "sha512-HZ/JUmPwrJSoM4DIQPv/BfNh9yrOA8tlBbqbLz4JZ5uew2+o22Ik+tHQJcih7QJuSa0zo5coHTfD5J8inqj9DA==",
322
  "cpu": [
323
  "arm64"
324
  ],
@@ -332,9 +332,9 @@
332
  }
333
  },
334
  "node_modules/@img/sharp-libvips-darwin-x64": {
335
- "version": "1.1.0",
336
- "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-x64/-/sharp-libvips-darwin-x64-1.1.0.tgz",
337
- "integrity": "sha512-Xzc2ToEmHN+hfvsl9wja0RlnXEgpKNmftriQp6XzY/RaSfwD9th+MSh0WQKzUreLKKINb3afirxW7A0fz2YWuQ==",
338
  "cpu": [
339
  "x64"
340
  ],
@@ -348,9 +348,9 @@
348
  }
349
  },
350
  "node_modules/@img/sharp-libvips-linux-arm": {
351
- "version": "1.1.0",
352
- "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm/-/sharp-libvips-linux-arm-1.1.0.tgz",
353
- "integrity": "sha512-s8BAd0lwUIvYCJyRdFqvsj+BJIpDBSxs6ivrOPm/R7piTs5UIwY5OjXrP2bqXC9/moGsyRa37eYWYCOGVXxVrA==",
354
  "cpu": [
355
  "arm"
356
  ],
@@ -364,9 +364,9 @@
364
  }
365
  },
366
  "node_modules/@img/sharp-libvips-linux-arm64": {
367
- "version": "1.1.0",
368
- "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm64/-/sharp-libvips-linux-arm64-1.1.0.tgz",
369
- "integrity": "sha512-IVfGJa7gjChDET1dK9SekxFFdflarnUB8PwW8aGwEoF3oAsSDuNUTYS+SKDOyOJxQyDC1aPFMuRYLoDInyV9Ew==",
370
  "cpu": [
371
  "arm64"
372
  ],
@@ -380,9 +380,9 @@
380
  }
381
  },
382
  "node_modules/@img/sharp-libvips-linux-ppc64": {
383
- "version": "1.1.0",
384
- "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-ppc64/-/sharp-libvips-linux-ppc64-1.1.0.tgz",
385
- "integrity": "sha512-tiXxFZFbhnkWE2LA8oQj7KYR+bWBkiV2nilRldT7bqoEZ4HiDOcePr9wVDAZPi/Id5fT1oY9iGnDq20cwUz8lQ==",
386
  "cpu": [
387
  "ppc64"
388
  ],
@@ -396,9 +396,9 @@
396
  }
397
  },
398
  "node_modules/@img/sharp-libvips-linux-s390x": {
399
- "version": "1.1.0",
400
- "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-s390x/-/sharp-libvips-linux-s390x-1.1.0.tgz",
401
- "integrity": "sha512-xukSwvhguw7COyzvmjydRb3x/09+21HykyapcZchiCUkTThEQEOMtBj9UhkaBRLuBrgLFzQ2wbxdeCCJW/jgJA==",
402
  "cpu": [
403
  "s390x"
404
  ],
@@ -412,9 +412,9 @@
412
  }
413
  },
414
  "node_modules/@img/sharp-libvips-linux-x64": {
415
- "version": "1.1.0",
416
- "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-x64/-/sharp-libvips-linux-x64-1.1.0.tgz",
417
- "integrity": "sha512-yRj2+reB8iMg9W5sULM3S74jVS7zqSzHG3Ol/twnAAkAhnGQnpjj6e4ayUz7V+FpKypwgs82xbRdYtchTTUB+Q==",
418
  "cpu": [
419
  "x64"
420
  ],
@@ -428,9 +428,9 @@
428
  }
429
  },
430
  "node_modules/@img/sharp-libvips-linuxmusl-arm64": {
431
- "version": "1.1.0",
432
- "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-arm64/-/sharp-libvips-linuxmusl-arm64-1.1.0.tgz",
433
- "integrity": "sha512-jYZdG+whg0MDK+q2COKbYidaqW/WTz0cc1E+tMAusiDygrM4ypmSCjOJPmFTvHHJ8j/6cAGyeDWZOsK06tP33w==",
434
  "cpu": [
435
  "arm64"
436
  ],
@@ -444,9 +444,9 @@
444
  }
445
  },
446
  "node_modules/@img/sharp-libvips-linuxmusl-x64": {
447
- "version": "1.1.0",
448
- "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-x64/-/sharp-libvips-linuxmusl-x64-1.1.0.tgz",
449
- "integrity": "sha512-wK7SBdwrAiycjXdkPnGCPLjYb9lD4l6Ze2gSdAGVZrEL05AOUJESWU2lhlC+Ffn5/G+VKuSm6zzbQSzFX/P65A==",
450
  "cpu": [
451
  "x64"
452
  ],
@@ -460,9 +460,9 @@
460
  }
461
  },
462
  "node_modules/@img/sharp-linux-arm": {
463
- "version": "0.34.2",
464
- "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm/-/sharp-linux-arm-0.34.2.tgz",
465
- "integrity": "sha512-0DZzkvuEOqQUP9mo2kjjKNok5AmnOr1jB2XYjkaoNRwpAYMDzRmAqUIa1nRi58S2WswqSfPOWLNOr0FDT3H5RQ==",
466
  "cpu": [
467
  "arm"
468
  ],
@@ -478,13 +478,13 @@
478
  "url": "https://opencollective.com/libvips"
479
  },
480
  "optionalDependencies": {
481
- "@img/sharp-libvips-linux-arm": "1.1.0"
482
  }
483
  },
484
  "node_modules/@img/sharp-linux-arm64": {
485
- "version": "0.34.2",
486
- "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm64/-/sharp-linux-arm64-0.34.2.tgz",
487
- "integrity": "sha512-D8n8wgWmPDakc83LORcfJepdOSN6MvWNzzz2ux0MnIbOqdieRZwVYY32zxVx+IFUT8er5KPcyU3XXsn+GzG/0Q==",
488
  "cpu": [
489
  "arm64"
490
  ],
@@ -500,13 +500,35 @@
500
  "url": "https://opencollective.com/libvips"
501
  },
502
  "optionalDependencies": {
503
- "@img/sharp-libvips-linux-arm64": "1.1.0"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
504
  }
505
  },
506
  "node_modules/@img/sharp-linux-s390x": {
507
- "version": "0.34.2",
508
- "resolved": "https://registry.npmjs.org/@img/sharp-linux-s390x/-/sharp-linux-s390x-0.34.2.tgz",
509
- "integrity": "sha512-EGZ1xwhBI7dNISwxjChqBGELCWMGDvmxZXKjQRuqMrakhO8QoMgqCrdjnAqJq/CScxfRn+Bb7suXBElKQpPDiw==",
510
  "cpu": [
511
  "s390x"
512
  ],
@@ -522,13 +544,13 @@
522
  "url": "https://opencollective.com/libvips"
523
  },
524
  "optionalDependencies": {
525
- "@img/sharp-libvips-linux-s390x": "1.1.0"
526
  }
527
  },
528
  "node_modules/@img/sharp-linux-x64": {
529
- "version": "0.34.2",
530
- "resolved": "https://registry.npmjs.org/@img/sharp-linux-x64/-/sharp-linux-x64-0.34.2.tgz",
531
- "integrity": "sha512-sD7J+h5nFLMMmOXYH4DD9UtSNBD05tWSSdWAcEyzqW8Cn5UxXvsHAxmxSesYUsTOBmUnjtxghKDl15EvfqLFbQ==",
532
  "cpu": [
533
  "x64"
534
  ],
@@ -544,13 +566,13 @@
544
  "url": "https://opencollective.com/libvips"
545
  },
546
  "optionalDependencies": {
547
- "@img/sharp-libvips-linux-x64": "1.1.0"
548
  }
549
  },
550
  "node_modules/@img/sharp-linuxmusl-arm64": {
551
- "version": "0.34.2",
552
- "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-arm64/-/sharp-linuxmusl-arm64-0.34.2.tgz",
553
- "integrity": "sha512-NEE2vQ6wcxYav1/A22OOxoSOGiKnNmDzCYFOZ949xFmrWZOVII1Bp3NqVVpvj+3UeHMFyN5eP/V5hzViQ5CZNA==",
554
  "cpu": [
555
  "arm64"
556
  ],
@@ -566,13 +588,13 @@
566
  "url": "https://opencollective.com/libvips"
567
  },
568
  "optionalDependencies": {
569
- "@img/sharp-libvips-linuxmusl-arm64": "1.1.0"
570
  }
571
  },
572
  "node_modules/@img/sharp-linuxmusl-x64": {
573
- "version": "0.34.2",
574
- "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-x64/-/sharp-linuxmusl-x64-0.34.2.tgz",
575
- "integrity": "sha512-DOYMrDm5E6/8bm/yQLCWyuDJwUnlevR8xtF8bs+gjZ7cyUNYXiSf/E8Kp0Ss5xasIaXSHzb888V1BE4i1hFhAA==",
576
  "cpu": [
577
  "x64"
578
  ],
@@ -588,20 +610,20 @@
588
  "url": "https://opencollective.com/libvips"
589
  },
590
  "optionalDependencies": {
591
- "@img/sharp-libvips-linuxmusl-x64": "1.1.0"
592
  }
593
  },
594
  "node_modules/@img/sharp-wasm32": {
595
- "version": "0.34.2",
596
- "resolved": "https://registry.npmjs.org/@img/sharp-wasm32/-/sharp-wasm32-0.34.2.tgz",
597
- "integrity": "sha512-/VI4mdlJ9zkaq53MbIG6rZY+QRN3MLbR6usYlgITEzi4Rpx5S6LFKsycOQjkOGmqTNmkIdLjEvooFKwww6OpdQ==",
598
  "cpu": [
599
  "wasm32"
600
  ],
601
  "license": "Apache-2.0 AND LGPL-3.0-or-later AND MIT",
602
  "optional": true,
603
  "dependencies": {
604
- "@emnapi/runtime": "^1.4.3"
605
  },
606
  "engines": {
607
  "node": "^18.17.0 || ^20.3.0 || >=21.0.0"
@@ -611,9 +633,9 @@
611
  }
612
  },
613
  "node_modules/@img/sharp-win32-arm64": {
614
- "version": "0.34.2",
615
- "resolved": "https://registry.npmjs.org/@img/sharp-win32-arm64/-/sharp-win32-arm64-0.34.2.tgz",
616
- "integrity": "sha512-cfP/r9FdS63VA5k0xiqaNaEoGxBg9k7uE+RQGzuK9fHt7jib4zAVVseR9LsE4gJcNWgT6APKMNnCcnyOtmSEUQ==",
617
  "cpu": [
618
  "arm64"
619
  ],
@@ -630,9 +652,9 @@
630
  }
631
  },
632
  "node_modules/@img/sharp-win32-ia32": {
633
- "version": "0.34.2",
634
- "resolved": "https://registry.npmjs.org/@img/sharp-win32-ia32/-/sharp-win32-ia32-0.34.2.tgz",
635
- "integrity": "sha512-QLjGGvAbj0X/FXl8n1WbtQ6iVBpWU7JO94u/P2M4a8CFYsvQi4GW2mRy/JqkRx0qpBzaOdKJKw8uc930EX2AHw==",
636
  "cpu": [
637
  "ia32"
638
  ],
@@ -649,9 +671,9 @@
649
  }
650
  },
651
  "node_modules/@img/sharp-win32-x64": {
652
- "version": "0.34.2",
653
- "resolved": "https://registry.npmjs.org/@img/sharp-win32-x64/-/sharp-win32-x64-0.34.2.tgz",
654
- "integrity": "sha512-aUdT6zEYtDKCaxkofmmJDJYGCf0+pJg3eU9/oBuqvEeoB9dKI6ZLc/1iLJCTuJQDO4ptntAlkUmHgGjyuobZbw==",
655
  "cpu": [
656
  "x64"
657
  ],
@@ -681,9 +703,9 @@
681
  }
682
  },
683
  "node_modules/@next/env": {
684
- "version": "15.3.5",
685
- "resolved": "https://registry.npmjs.org/@next/env/-/env-15.3.5.tgz",
686
- "integrity": "sha512-7g06v8BUVtN2njAX/r8gheoVffhiKFVt4nx74Tt6G4Hqw9HCLYQVx/GkH2qHvPtAHZaUNZ0VXAa0pQP6v1wk7g==",
687
  "license": "MIT"
688
  },
689
  "node_modules/@next/eslint-plugin-next": {
@@ -697,9 +719,9 @@
697
  }
698
  },
699
  "node_modules/@next/swc-darwin-arm64": {
700
- "version": "15.3.5",
701
- "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-15.3.5.tgz",
702
- "integrity": "sha512-lM/8tilIsqBq+2nq9kbTW19vfwFve0NR7MxfkuSUbRSgXlMQoJYg+31+++XwKVSXk4uT23G2eF/7BRIKdn8t8w==",
703
  "cpu": [
704
  "arm64"
705
  ],
@@ -713,9 +735,9 @@
713
  }
714
  },
715
  "node_modules/@next/swc-darwin-x64": {
716
- "version": "15.3.5",
717
- "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-15.3.5.tgz",
718
- "integrity": "sha512-WhwegPQJ5IfoUNZUVsI9TRAlKpjGVK0tpJTL6KeiC4cux9774NYE9Wu/iCfIkL/5J8rPAkqZpG7n+EfiAfidXA==",
719
  "cpu": [
720
  "x64"
721
  ],
@@ -729,9 +751,9 @@
729
  }
730
  },
731
  "node_modules/@next/swc-linux-arm64-gnu": {
732
- "version": "15.3.5",
733
- "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-15.3.5.tgz",
734
- "integrity": "sha512-LVD6uMOZ7XePg3KWYdGuzuvVboxujGjbcuP2jsPAN3MnLdLoZUXKRc6ixxfs03RH7qBdEHCZjyLP/jBdCJVRJQ==",
735
  "cpu": [
736
  "arm64"
737
  ],
@@ -745,9 +767,9 @@
745
  }
746
  },
747
  "node_modules/@next/swc-linux-arm64-musl": {
748
- "version": "15.3.5",
749
- "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-15.3.5.tgz",
750
- "integrity": "sha512-k8aVScYZ++BnS2P69ClK7v4nOu702jcF9AIHKu6llhHEtBSmM2zkPGl9yoqbSU/657IIIb0QHpdxEr0iW9z53A==",
751
  "cpu": [
752
  "arm64"
753
  ],
@@ -761,9 +783,9 @@
761
  }
762
  },
763
  "node_modules/@next/swc-linux-x64-gnu": {
764
- "version": "15.3.5",
765
- "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-15.3.5.tgz",
766
- "integrity": "sha512-2xYU0DI9DGN/bAHzVwADid22ba5d/xrbrQlr2U+/Q5WkFUzeL0TDR963BdrtLS/4bMmKZGptLeg6282H/S2i8A==",
767
  "cpu": [
768
  "x64"
769
  ],
@@ -777,9 +799,9 @@
777
  }
778
  },
779
  "node_modules/@next/swc-linux-x64-musl": {
780
- "version": "15.3.5",
781
- "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-15.3.5.tgz",
782
- "integrity": "sha512-TRYIqAGf1KCbuAB0gjhdn5Ytd8fV+wJSM2Nh2is/xEqR8PZHxfQuaiNhoF50XfY90sNpaRMaGhF6E+qjV1b9Tg==",
783
  "cpu": [
784
  "x64"
785
  ],
@@ -793,9 +815,9 @@
793
  }
794
  },
795
  "node_modules/@next/swc-win32-arm64-msvc": {
796
- "version": "15.3.5",
797
- "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-15.3.5.tgz",
798
- "integrity": "sha512-h04/7iMEUSMY6fDGCvdanKqlO1qYvzNxntZlCzfE8i5P0uqzVQWQquU1TIhlz0VqGQGXLrFDuTJVONpqGqjGKQ==",
799
  "cpu": [
800
  "arm64"
801
  ],
@@ -809,9 +831,9 @@
809
  }
810
  },
811
  "node_modules/@next/swc-win32-x64-msvc": {
812
- "version": "15.3.5",
813
- "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-15.3.5.tgz",
814
- "integrity": "sha512-5fhH6fccXxnX2KhllnGhkYMndhOiLOLEiVGYjP2nizqeGWkN10sA9taATlXwake2E2XMvYZjjz0Uj7T0y+z1yw==",
815
  "cpu": [
816
  "x64"
817
  ],
@@ -886,12 +908,6 @@
886
  "dev": true,
887
  "license": "MIT"
888
  },
889
- "node_modules/@swc/counter": {
890
- "version": "0.1.3",
891
- "resolved": "https://registry.npmjs.org/@swc/counter/-/counter-0.1.3.tgz",
892
- "integrity": "sha512-e2BR4lsJkkRlKZ/qCHPw9ZaSxc0MVUd7gtbtaB7aMvHeJVYe8sOB8DBZkP2DtISHGSku9sCK6T6cnY0CtXrOCQ==",
893
- "license": "Apache-2.0"
894
- },
895
  "node_modules/@swc/helpers": {
896
  "version": "0.5.15",
897
  "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.15.tgz",
@@ -1806,17 +1822,6 @@
1806
  "node": ">=8"
1807
  }
1808
  },
1809
- "node_modules/busboy": {
1810
- "version": "1.6.0",
1811
- "resolved": "https://registry.npmjs.org/busboy/-/busboy-1.6.0.tgz",
1812
- "integrity": "sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==",
1813
- "dependencies": {
1814
- "streamsearch": "^1.1.0"
1815
- },
1816
- "engines": {
1817
- "node": ">=10.16.0"
1818
- }
1819
- },
1820
  "node_modules/call-bind": {
1821
  "version": "1.0.8",
1822
  "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.8.tgz",
@@ -3927,15 +3932,13 @@
3927
  "license": "MIT"
3928
  },
3929
  "node_modules/next": {
3930
- "version": "15.3.5",
3931
- "resolved": "https://registry.npmjs.org/next/-/next-15.3.5.tgz",
3932
- "integrity": "sha512-RkazLBMMDJSJ4XZQ81kolSpwiCt907l0xcgcpF4xC2Vml6QVcPNXW0NQRwQ80FFtSn7UM52XN0anaw8TEJXaiw==",
3933
  "license": "MIT",
3934
  "dependencies": {
3935
- "@next/env": "15.3.5",
3936
- "@swc/counter": "0.1.3",
3937
  "@swc/helpers": "0.5.15",
3938
- "busboy": "1.6.0",
3939
  "caniuse-lite": "^1.0.30001579",
3940
  "postcss": "8.4.31",
3941
  "styled-jsx": "5.1.6"
@@ -3947,19 +3950,19 @@
3947
  "node": "^18.18.0 || ^19.8.0 || >= 20.0.0"
3948
  },
3949
  "optionalDependencies": {
3950
- "@next/swc-darwin-arm64": "15.3.5",
3951
- "@next/swc-darwin-x64": "15.3.5",
3952
- "@next/swc-linux-arm64-gnu": "15.3.5",
3953
- "@next/swc-linux-arm64-musl": "15.3.5",
3954
- "@next/swc-linux-x64-gnu": "15.3.5",
3955
- "@next/swc-linux-x64-musl": "15.3.5",
3956
- "@next/swc-win32-arm64-msvc": "15.3.5",
3957
- "@next/swc-win32-x64-msvc": "15.3.5",
3958
- "sharp": "^0.34.1"
3959
  },
3960
  "peerDependencies": {
3961
  "@opentelemetry/api": "^1.1.0",
3962
- "@playwright/test": "^1.41.2",
3963
  "babel-plugin-react-compiler": "*",
3964
  "react": "^18.2.0 || 19.0.0-rc-de68d2f4-20241204 || ^19.0.0",
3965
  "react-dom": "^18.2.0 || 19.0.0-rc-de68d2f4-20241204 || ^19.0.0",
@@ -4593,9 +4596,9 @@
4593
  }
4594
  },
4595
  "node_modules/sharp": {
4596
- "version": "0.34.2",
4597
- "resolved": "https://registry.npmjs.org/sharp/-/sharp-0.34.2.tgz",
4598
- "integrity": "sha512-lszvBmB9QURERtyKT2bNmsgxXK0ShJrL/fvqlonCo7e6xBF8nT8xU6pW+PMIbLsz0RxQk3rgH9kd8UmvOzlMJg==",
4599
  "hasInstallScript": true,
4600
  "license": "Apache-2.0",
4601
  "optional": true,
@@ -4611,27 +4614,28 @@
4611
  "url": "https://opencollective.com/libvips"
4612
  },
4613
  "optionalDependencies": {
4614
- "@img/sharp-darwin-arm64": "0.34.2",
4615
- "@img/sharp-darwin-x64": "0.34.2",
4616
- "@img/sharp-libvips-darwin-arm64": "1.1.0",
4617
- "@img/sharp-libvips-darwin-x64": "1.1.0",
4618
- "@img/sharp-libvips-linux-arm": "1.1.0",
4619
- "@img/sharp-libvips-linux-arm64": "1.1.0",
4620
- "@img/sharp-libvips-linux-ppc64": "1.1.0",
4621
- "@img/sharp-libvips-linux-s390x": "1.1.0",
4622
- "@img/sharp-libvips-linux-x64": "1.1.0",
4623
- "@img/sharp-libvips-linuxmusl-arm64": "1.1.0",
4624
- "@img/sharp-libvips-linuxmusl-x64": "1.1.0",
4625
- "@img/sharp-linux-arm": "0.34.2",
4626
- "@img/sharp-linux-arm64": "0.34.2",
4627
- "@img/sharp-linux-s390x": "0.34.2",
4628
- "@img/sharp-linux-x64": "0.34.2",
4629
- "@img/sharp-linuxmusl-arm64": "0.34.2",
4630
- "@img/sharp-linuxmusl-x64": "0.34.2",
4631
- "@img/sharp-wasm32": "0.34.2",
4632
- "@img/sharp-win32-arm64": "0.34.2",
4633
- "@img/sharp-win32-ia32": "0.34.2",
4634
- "@img/sharp-win32-x64": "0.34.2"
 
4635
  }
4636
  },
4637
  "node_modules/shebang-command": {
@@ -4773,14 +4777,6 @@
4773
  "node": ">= 0.4"
4774
  }
4775
  },
4776
- "node_modules/streamsearch": {
4777
- "version": "1.1.0",
4778
- "resolved": "https://registry.npmjs.org/streamsearch/-/streamsearch-1.1.0.tgz",
4779
- "integrity": "sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==",
4780
- "engines": {
4781
- "node": ">=10.0.0"
4782
- }
4783
- },
4784
  "node_modules/string.prototype.includes": {
4785
  "version": "2.0.1",
4786
  "resolved": "https://registry.npmjs.org/string.prototype.includes/-/string.prototype.includes-2.0.1.tgz",
 
8
  "name": "unmask",
9
  "version": "0.1.0",
10
  "dependencies": {
11
+ "next": "^15.4.3",
12
  "react": "^19.0.0",
13
  "react-dom": "^19.0.0"
14
  },
 
272
  }
273
  },
274
  "node_modules/@img/sharp-darwin-arm64": {
275
+ "version": "0.34.3",
276
+ "resolved": "https://registry.npmjs.org/@img/sharp-darwin-arm64/-/sharp-darwin-arm64-0.34.3.tgz",
277
+ "integrity": "sha512-ryFMfvxxpQRsgZJqBd4wsttYQbCxsJksrv9Lw/v798JcQ8+w84mBWuXwl+TT0WJ/WrYOLaYpwQXi3sA9nTIaIg==",
278
  "cpu": [
279
  "arm64"
280
  ],
 
290
  "url": "https://opencollective.com/libvips"
291
  },
292
  "optionalDependencies": {
293
+ "@img/sharp-libvips-darwin-arm64": "1.2.0"
294
  }
295
  },
296
  "node_modules/@img/sharp-darwin-x64": {
297
+ "version": "0.34.3",
298
+ "resolved": "https://registry.npmjs.org/@img/sharp-darwin-x64/-/sharp-darwin-x64-0.34.3.tgz",
299
+ "integrity": "sha512-yHpJYynROAj12TA6qil58hmPmAwxKKC7reUqtGLzsOHfP7/rniNGTL8tjWX6L3CTV4+5P4ypcS7Pp+7OB+8ihA==",
300
  "cpu": [
301
  "x64"
302
  ],
 
312
  "url": "https://opencollective.com/libvips"
313
  },
314
  "optionalDependencies": {
315
+ "@img/sharp-libvips-darwin-x64": "1.2.0"
316
  }
317
  },
318
  "node_modules/@img/sharp-libvips-darwin-arm64": {
319
+ "version": "1.2.0",
320
+ "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-arm64/-/sharp-libvips-darwin-arm64-1.2.0.tgz",
321
+ "integrity": "sha512-sBZmpwmxqwlqG9ueWFXtockhsxefaV6O84BMOrhtg/YqbTaRdqDE7hxraVE3y6gVM4eExmfzW4a8el9ArLeEiQ==",
322
  "cpu": [
323
  "arm64"
324
  ],
 
332
  }
333
  },
334
  "node_modules/@img/sharp-libvips-darwin-x64": {
335
+ "version": "1.2.0",
336
+ "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-x64/-/sharp-libvips-darwin-x64-1.2.0.tgz",
337
+ "integrity": "sha512-M64XVuL94OgiNHa5/m2YvEQI5q2cl9d/wk0qFTDVXcYzi43lxuiFTftMR1tOnFQovVXNZJ5TURSDK2pNe9Yzqg==",
338
  "cpu": [
339
  "x64"
340
  ],
 
348
  }
349
  },
350
  "node_modules/@img/sharp-libvips-linux-arm": {
351
+ "version": "1.2.0",
352
+ "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm/-/sharp-libvips-linux-arm-1.2.0.tgz",
353
+ "integrity": "sha512-mWd2uWvDtL/nvIzThLq3fr2nnGfyr/XMXlq8ZJ9WMR6PXijHlC3ksp0IpuhK6bougvQrchUAfzRLnbsen0Cqvw==",
354
  "cpu": [
355
  "arm"
356
  ],
 
364
  }
365
  },
366
  "node_modules/@img/sharp-libvips-linux-arm64": {
367
+ "version": "1.2.0",
368
+ "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm64/-/sharp-libvips-linux-arm64-1.2.0.tgz",
369
+ "integrity": "sha512-RXwd0CgG+uPRX5YYrkzKyalt2OJYRiJQ8ED/fi1tq9WQW2jsQIn0tqrlR5l5dr/rjqq6AHAxURhj2DVjyQWSOA==",
370
  "cpu": [
371
  "arm64"
372
  ],
 
380
  }
381
  },
382
  "node_modules/@img/sharp-libvips-linux-ppc64": {
383
+ "version": "1.2.0",
384
+ "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-ppc64/-/sharp-libvips-linux-ppc64-1.2.0.tgz",
385
+ "integrity": "sha512-Xod/7KaDDHkYu2phxxfeEPXfVXFKx70EAFZ0qyUdOjCcxbjqyJOEUpDe6RIyaunGxT34Anf9ue/wuWOqBW2WcQ==",
386
  "cpu": [
387
  "ppc64"
388
  ],
 
396
  }
397
  },
398
  "node_modules/@img/sharp-libvips-linux-s390x": {
399
+ "version": "1.2.0",
400
+ "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-s390x/-/sharp-libvips-linux-s390x-1.2.0.tgz",
401
+ "integrity": "sha512-eMKfzDxLGT8mnmPJTNMcjfO33fLiTDsrMlUVcp6b96ETbnJmd4uvZxVJSKPQfS+odwfVaGifhsB07J1LynFehw==",
402
  "cpu": [
403
  "s390x"
404
  ],
 
412
  }
413
  },
414
  "node_modules/@img/sharp-libvips-linux-x64": {
415
+ "version": "1.2.0",
416
+ "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-x64/-/sharp-libvips-linux-x64-1.2.0.tgz",
417
+ "integrity": "sha512-ZW3FPWIc7K1sH9E3nxIGB3y3dZkpJlMnkk7z5tu1nSkBoCgw2nSRTFHI5pB/3CQaJM0pdzMF3paf9ckKMSE9Tg==",
418
  "cpu": [
419
  "x64"
420
  ],
 
428
  }
429
  },
430
  "node_modules/@img/sharp-libvips-linuxmusl-arm64": {
431
+ "version": "1.2.0",
432
+ "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-arm64/-/sharp-libvips-linuxmusl-arm64-1.2.0.tgz",
433
+ "integrity": "sha512-UG+LqQJbf5VJ8NWJ5Z3tdIe/HXjuIdo4JeVNADXBFuG7z9zjoegpzzGIyV5zQKi4zaJjnAd2+g2nna8TZvuW9Q==",
434
  "cpu": [
435
  "arm64"
436
  ],
 
444
  }
445
  },
446
  "node_modules/@img/sharp-libvips-linuxmusl-x64": {
447
+ "version": "1.2.0",
448
+ "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-x64/-/sharp-libvips-linuxmusl-x64-1.2.0.tgz",
449
+ "integrity": "sha512-SRYOLR7CXPgNze8akZwjoGBoN1ThNZoqpOgfnOxmWsklTGVfJiGJoC/Lod7aNMGA1jSsKWM1+HRX43OP6p9+6Q==",
450
  "cpu": [
451
  "x64"
452
  ],
 
460
  }
461
  },
462
  "node_modules/@img/sharp-linux-arm": {
463
+ "version": "0.34.3",
464
+ "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm/-/sharp-linux-arm-0.34.3.tgz",
465
+ "integrity": "sha512-oBK9l+h6KBN0i3dC8rYntLiVfW8D8wH+NPNT3O/WBHeW0OQWCjfWksLUaPidsrDKpJgXp3G3/hkmhptAW0I3+A==",
466
  "cpu": [
467
  "arm"
468
  ],
 
478
  "url": "https://opencollective.com/libvips"
479
  },
480
  "optionalDependencies": {
481
+ "@img/sharp-libvips-linux-arm": "1.2.0"
482
  }
483
  },
484
  "node_modules/@img/sharp-linux-arm64": {
485
+ "version": "0.34.3",
486
+ "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm64/-/sharp-linux-arm64-0.34.3.tgz",
487
+ "integrity": "sha512-QdrKe3EvQrqwkDrtuTIjI0bu6YEJHTgEeqdzI3uWJOH6G1O8Nl1iEeVYRGdj1h5I21CqxSvQp1Yv7xeU3ZewbA==",
488
  "cpu": [
489
  "arm64"
490
  ],
 
500
  "url": "https://opencollective.com/libvips"
501
  },
502
  "optionalDependencies": {
503
+ "@img/sharp-libvips-linux-arm64": "1.2.0"
504
+ }
505
+ },
506
+ "node_modules/@img/sharp-linux-ppc64": {
507
+ "version": "0.34.3",
508
+ "resolved": "https://registry.npmjs.org/@img/sharp-linux-ppc64/-/sharp-linux-ppc64-0.34.3.tgz",
509
+ "integrity": "sha512-GLtbLQMCNC5nxuImPR2+RgrviwKwVql28FWZIW1zWruy6zLgA5/x2ZXk3mxj58X/tszVF69KK0Is83V8YgWhLA==",
510
+ "cpu": [
511
+ "ppc64"
512
+ ],
513
+ "license": "Apache-2.0",
514
+ "optional": true,
515
+ "os": [
516
+ "linux"
517
+ ],
518
+ "engines": {
519
+ "node": "^18.17.0 || ^20.3.0 || >=21.0.0"
520
+ },
521
+ "funding": {
522
+ "url": "https://opencollective.com/libvips"
523
+ },
524
+ "optionalDependencies": {
525
+ "@img/sharp-libvips-linux-ppc64": "1.2.0"
526
  }
527
  },
528
  "node_modules/@img/sharp-linux-s390x": {
529
+ "version": "0.34.3",
530
+ "resolved": "https://registry.npmjs.org/@img/sharp-linux-s390x/-/sharp-linux-s390x-0.34.3.tgz",
531
+ "integrity": "sha512-3gahT+A6c4cdc2edhsLHmIOXMb17ltffJlxR0aC2VPZfwKoTGZec6u5GrFgdR7ciJSsHT27BD3TIuGcuRT0KmQ==",
532
  "cpu": [
533
  "s390x"
534
  ],
 
544
  "url": "https://opencollective.com/libvips"
545
  },
546
  "optionalDependencies": {
547
+ "@img/sharp-libvips-linux-s390x": "1.2.0"
548
  }
549
  },
550
  "node_modules/@img/sharp-linux-x64": {
551
+ "version": "0.34.3",
552
+ "resolved": "https://registry.npmjs.org/@img/sharp-linux-x64/-/sharp-linux-x64-0.34.3.tgz",
553
+ "integrity": "sha512-8kYso8d806ypnSq3/Ly0QEw90V5ZoHh10yH0HnrzOCr6DKAPI6QVHvwleqMkVQ0m+fc7EH8ah0BB0QPuWY6zJQ==",
554
  "cpu": [
555
  "x64"
556
  ],
 
566
  "url": "https://opencollective.com/libvips"
567
  },
568
  "optionalDependencies": {
569
+ "@img/sharp-libvips-linux-x64": "1.2.0"
570
  }
571
  },
572
  "node_modules/@img/sharp-linuxmusl-arm64": {
573
+ "version": "0.34.3",
574
+ "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-arm64/-/sharp-linuxmusl-arm64-0.34.3.tgz",
575
+ "integrity": "sha512-vAjbHDlr4izEiXM1OTggpCcPg9tn4YriK5vAjowJsHwdBIdx0fYRsURkxLG2RLm9gyBq66gwtWI8Gx0/ov+JKQ==",
576
  "cpu": [
577
  "arm64"
578
  ],
 
588
  "url": "https://opencollective.com/libvips"
589
  },
590
  "optionalDependencies": {
591
+ "@img/sharp-libvips-linuxmusl-arm64": "1.2.0"
592
  }
593
  },
594
  "node_modules/@img/sharp-linuxmusl-x64": {
595
+ "version": "0.34.3",
596
+ "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-x64/-/sharp-linuxmusl-x64-0.34.3.tgz",
597
+ "integrity": "sha512-gCWUn9547K5bwvOn9l5XGAEjVTTRji4aPTqLzGXHvIr6bIDZKNTA34seMPgM0WmSf+RYBH411VavCejp3PkOeQ==",
598
  "cpu": [
599
  "x64"
600
  ],
 
610
  "url": "https://opencollective.com/libvips"
611
  },
612
  "optionalDependencies": {
613
+ "@img/sharp-libvips-linuxmusl-x64": "1.2.0"
614
  }
615
  },
616
  "node_modules/@img/sharp-wasm32": {
617
+ "version": "0.34.3",
618
+ "resolved": "https://registry.npmjs.org/@img/sharp-wasm32/-/sharp-wasm32-0.34.3.tgz",
619
+ "integrity": "sha512-+CyRcpagHMGteySaWos8IbnXcHgfDn7pO2fiC2slJxvNq9gDipYBN42/RagzctVRKgxATmfqOSulgZv5e1RdMg==",
620
  "cpu": [
621
  "wasm32"
622
  ],
623
  "license": "Apache-2.0 AND LGPL-3.0-or-later AND MIT",
624
  "optional": true,
625
  "dependencies": {
626
+ "@emnapi/runtime": "^1.4.4"
627
  },
628
  "engines": {
629
  "node": "^18.17.0 || ^20.3.0 || >=21.0.0"
 
633
  }
634
  },
635
  "node_modules/@img/sharp-win32-arm64": {
636
+ "version": "0.34.3",
637
+ "resolved": "https://registry.npmjs.org/@img/sharp-win32-arm64/-/sharp-win32-arm64-0.34.3.tgz",
638
+ "integrity": "sha512-MjnHPnbqMXNC2UgeLJtX4XqoVHHlZNd+nPt1kRPmj63wURegwBhZlApELdtxM2OIZDRv/DFtLcNhVbd1z8GYXQ==",
639
  "cpu": [
640
  "arm64"
641
  ],
 
652
  }
653
  },
654
  "node_modules/@img/sharp-win32-ia32": {
655
+ "version": "0.34.3",
656
+ "resolved": "https://registry.npmjs.org/@img/sharp-win32-ia32/-/sharp-win32-ia32-0.34.3.tgz",
657
+ "integrity": "sha512-xuCdhH44WxuXgOM714hn4amodJMZl3OEvf0GVTm0BEyMeA2to+8HEdRPShH0SLYptJY1uBw+SCFP9WVQi1Q/cw==",
658
  "cpu": [
659
  "ia32"
660
  ],
 
671
  }
672
  },
673
  "node_modules/@img/sharp-win32-x64": {
674
+ "version": "0.34.3",
675
+ "resolved": "https://registry.npmjs.org/@img/sharp-win32-x64/-/sharp-win32-x64-0.34.3.tgz",
676
+ "integrity": "sha512-OWwz05d++TxzLEv4VnsTz5CmZ6mI6S05sfQGEMrNrQcOEERbX46332IvE7pO/EUiw7jUrrS40z/M7kPyjfl04g==",
677
  "cpu": [
678
  "x64"
679
  ],
 
703
  }
704
  },
705
  "node_modules/@next/env": {
706
+ "version": "15.4.3",
707
+ "resolved": "https://registry.npmjs.org/@next/env/-/env-15.4.3.tgz",
708
+ "integrity": "sha512-lKJ9KJAvaWzqurIsz6NWdQOLj96mdhuDMusLSYHw9HBe2On7BjUwU1WeRvq19x7NrEK3iOgMeSBV5qEhVH1cMw==",
709
  "license": "MIT"
710
  },
711
  "node_modules/@next/eslint-plugin-next": {
 
719
  }
720
  },
721
  "node_modules/@next/swc-darwin-arm64": {
722
+ "version": "15.4.3",
723
+ "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-15.4.3.tgz",
724
+ "integrity": "sha512-YAhZWKeEYY7LHQJiQ8fe3Y6ymfcDcTn7rDC8PDu/pdeIl1Z2LHD4uyPNuQUGCEQT//MSNv6oZCeQzZfTCKZv+A==",
725
  "cpu": [
726
  "arm64"
727
  ],
 
735
  }
736
  },
737
  "node_modules/@next/swc-darwin-x64": {
738
+ "version": "15.4.3",
739
+ "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-15.4.3.tgz",
740
+ "integrity": "sha512-ZPHRdd51xaxCMpT4viQ6h8TgYM1zPW1JIeksPY9wKlyvBVUQqrWqw8kEh1sa7/x0Ied+U7pYHkAkutrUwxbMcg==",
741
  "cpu": [
742
  "x64"
743
  ],
 
751
  }
752
  },
753
  "node_modules/@next/swc-linux-arm64-gnu": {
754
+ "version": "15.4.3",
755
+ "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-15.4.3.tgz",
756
+ "integrity": "sha512-QUdqftCXC5vw5cowucqi9FeOPQ0vdMxoOHLY0J5jPdercwSJFjdi9CkEO4Xkq1eG4t1TB/BG81n6rmTsWoILnw==",
757
  "cpu": [
758
  "arm64"
759
  ],
 
767
  }
768
  },
769
  "node_modules/@next/swc-linux-arm64-musl": {
770
+ "version": "15.4.3",
771
+ "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-15.4.3.tgz",
772
+ "integrity": "sha512-HTL31NsmoafX+r5g91Yj3+q34nrn1xKmCWVuNA+fUWO4X0pr+n83uGzLyEOn0kUqbMZ40KmWx+4wsbMoUChkiQ==",
773
  "cpu": [
774
  "arm64"
775
  ],
 
783
  }
784
  },
785
  "node_modules/@next/swc-linux-x64-gnu": {
786
+ "version": "15.4.3",
787
+ "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-15.4.3.tgz",
788
+ "integrity": "sha512-HRQLWoeFkKXd2YCEEy9GhfwOijRm37x4w5r0MMVHxBKSA6ms3JoPUXvGhfHT6srnGRcEUWNrQ2vzkHir5ZWTSw==",
789
  "cpu": [
790
  "x64"
791
  ],
 
799
  }
800
  },
801
  "node_modules/@next/swc-linux-x64-musl": {
802
+ "version": "15.4.3",
803
+ "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-15.4.3.tgz",
804
+ "integrity": "sha512-NyXUx6G7AayaRGUsVPenuwhyAoyxjQuQPaK50AXoaAHPwRuif4WmSrXUs8/Y0HJIZh8E/YXRm9H7uuGfiacpuQ==",
805
  "cpu": [
806
  "x64"
807
  ],
 
815
  }
816
  },
817
  "node_modules/@next/swc-win32-arm64-msvc": {
818
+ "version": "15.4.3",
819
+ "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-15.4.3.tgz",
820
+ "integrity": "sha512-2CUTmpzN/7cL1a7GjdLkDFlfH3nwMwW8a6JiaAUsL9MtKmNNO3fnXqnY0Zk30fii3hVEl4dr7ztrpYt0t2CcGQ==",
821
  "cpu": [
822
  "arm64"
823
  ],
 
831
  }
832
  },
833
  "node_modules/@next/swc-win32-x64-msvc": {
834
+ "version": "15.4.3",
835
+ "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-15.4.3.tgz",
836
+ "integrity": "sha512-i54YgUhvrUQxQD84SjAbkfWhYkOdm/DNRAVekCHLWxVg3aUbyC6NFQn9TwgCkX5QAS2pXCJo3kFboSFvrsd7dA==",
837
  "cpu": [
838
  "x64"
839
  ],
 
908
  "dev": true,
909
  "license": "MIT"
910
  },
 
 
 
 
 
 
911
  "node_modules/@swc/helpers": {
912
  "version": "0.5.15",
913
  "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.15.tgz",
 
1822
  "node": ">=8"
1823
  }
1824
  },
 
 
 
 
 
 
 
 
 
 
 
1825
  "node_modules/call-bind": {
1826
  "version": "1.0.8",
1827
  "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.8.tgz",
 
3932
  "license": "MIT"
3933
  },
3934
  "node_modules/next": {
3935
+ "version": "15.4.3",
3936
+ "resolved": "https://registry.npmjs.org/next/-/next-15.4.3.tgz",
3937
+ "integrity": "sha512-uW7Qe6poVasNIE1X382nI29oxSdFJzjQzTgJFLD43MxyPfGKKxCMySllhBpvqr48f58Om+tLMivzRwBpXEytvA==",
3938
  "license": "MIT",
3939
  "dependencies": {
3940
+ "@next/env": "15.4.3",
 
3941
  "@swc/helpers": "0.5.15",
 
3942
  "caniuse-lite": "^1.0.30001579",
3943
  "postcss": "8.4.31",
3944
  "styled-jsx": "5.1.6"
 
3950
  "node": "^18.18.0 || ^19.8.0 || >= 20.0.0"
3951
  },
3952
  "optionalDependencies": {
3953
+ "@next/swc-darwin-arm64": "15.4.3",
3954
+ "@next/swc-darwin-x64": "15.4.3",
3955
+ "@next/swc-linux-arm64-gnu": "15.4.3",
3956
+ "@next/swc-linux-arm64-musl": "15.4.3",
3957
+ "@next/swc-linux-x64-gnu": "15.4.3",
3958
+ "@next/swc-linux-x64-musl": "15.4.3",
3959
+ "@next/swc-win32-arm64-msvc": "15.4.3",
3960
+ "@next/swc-win32-x64-msvc": "15.4.3",
3961
+ "sharp": "^0.34.3"
3962
  },
3963
  "peerDependencies": {
3964
  "@opentelemetry/api": "^1.1.0",
3965
+ "@playwright/test": "^1.51.1",
3966
  "babel-plugin-react-compiler": "*",
3967
  "react": "^18.2.0 || 19.0.0-rc-de68d2f4-20241204 || ^19.0.0",
3968
  "react-dom": "^18.2.0 || 19.0.0-rc-de68d2f4-20241204 || ^19.0.0",
 
4596
  }
4597
  },
4598
  "node_modules/sharp": {
4599
+ "version": "0.34.3",
4600
+ "resolved": "https://registry.npmjs.org/sharp/-/sharp-0.34.3.tgz",
4601
+ "integrity": "sha512-eX2IQ6nFohW4DbvHIOLRB3MHFpYqaqvXd3Tp5e/T/dSH83fxaNJQRvDMhASmkNTsNTVF2/OOopzRCt7xokgPfg==",
4602
  "hasInstallScript": true,
4603
  "license": "Apache-2.0",
4604
  "optional": true,
 
4614
  "url": "https://opencollective.com/libvips"
4615
  },
4616
  "optionalDependencies": {
4617
+ "@img/sharp-darwin-arm64": "0.34.3",
4618
+ "@img/sharp-darwin-x64": "0.34.3",
4619
+ "@img/sharp-libvips-darwin-arm64": "1.2.0",
4620
+ "@img/sharp-libvips-darwin-x64": "1.2.0",
4621
+ "@img/sharp-libvips-linux-arm": "1.2.0",
4622
+ "@img/sharp-libvips-linux-arm64": "1.2.0",
4623
+ "@img/sharp-libvips-linux-ppc64": "1.2.0",
4624
+ "@img/sharp-libvips-linux-s390x": "1.2.0",
4625
+ "@img/sharp-libvips-linux-x64": "1.2.0",
4626
+ "@img/sharp-libvips-linuxmusl-arm64": "1.2.0",
4627
+ "@img/sharp-libvips-linuxmusl-x64": "1.2.0",
4628
+ "@img/sharp-linux-arm": "0.34.3",
4629
+ "@img/sharp-linux-arm64": "0.34.3",
4630
+ "@img/sharp-linux-ppc64": "0.34.3",
4631
+ "@img/sharp-linux-s390x": "0.34.3",
4632
+ "@img/sharp-linux-x64": "0.34.3",
4633
+ "@img/sharp-linuxmusl-arm64": "0.34.3",
4634
+ "@img/sharp-linuxmusl-x64": "0.34.3",
4635
+ "@img/sharp-wasm32": "0.34.3",
4636
+ "@img/sharp-win32-arm64": "0.34.3",
4637
+ "@img/sharp-win32-ia32": "0.34.3",
4638
+ "@img/sharp-win32-x64": "0.34.3"
4639
  }
4640
  },
4641
  "node_modules/shebang-command": {
 
4777
  "node": ">= 0.4"
4778
  }
4779
  },
 
 
 
 
 
 
 
 
4780
  "node_modules/string.prototype.includes": {
4781
  "version": "2.0.1",
4782
  "resolved": "https://registry.npmjs.org/string.prototype.includes/-/string.prototype.includes-2.0.1.tgz",
frontend/package.json CHANGED
@@ -9,13 +9,13 @@
9
  "lint": "next lint"
10
  },
11
  "dependencies": {
 
12
  "react": "^19.0.0",
13
- "react-dom": "^19.0.0",
14
- "next": "15.3.5"
15
  },
16
  "devDependencies": {
 
17
  "eslint": "^9",
18
- "eslint-config-next": "15.3.5",
19
- "@eslint/eslintrc": "^3"
20
  }
21
  }
 
9
  "lint": "next lint"
10
  },
11
  "dependencies": {
12
+ "next": "^15.4.3",
13
  "react": "^19.0.0",
14
+ "react-dom": "^19.0.0"
 
15
  },
16
  "devDependencies": {
17
+ "@eslint/eslintrc": "^3",
18
  "eslint": "^9",
19
+ "eslint-config-next": "15.3.5"
 
20
  }
21
  }
frontend/src/Components/UploadBox.js ADDED
@@ -0,0 +1,57 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ "use client";
2
+ import styles from "./UploadBox.module.css";
3
+ import React, { useRef, useState } from "react";
4
+
5
+ export default function UploadBox() {
6
+ const [dragActive, setDragActive] = useState(false);
7
+ const fileInputRef = useRef(null);
8
+
9
+ const handleDragOver = e => {
10
+ e.preventDefault();
11
+ setDragActive(true);
12
+ };
13
+ const handleDragLeave = e => {
14
+ setDragActive(false);
15
+ };
16
+ const handleDrop = e => {
17
+ e.preventDefault();
18
+ setDragActive(false);
19
+ const files = e.dataTransfer.files;
20
+ if (files[0]) alert(`Dropped file: ${files[0].name}`);
21
+ };
22
+ const handleClick = () => {
23
+ fileInputRef.current.click();
24
+ };
25
+ const handleChange = e => {
26
+ const file = e.target.files[0];
27
+ if (file) alert(`Selected file: ${file.name}`);
28
+ };
29
+
30
+ return (
31
+ <div
32
+ className={dragActive ? `${styles["upload-box"]} ${styles["dragover"]}` : styles["upload-box"]}
33
+ onDragOver={handleDragOver}
34
+ onDragLeave={handleDragLeave}
35
+ onDrop={handleDrop}
36
+ onClick={handleClick}
37
+ >
38
+ <input
39
+ ref={fileInputRef}
40
+ id="fileInput"
41
+ type="file"
42
+ style={{ display: "none" }}
43
+ onChange={handleChange}
44
+ />
45
+ <div className={styles["upload-box-content"]}>
46
+ <svg width="48" height="48" fill="none" viewBox="0 0 48 48" className={styles["upload-box-icon"]}>
47
+ <rect width="48" height="48" rx="12" fill="#e3eefd" />
48
+ <path d="M24 14v20M24 14l-6 6M24 14l6 6" stroke="#0070f3" strokeWidth="2" strokeLinecap="round" strokeLinejoin="round"/>
49
+ </svg>
50
+ <p className={styles["upload-box-title"]}>Drag & drop a file here</p>
51
+ <p className={styles["upload-box-desc"]}>
52
+ or <span className={styles["upload-box-browse"]}>click to browse</span>
53
+ </p>
54
+ </div>
55
+ </div>
56
+ );
57
+ }
frontend/src/Components/UploadBox.module.css ADDED
@@ -0,0 +1,41 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .upload-box {
2
+ border: 2.5px dashed #0070f3;
3
+ border-radius: 16px;
4
+ padding: 48px 24px;
5
+ text-align: center;
6
+ cursor: pointer;
7
+ background: linear-gradient(135deg, #f0f4ff 0%, #fafafa 100%);
8
+ box-shadow: 0 4px 24px rgba(0,112,243,0.08);
9
+ transition: border-color 0.2s, box-shadow 0.2s;
10
+ color: #222;
11
+ font-family: Inter, Arial, sans-serif;
12
+ font-size: 1.1rem;
13
+ position: relative;
14
+ margin-top: 32px;
15
+ margin-bottom: 32px;
16
+ }
17
+ .upload-box.dragover {
18
+ border-color: #0051a8;
19
+ box-shadow: 0 4px 32px rgba(0,81,168,0.12);
20
+ }
21
+ .upload-box-content {
22
+ margin-bottom: 18px;
23
+ }
24
+ .upload-box-icon {
25
+ margin-bottom: 8px;
26
+ }
27
+ .upload-box-title {
28
+ font-weight: 500;
29
+ font-size: 1.15rem;
30
+ margin: 0;
31
+ }
32
+ .upload-box-desc {
33
+ color: #666;
34
+ font-size: 0.95rem;
35
+ margin: 8px 0 0 0;
36
+ }
37
+ .upload-box-browse {
38
+ color: #0070f3;
39
+ text-decoration: underline;
40
+ cursor: pointer;
41
+ }
frontend/src/app/page.js CHANGED
@@ -1,4 +1,7 @@
 
 
1
  import styles from "./page.module.css";
 
2
 
3
  export default function Home() {
4
  return (
@@ -6,9 +9,7 @@ export default function Home() {
6
  <div className="Header">
7
  <h1>UnMask</h1>
8
  </div>
9
- <div className="Search-Box">
10
- <input type="text" placeholder="Paste the link to check for authenticity" />
11
- </div>
12
  </div>
13
  );
14
  }
 
1
+
2
+
3
  import styles from "./page.module.css";
4
+ import UploadBox from "../Components/UploadBox";
5
 
6
  export default function Home() {
7
  return (
 
9
  <div className="Header">
10
  <h1>UnMask</h1>
11
  </div>
12
+ <UploadBox />
 
 
13
  </div>
14
  );
15
  }