nsarrazin HF staff commited on
Commit
07eb9f0
1 Parent(s): 5acc9fa

i cant believe its just this lmao (#734)

Browse files
package-lock.json CHANGED
@@ -32,6 +32,7 @@
32
  "satori": "^0.10.11",
33
  "satori-html": "^0.3.2",
34
  "serpapi": "^1.1.1",
 
35
  "tailwind-scrollbar": "^3.0.0",
36
  "tailwindcss": "^3.4.0",
37
  "zod": "^3.22.3"
@@ -136,6 +137,15 @@
136
  "@jridgewell/sourcemap-codec": "^1.4.10"
137
  }
138
  },
 
 
 
 
 
 
 
 
 
139
  "node_modules/@esbuild/android-arm": {
140
  "version": "0.18.20",
141
  "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.18.20.tgz",
@@ -649,6 +659,437 @@
649
  "local-pkg": "^0.4.3"
650
  }
651
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
652
  "node_modules/@jridgewell/gen-mapping": {
653
  "version": "0.3.3",
654
  "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz",
@@ -1717,6 +2158,28 @@
1717
  "onnxruntime-node": "1.14.0"
1718
  }
1719
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1720
  "node_modules/abab": {
1721
  "version": "2.0.6",
1722
  "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz",
@@ -4392,9 +4855,9 @@
4392
  "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw=="
4393
  },
4394
  "node_modules/node-abi": {
4395
- "version": "3.47.0",
4396
- "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-3.47.0.tgz",
4397
- "integrity": "sha512-2s6B2CWZM//kPgwnuI0KrYwNjfdByE25zvAaEpq9IH4zcNsarH8Ihu/UuX6XMPEogDAxkuUFeZn60pXNHAqn3A==",
4398
  "dependencies": {
4399
  "semver": "^7.3.5"
4400
  },
@@ -5671,25 +6134,42 @@
5671
  "dev": true
5672
  },
5673
  "node_modules/sharp": {
5674
- "version": "0.32.6",
5675
- "resolved": "https://registry.npmjs.org/sharp/-/sharp-0.32.6.tgz",
5676
- "integrity": "sha512-KyLTWwgcR9Oe4d9HwCwNM2l7+J0dUQwn/yf7S0EnTtb0eVS4RxO0eUSvxPtzT4F3SY+C4K6fqdv/DO27sJ/v/w==",
5677
  "hasInstallScript": true,
5678
  "dependencies": {
5679
  "color": "^4.2.3",
5680
  "detect-libc": "^2.0.2",
5681
- "node-addon-api": "^6.1.0",
5682
- "prebuild-install": "^7.1.1",
5683
- "semver": "^7.5.4",
5684
- "simple-get": "^4.0.1",
5685
- "tar-fs": "^3.0.4",
5686
- "tunnel-agent": "^0.6.0"
5687
  },
5688
  "engines": {
5689
- "node": ">=14.15.0"
 
5690
  },
5691
  "funding": {
5692
  "url": "https://opencollective.com/libvips"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5693
  }
5694
  },
5695
  "node_modules/shebang-command": {
@@ -5878,9 +6358,9 @@
5878
  "dev": true
5879
  },
5880
  "node_modules/streamx": {
5881
- "version": "2.15.1",
5882
- "resolved": "https://registry.npmjs.org/streamx/-/streamx-2.15.1.tgz",
5883
- "integrity": "sha512-fQMzy2O/Q47rgwErk/eGeLu/roaFWV0jVsogDmrszM9uIw8L5OA+t+V93MgYlufNptfjmYR1tOMWhei/Eh7TQA==",
5884
  "dependencies": {
5885
  "fast-fifo": "^1.1.0",
5886
  "queue-tick": "^1.0.1"
@@ -6334,9 +6814,9 @@
6334
  }
6335
  },
6336
  "node_modules/tar-stream": {
6337
- "version": "3.1.6",
6338
- "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-3.1.6.tgz",
6339
- "integrity": "sha512-B/UyjYwPpMBv+PaFSWAmtYjwdrlEaZQEhMIBFNC5oEG8lpiW8XjcSdmEaClj28ArfKScKHs2nshz3k2le6crsg==",
6340
  "dependencies": {
6341
  "b4a": "^1.6.4",
6342
  "fast-fifo": "^1.2.0",
@@ -6544,7 +7024,7 @@
6544
  "version": "2.5.0",
6545
  "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz",
6546
  "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==",
6547
- "dev": true
6548
  },
6549
  "node_modules/tunnel-agent": {
6550
  "version": "0.6.0",
 
32
  "satori": "^0.10.11",
33
  "satori-html": "^0.3.2",
34
  "serpapi": "^1.1.1",
35
+ "sharp": "^0.33.2",
36
  "tailwind-scrollbar": "^3.0.0",
37
  "tailwindcss": "^3.4.0",
38
  "zod": "^3.22.3"
 
137
  "@jridgewell/sourcemap-codec": "^1.4.10"
138
  }
139
  },
140
+ "node_modules/@emnapi/runtime": {
141
+ "version": "0.45.0",
142
+ "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-0.45.0.tgz",
143
+ "integrity": "sha512-Txumi3td7J4A/xTTwlssKieHKTGl3j4A1tglBx72auZ49YK7ePY6XZricgIg9mnZT4xPfA+UPCUdnhRuEFDL+w==",
144
+ "optional": true,
145
+ "dependencies": {
146
+ "tslib": "^2.4.0"
147
+ }
148
+ },
149
  "node_modules/@esbuild/android-arm": {
150
  "version": "0.18.20",
151
  "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.18.20.tgz",
 
659
  "local-pkg": "^0.4.3"
660
  }
661
  },
662
+ "node_modules/@img/sharp-darwin-arm64": {
663
+ "version": "0.33.2",
664
+ "resolved": "https://registry.npmjs.org/@img/sharp-darwin-arm64/-/sharp-darwin-arm64-0.33.2.tgz",
665
+ "integrity": "sha512-itHBs1rPmsmGF9p4qRe++CzCgd+kFYktnsoR1sbIAfsRMrJZau0Tt1AH9KVnufc2/tU02Gf6Ibujx+15qRE03w==",
666
+ "cpu": [
667
+ "arm64"
668
+ ],
669
+ "optional": true,
670
+ "os": [
671
+ "darwin"
672
+ ],
673
+ "engines": {
674
+ "glibc": ">=2.26",
675
+ "node": "^18.17.0 || ^20.3.0 || >=21.0.0",
676
+ "npm": ">=9.6.5",
677
+ "pnpm": ">=7.1.0",
678
+ "yarn": ">=3.2.0"
679
+ },
680
+ "funding": {
681
+ "url": "https://opencollective.com/libvips"
682
+ },
683
+ "optionalDependencies": {
684
+ "@img/sharp-libvips-darwin-arm64": "1.0.1"
685
+ }
686
+ },
687
+ "node_modules/@img/sharp-darwin-x64": {
688
+ "version": "0.33.2",
689
+ "resolved": "https://registry.npmjs.org/@img/sharp-darwin-x64/-/sharp-darwin-x64-0.33.2.tgz",
690
+ "integrity": "sha512-/rK/69Rrp9x5kaWBjVN07KixZanRr+W1OiyKdXcbjQD6KbW+obaTeBBtLUAtbBsnlTTmWthw99xqoOS7SsySDg==",
691
+ "cpu": [
692
+ "x64"
693
+ ],
694
+ "optional": true,
695
+ "os": [
696
+ "darwin"
697
+ ],
698
+ "engines": {
699
+ "glibc": ">=2.26",
700
+ "node": "^18.17.0 || ^20.3.0 || >=21.0.0",
701
+ "npm": ">=9.6.5",
702
+ "pnpm": ">=7.1.0",
703
+ "yarn": ">=3.2.0"
704
+ },
705
+ "funding": {
706
+ "url": "https://opencollective.com/libvips"
707
+ },
708
+ "optionalDependencies": {
709
+ "@img/sharp-libvips-darwin-x64": "1.0.1"
710
+ }
711
+ },
712
+ "node_modules/@img/sharp-libvips-darwin-arm64": {
713
+ "version": "1.0.1",
714
+ "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-arm64/-/sharp-libvips-darwin-arm64-1.0.1.tgz",
715
+ "integrity": "sha512-kQyrSNd6lmBV7O0BUiyu/OEw9yeNGFbQhbxswS1i6rMDwBBSX+e+rPzu3S+MwAiGU3HdLze3PanQ4Xkfemgzcw==",
716
+ "cpu": [
717
+ "arm64"
718
+ ],
719
+ "optional": true,
720
+ "os": [
721
+ "darwin"
722
+ ],
723
+ "engines": {
724
+ "macos": ">=11",
725
+ "npm": ">=9.6.5",
726
+ "pnpm": ">=7.1.0",
727
+ "yarn": ">=3.2.0"
728
+ },
729
+ "funding": {
730
+ "url": "https://opencollective.com/libvips"
731
+ }
732
+ },
733
+ "node_modules/@img/sharp-libvips-darwin-x64": {
734
+ "version": "1.0.1",
735
+ "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-x64/-/sharp-libvips-darwin-x64-1.0.1.tgz",
736
+ "integrity": "sha512-eVU/JYLPVjhhrd8Tk6gosl5pVlvsqiFlt50wotCvdkFGf+mDNBJxMh+bvav+Wt3EBnNZWq8Sp2I7XfSjm8siog==",
737
+ "cpu": [
738
+ "x64"
739
+ ],
740
+ "optional": true,
741
+ "os": [
742
+ "darwin"
743
+ ],
744
+ "engines": {
745
+ "macos": ">=10.13",
746
+ "npm": ">=9.6.5",
747
+ "pnpm": ">=7.1.0",
748
+ "yarn": ">=3.2.0"
749
+ },
750
+ "funding": {
751
+ "url": "https://opencollective.com/libvips"
752
+ }
753
+ },
754
+ "node_modules/@img/sharp-libvips-linux-arm": {
755
+ "version": "1.0.1",
756
+ "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm/-/sharp-libvips-linux-arm-1.0.1.tgz",
757
+ "integrity": "sha512-FtdMvR4R99FTsD53IA3LxYGghQ82t3yt0ZQ93WMZ2xV3dqrb0E8zq4VHaTOuLEAuA83oDawHV3fd+BsAPadHIQ==",
758
+ "cpu": [
759
+ "arm"
760
+ ],
761
+ "optional": true,
762
+ "os": [
763
+ "linux"
764
+ ],
765
+ "engines": {
766
+ "glibc": ">=2.28",
767
+ "npm": ">=9.6.5",
768
+ "pnpm": ">=7.1.0",
769
+ "yarn": ">=3.2.0"
770
+ },
771
+ "funding": {
772
+ "url": "https://opencollective.com/libvips"
773
+ }
774
+ },
775
+ "node_modules/@img/sharp-libvips-linux-arm64": {
776
+ "version": "1.0.1",
777
+ "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm64/-/sharp-libvips-linux-arm64-1.0.1.tgz",
778
+ "integrity": "sha512-bnGG+MJjdX70mAQcSLxgeJco11G+MxTz+ebxlz8Y3dxyeb3Nkl7LgLI0mXupoO+u1wRNx/iRj5yHtzA4sde1yA==",
779
+ "cpu": [
780
+ "arm64"
781
+ ],
782
+ "optional": true,
783
+ "os": [
784
+ "linux"
785
+ ],
786
+ "engines": {
787
+ "glibc": ">=2.26",
788
+ "npm": ">=9.6.5",
789
+ "pnpm": ">=7.1.0",
790
+ "yarn": ">=3.2.0"
791
+ },
792
+ "funding": {
793
+ "url": "https://opencollective.com/libvips"
794
+ }
795
+ },
796
+ "node_modules/@img/sharp-libvips-linux-s390x": {
797
+ "version": "1.0.1",
798
+ "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-s390x/-/sharp-libvips-linux-s390x-1.0.1.tgz",
799
+ "integrity": "sha512-3+rzfAR1YpMOeA2zZNp+aYEzGNWK4zF3+sdMxuCS3ey9HhDbJ66w6hDSHDMoap32DueFwhhs3vwooAB2MaK4XQ==",
800
+ "cpu": [
801
+ "s390x"
802
+ ],
803
+ "optional": true,
804
+ "os": [
805
+ "linux"
806
+ ],
807
+ "engines": {
808
+ "glibc": ">=2.28",
809
+ "npm": ">=9.6.5",
810
+ "pnpm": ">=7.1.0",
811
+ "yarn": ">=3.2.0"
812
+ },
813
+ "funding": {
814
+ "url": "https://opencollective.com/libvips"
815
+ }
816
+ },
817
+ "node_modules/@img/sharp-libvips-linux-x64": {
818
+ "version": "1.0.1",
819
+ "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-x64/-/sharp-libvips-linux-x64-1.0.1.tgz",
820
+ "integrity": "sha512-3NR1mxFsaSgMMzz1bAnnKbSAI+lHXVTqAHgc1bgzjHuXjo4hlscpUxc0vFSAPKI3yuzdzcZOkq7nDPrP2F8Jgw==",
821
+ "cpu": [
822
+ "x64"
823
+ ],
824
+ "optional": true,
825
+ "os": [
826
+ "linux"
827
+ ],
828
+ "engines": {
829
+ "glibc": ">=2.26",
830
+ "npm": ">=9.6.5",
831
+ "pnpm": ">=7.1.0",
832
+ "yarn": ">=3.2.0"
833
+ },
834
+ "funding": {
835
+ "url": "https://opencollective.com/libvips"
836
+ }
837
+ },
838
+ "node_modules/@img/sharp-libvips-linuxmusl-arm64": {
839
+ "version": "1.0.1",
840
+ "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-arm64/-/sharp-libvips-linuxmusl-arm64-1.0.1.tgz",
841
+ "integrity": "sha512-5aBRcjHDG/T6jwC3Edl3lP8nl9U2Yo8+oTl5drd1dh9Z1EBfzUKAJFUDTDisDjUwc7N4AjnPGfCA3jl3hY8uDg==",
842
+ "cpu": [
843
+ "arm64"
844
+ ],
845
+ "optional": true,
846
+ "os": [
847
+ "linux"
848
+ ],
849
+ "engines": {
850
+ "musl": ">=1.2.2",
851
+ "npm": ">=9.6.5",
852
+ "pnpm": ">=7.1.0",
853
+ "yarn": ">=3.2.0"
854
+ },
855
+ "funding": {
856
+ "url": "https://opencollective.com/libvips"
857
+ }
858
+ },
859
+ "node_modules/@img/sharp-libvips-linuxmusl-x64": {
860
+ "version": "1.0.1",
861
+ "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-x64/-/sharp-libvips-linuxmusl-x64-1.0.1.tgz",
862
+ "integrity": "sha512-dcT7inI9DBFK6ovfeWRe3hG30h51cBAP5JXlZfx6pzc/Mnf9HFCQDLtYf4MCBjxaaTfjCCjkBxcy3XzOAo5txw==",
863
+ "cpu": [
864
+ "x64"
865
+ ],
866
+ "optional": true,
867
+ "os": [
868
+ "linux"
869
+ ],
870
+ "engines": {
871
+ "musl": ">=1.2.2",
872
+ "npm": ">=9.6.5",
873
+ "pnpm": ">=7.1.0",
874
+ "yarn": ">=3.2.0"
875
+ },
876
+ "funding": {
877
+ "url": "https://opencollective.com/libvips"
878
+ }
879
+ },
880
+ "node_modules/@img/sharp-linux-arm": {
881
+ "version": "0.33.2",
882
+ "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm/-/sharp-linux-arm-0.33.2.tgz",
883
+ "integrity": "sha512-Fndk/4Zq3vAc4G/qyfXASbS3HBZbKrlnKZLEJzPLrXoJuipFNNwTes71+Ki1hwYW5lch26niRYoZFAtZVf3EGA==",
884
+ "cpu": [
885
+ "arm"
886
+ ],
887
+ "optional": true,
888
+ "os": [
889
+ "linux"
890
+ ],
891
+ "engines": {
892
+ "glibc": ">=2.28",
893
+ "node": "^18.17.0 || ^20.3.0 || >=21.0.0",
894
+ "npm": ">=9.6.5",
895
+ "pnpm": ">=7.1.0",
896
+ "yarn": ">=3.2.0"
897
+ },
898
+ "funding": {
899
+ "url": "https://opencollective.com/libvips"
900
+ },
901
+ "optionalDependencies": {
902
+ "@img/sharp-libvips-linux-arm": "1.0.1"
903
+ }
904
+ },
905
+ "node_modules/@img/sharp-linux-arm64": {
906
+ "version": "0.33.2",
907
+ "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm64/-/sharp-linux-arm64-0.33.2.tgz",
908
+ "integrity": "sha512-pz0NNo882vVfqJ0yNInuG9YH71smP4gRSdeL09ukC2YLE6ZyZePAlWKEHgAzJGTiOh8Qkaov6mMIMlEhmLdKew==",
909
+ "cpu": [
910
+ "arm64"
911
+ ],
912
+ "optional": true,
913
+ "os": [
914
+ "linux"
915
+ ],
916
+ "engines": {
917
+ "glibc": ">=2.26",
918
+ "node": "^18.17.0 || ^20.3.0 || >=21.0.0",
919
+ "npm": ">=9.6.5",
920
+ "pnpm": ">=7.1.0",
921
+ "yarn": ">=3.2.0"
922
+ },
923
+ "funding": {
924
+ "url": "https://opencollective.com/libvips"
925
+ },
926
+ "optionalDependencies": {
927
+ "@img/sharp-libvips-linux-arm64": "1.0.1"
928
+ }
929
+ },
930
+ "node_modules/@img/sharp-linux-s390x": {
931
+ "version": "0.33.2",
932
+ "resolved": "https://registry.npmjs.org/@img/sharp-linux-s390x/-/sharp-linux-s390x-0.33.2.tgz",
933
+ "integrity": "sha512-MBoInDXDppMfhSzbMmOQtGfloVAflS2rP1qPcUIiITMi36Mm5YR7r0ASND99razjQUpHTzjrU1flO76hKvP5RA==",
934
+ "cpu": [
935
+ "s390x"
936
+ ],
937
+ "optional": true,
938
+ "os": [
939
+ "linux"
940
+ ],
941
+ "engines": {
942
+ "glibc": ">=2.28",
943
+ "node": "^18.17.0 || ^20.3.0 || >=21.0.0",
944
+ "npm": ">=9.6.5",
945
+ "pnpm": ">=7.1.0",
946
+ "yarn": ">=3.2.0"
947
+ },
948
+ "funding": {
949
+ "url": "https://opencollective.com/libvips"
950
+ },
951
+ "optionalDependencies": {
952
+ "@img/sharp-libvips-linux-s390x": "1.0.1"
953
+ }
954
+ },
955
+ "node_modules/@img/sharp-linux-x64": {
956
+ "version": "0.33.2",
957
+ "resolved": "https://registry.npmjs.org/@img/sharp-linux-x64/-/sharp-linux-x64-0.33.2.tgz",
958
+ "integrity": "sha512-xUT82H5IbXewKkeF5aiooajoO1tQV4PnKfS/OZtb5DDdxS/FCI/uXTVZ35GQ97RZXsycojz/AJ0asoz6p2/H/A==",
959
+ "cpu": [
960
+ "x64"
961
+ ],
962
+ "optional": true,
963
+ "os": [
964
+ "linux"
965
+ ],
966
+ "engines": {
967
+ "glibc": ">=2.26",
968
+ "node": "^18.17.0 || ^20.3.0 || >=21.0.0",
969
+ "npm": ">=9.6.5",
970
+ "pnpm": ">=7.1.0",
971
+ "yarn": ">=3.2.0"
972
+ },
973
+ "funding": {
974
+ "url": "https://opencollective.com/libvips"
975
+ },
976
+ "optionalDependencies": {
977
+ "@img/sharp-libvips-linux-x64": "1.0.1"
978
+ }
979
+ },
980
+ "node_modules/@img/sharp-linuxmusl-arm64": {
981
+ "version": "0.33.2",
982
+ "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-arm64/-/sharp-linuxmusl-arm64-0.33.2.tgz",
983
+ "integrity": "sha512-F+0z8JCu/UnMzg8IYW1TMeiViIWBVg7IWP6nE0p5S5EPQxlLd76c8jYemG21X99UzFwgkRo5yz2DS+zbrnxZeA==",
984
+ "cpu": [
985
+ "arm64"
986
+ ],
987
+ "optional": true,
988
+ "os": [
989
+ "linux"
990
+ ],
991
+ "engines": {
992
+ "musl": ">=1.2.2",
993
+ "node": "^18.17.0 || ^20.3.0 || >=21.0.0",
994
+ "npm": ">=9.6.5",
995
+ "pnpm": ">=7.1.0",
996
+ "yarn": ">=3.2.0"
997
+ },
998
+ "funding": {
999
+ "url": "https://opencollective.com/libvips"
1000
+ },
1001
+ "optionalDependencies": {
1002
+ "@img/sharp-libvips-linuxmusl-arm64": "1.0.1"
1003
+ }
1004
+ },
1005
+ "node_modules/@img/sharp-linuxmusl-x64": {
1006
+ "version": "0.33.2",
1007
+ "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-x64/-/sharp-linuxmusl-x64-0.33.2.tgz",
1008
+ "integrity": "sha512-+ZLE3SQmSL+Fn1gmSaM8uFusW5Y3J9VOf+wMGNnTtJUMUxFhv+P4UPaYEYT8tqnyYVaOVGgMN/zsOxn9pSsO2A==",
1009
+ "cpu": [
1010
+ "x64"
1011
+ ],
1012
+ "optional": true,
1013
+ "os": [
1014
+ "linux"
1015
+ ],
1016
+ "engines": {
1017
+ "musl": ">=1.2.2",
1018
+ "node": "^18.17.0 || ^20.3.0 || >=21.0.0",
1019
+ "npm": ">=9.6.5",
1020
+ "pnpm": ">=7.1.0",
1021
+ "yarn": ">=3.2.0"
1022
+ },
1023
+ "funding": {
1024
+ "url": "https://opencollective.com/libvips"
1025
+ },
1026
+ "optionalDependencies": {
1027
+ "@img/sharp-libvips-linuxmusl-x64": "1.0.1"
1028
+ }
1029
+ },
1030
+ "node_modules/@img/sharp-wasm32": {
1031
+ "version": "0.33.2",
1032
+ "resolved": "https://registry.npmjs.org/@img/sharp-wasm32/-/sharp-wasm32-0.33.2.tgz",
1033
+ "integrity": "sha512-fLbTaESVKuQcpm8ffgBD7jLb/CQLcATju/jxtTXR1XCLwbOQt+OL5zPHSDMmp2JZIeq82e18yE0Vv7zh6+6BfQ==",
1034
+ "cpu": [
1035
+ "wasm32"
1036
+ ],
1037
+ "optional": true,
1038
+ "dependencies": {
1039
+ "@emnapi/runtime": "^0.45.0"
1040
+ },
1041
+ "engines": {
1042
+ "node": "^18.17.0 || ^20.3.0 || >=21.0.0",
1043
+ "npm": ">=9.6.5",
1044
+ "pnpm": ">=7.1.0",
1045
+ "yarn": ">=3.2.0"
1046
+ },
1047
+ "funding": {
1048
+ "url": "https://opencollective.com/libvips"
1049
+ }
1050
+ },
1051
+ "node_modules/@img/sharp-win32-ia32": {
1052
+ "version": "0.33.2",
1053
+ "resolved": "https://registry.npmjs.org/@img/sharp-win32-ia32/-/sharp-win32-ia32-0.33.2.tgz",
1054
+ "integrity": "sha512-okBpql96hIGuZ4lN3+nsAjGeggxKm7hIRu9zyec0lnfB8E7Z6p95BuRZzDDXZOl2e8UmR4RhYt631i7mfmKU8g==",
1055
+ "cpu": [
1056
+ "ia32"
1057
+ ],
1058
+ "optional": true,
1059
+ "os": [
1060
+ "win32"
1061
+ ],
1062
+ "engines": {
1063
+ "node": "^18.17.0 || ^20.3.0 || >=21.0.0",
1064
+ "npm": ">=9.6.5",
1065
+ "pnpm": ">=7.1.0",
1066
+ "yarn": ">=3.2.0"
1067
+ },
1068
+ "funding": {
1069
+ "url": "https://opencollective.com/libvips"
1070
+ }
1071
+ },
1072
+ "node_modules/@img/sharp-win32-x64": {
1073
+ "version": "0.33.2",
1074
+ "resolved": "https://registry.npmjs.org/@img/sharp-win32-x64/-/sharp-win32-x64-0.33.2.tgz",
1075
+ "integrity": "sha512-E4magOks77DK47FwHUIGH0RYWSgRBfGdK56kIHSVeB9uIS4pPFr4N2kIVsXdQQo4LzOsENKV5KAhRlRL7eMAdg==",
1076
+ "cpu": [
1077
+ "x64"
1078
+ ],
1079
+ "optional": true,
1080
+ "os": [
1081
+ "win32"
1082
+ ],
1083
+ "engines": {
1084
+ "node": "^18.17.0 || ^20.3.0 || >=21.0.0",
1085
+ "npm": ">=9.6.5",
1086
+ "pnpm": ">=7.1.0",
1087
+ "yarn": ">=3.2.0"
1088
+ },
1089
+ "funding": {
1090
+ "url": "https://opencollective.com/libvips"
1091
+ }
1092
+ },
1093
  "node_modules/@jridgewell/gen-mapping": {
1094
  "version": "0.3.3",
1095
  "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz",
 
2158
  "onnxruntime-node": "1.14.0"
2159
  }
2160
  },
2161
+ "node_modules/@xenova/transformers/node_modules/sharp": {
2162
+ "version": "0.32.6",
2163
+ "resolved": "https://registry.npmjs.org/sharp/-/sharp-0.32.6.tgz",
2164
+ "integrity": "sha512-KyLTWwgcR9Oe4d9HwCwNM2l7+J0dUQwn/yf7S0EnTtb0eVS4RxO0eUSvxPtzT4F3SY+C4K6fqdv/DO27sJ/v/w==",
2165
+ "hasInstallScript": true,
2166
+ "dependencies": {
2167
+ "color": "^4.2.3",
2168
+ "detect-libc": "^2.0.2",
2169
+ "node-addon-api": "^6.1.0",
2170
+ "prebuild-install": "^7.1.1",
2171
+ "semver": "^7.5.4",
2172
+ "simple-get": "^4.0.1",
2173
+ "tar-fs": "^3.0.4",
2174
+ "tunnel-agent": "^0.6.0"
2175
+ },
2176
+ "engines": {
2177
+ "node": ">=14.15.0"
2178
+ },
2179
+ "funding": {
2180
+ "url": "https://opencollective.com/libvips"
2181
+ }
2182
+ },
2183
  "node_modules/abab": {
2184
  "version": "2.0.6",
2185
  "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz",
 
4855
  "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw=="
4856
  },
4857
  "node_modules/node-abi": {
4858
+ "version": "3.54.0",
4859
+ "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-3.54.0.tgz",
4860
+ "integrity": "sha512-p7eGEiQil0YUV3ItH4/tBb781L5impVmmx2E9FRKF7d18XXzp4PGT2tdYMFY6wQqgxD0IwNZOiSJ0/K0fSi/OA==",
4861
  "dependencies": {
4862
  "semver": "^7.3.5"
4863
  },
 
6134
  "dev": true
6135
  },
6136
  "node_modules/sharp": {
6137
+ "version": "0.33.2",
6138
+ "resolved": "https://registry.npmjs.org/sharp/-/sharp-0.33.2.tgz",
6139
+ "integrity": "sha512-WlYOPyyPDiiM07j/UO+E720ju6gtNtHjEGg5vovUk1Lgxyjm2LFO+37Nt/UI3MMh2l6hxTWQWi7qk3cXJTutcQ==",
6140
  "hasInstallScript": true,
6141
  "dependencies": {
6142
  "color": "^4.2.3",
6143
  "detect-libc": "^2.0.2",
6144
+ "semver": "^7.5.4"
 
 
 
 
 
6145
  },
6146
  "engines": {
6147
+ "libvips": ">=8.15.1",
6148
+ "node": "^18.17.0 || ^20.3.0 || >=21.0.0"
6149
  },
6150
  "funding": {
6151
  "url": "https://opencollective.com/libvips"
6152
+ },
6153
+ "optionalDependencies": {
6154
+ "@img/sharp-darwin-arm64": "0.33.2",
6155
+ "@img/sharp-darwin-x64": "0.33.2",
6156
+ "@img/sharp-libvips-darwin-arm64": "1.0.1",
6157
+ "@img/sharp-libvips-darwin-x64": "1.0.1",
6158
+ "@img/sharp-libvips-linux-arm": "1.0.1",
6159
+ "@img/sharp-libvips-linux-arm64": "1.0.1",
6160
+ "@img/sharp-libvips-linux-s390x": "1.0.1",
6161
+ "@img/sharp-libvips-linux-x64": "1.0.1",
6162
+ "@img/sharp-libvips-linuxmusl-arm64": "1.0.1",
6163
+ "@img/sharp-libvips-linuxmusl-x64": "1.0.1",
6164
+ "@img/sharp-linux-arm": "0.33.2",
6165
+ "@img/sharp-linux-arm64": "0.33.2",
6166
+ "@img/sharp-linux-s390x": "0.33.2",
6167
+ "@img/sharp-linux-x64": "0.33.2",
6168
+ "@img/sharp-linuxmusl-arm64": "0.33.2",
6169
+ "@img/sharp-linuxmusl-x64": "0.33.2",
6170
+ "@img/sharp-wasm32": "0.33.2",
6171
+ "@img/sharp-win32-ia32": "0.33.2",
6172
+ "@img/sharp-win32-x64": "0.33.2"
6173
  }
6174
  },
6175
  "node_modules/shebang-command": {
 
6358
  "dev": true
6359
  },
6360
  "node_modules/streamx": {
6361
+ "version": "2.15.6",
6362
+ "resolved": "https://registry.npmjs.org/streamx/-/streamx-2.15.6.tgz",
6363
+ "integrity": "sha512-q+vQL4AAz+FdfT137VF69Cc/APqUbxy+MDOImRrMvchJpigHj9GksgDU2LYbO9rx7RX6osWgxJB2WxhYv4SZAw==",
6364
  "dependencies": {
6365
  "fast-fifo": "^1.1.0",
6366
  "queue-tick": "^1.0.1"
 
6814
  }
6815
  },
6816
  "node_modules/tar-stream": {
6817
+ "version": "3.1.7",
6818
+ "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-3.1.7.tgz",
6819
+ "integrity": "sha512-qJj60CXt7IU1Ffyc3NJMjh6EkuCFej46zUqJ4J7pqYlThyd9bO0XBTmcOIhSzZJVWfsLks0+nle/j538YAW9RQ==",
6820
  "dependencies": {
6821
  "b4a": "^1.6.4",
6822
  "fast-fifo": "^1.2.0",
 
7024
  "version": "2.5.0",
7025
  "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz",
7026
  "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==",
7027
+ "devOptional": true
7028
  },
7029
  "node_modules/tunnel-agent": {
7030
  "version": "0.6.0",
package.json CHANGED
@@ -68,6 +68,7 @@
68
  "satori": "^0.10.11",
69
  "satori-html": "^0.3.2",
70
  "serpapi": "^1.1.1",
 
71
  "tailwind-scrollbar": "^3.0.0",
72
  "tailwindcss": "^3.4.0",
73
  "zod": "^3.22.3"
 
68
  "satori": "^0.10.11",
69
  "satori-html": "^0.3.2",
70
  "serpapi": "^1.1.1",
71
+ "sharp": "^0.33.2",
72
  "tailwind-scrollbar": "^3.0.0",
73
  "tailwindcss": "^3.4.0",
74
  "zod": "^3.22.3"
src/routes/assistant/[assistantId]/thumbnail.png/+server.ts CHANGED
@@ -1,4 +1,3 @@
1
- import { APP_BASE } from "$env/static/private";
2
  import ChatThumbnail from "./ChatThumbnail.svelte";
3
  import { collections } from "$lib/server/database";
4
  import { error, type RequestHandler } from "@sveltejs/kit";
@@ -11,8 +10,9 @@ import { html } from "satori-html";
11
 
12
  import InterRegular from "../../../../../static/fonts/Inter-Regular.ttf";
13
  import InterBold from "../../../../../static/fonts/Inter-Bold.ttf";
 
14
 
15
- export const GET: RequestHandler = (async ({ url, params }) => {
16
  const assistant = await collections.assistants.findOne({
17
  _id: new ObjectId(params.assistantId),
18
  });
@@ -21,14 +21,31 @@ export const GET: RequestHandler = (async ({ url, params }) => {
21
  throw error(404, "Assistant not found.");
22
  }
23
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
24
  const renderedComponent = (ChatThumbnail as unknown as SvelteComponent).render({
25
- href: url.origin,
26
  name: assistant.name,
27
  description: assistant.description,
28
  createdByName: assistant.createdByName,
29
- avatarUrl: assistant.avatar
30
- ? url.origin + APP_BASE + "/settings/assistants/" + assistant._id + "/avatar"
31
- : undefined,
32
  });
33
 
34
  const reactLike = html(
 
 
1
  import ChatThumbnail from "./ChatThumbnail.svelte";
2
  import { collections } from "$lib/server/database";
3
  import { error, type RequestHandler } from "@sveltejs/kit";
 
10
 
11
  import InterRegular from "../../../../../static/fonts/Inter-Regular.ttf";
12
  import InterBold from "../../../../../static/fonts/Inter-Bold.ttf";
13
+ import sharp from "sharp";
14
 
15
+ export const GET: RequestHandler = (async ({ params }) => {
16
  const assistant = await collections.assistants.findOne({
17
  _id: new ObjectId(params.assistantId),
18
  });
 
21
  throw error(404, "Assistant not found.");
22
  }
23
 
24
+ let avatar = "";
25
+ const fileId = collections.bucket.find({ filename: assistant._id.toString() });
26
+ const file = await fileId.next();
27
+ if (file) {
28
+ avatar = await (async () => {
29
+ const fileStream = collections.bucket.openDownloadStream(file?._id);
30
+
31
+ const fileBuffer = await new Promise<Buffer>((resolve, reject) => {
32
+ const chunks: Uint8Array[] = [];
33
+ fileStream.on("data", (chunk) => chunks.push(chunk));
34
+ fileStream.on("error", reject);
35
+ fileStream.on("end", () => resolve(Buffer.concat(chunks)));
36
+ });
37
+
38
+ return fileBuffer;
39
+ })()
40
+ .then(async (buf) => sharp(buf).jpeg().toBuffer()) // convert to jpeg bc satori png is really slow
41
+ .then(async (buf) => "data:image/jpeg;base64," + buf.toString("base64"));
42
+ }
43
+
44
  const renderedComponent = (ChatThumbnail as unknown as SvelteComponent).render({
 
45
  name: assistant.name,
46
  description: assistant.description,
47
  createdByName: assistant.createdByName,
48
+ avatar,
 
 
49
  });
50
 
51
  const reactLike = html(
src/routes/assistant/[assistantId]/thumbnail.png/ChatThumbnail.svelte CHANGED
@@ -1,24 +1,23 @@
1
  <script lang="ts">
2
- import { base } from "$app/paths";
3
- import { PUBLIC_APP_ASSETS } from "$env/static/public";
4
-
5
- export let href: string = "";
6
  export let name: string;
7
  export let description: string = "";
8
  export let createdByName: string | undefined;
9
- export let avatarUrl: string | undefined;
10
 
11
- const imgUrl = `${href}${base}/${PUBLIC_APP_ASSETS}/logo.svg`;
12
  </script>
13
 
14
  <div class="flex h-full w-full flex-col items-center justify-center bg-black p-2">
15
  <div class="flex w-full max-w-[540px] items-start justify-center text-white">
16
- {#if avatarUrl}
17
- <img class="h-64 w-64 rounded-full" src={avatarUrl} alt="avatar" />
18
  {/if}
19
  <div class="ml-10 flex flex-col items-start">
20
  <p class="mb-2 mt-0 text-3xl font-normal text-gray-400">
21
- <img class="mr-1.5 h-8 w-8" src={imgUrl} alt="app logo" />
 
 
 
22
  AI assistant
23
  </p>
24
  <h1 class="m-0 {name.length < 38 ? 'text-5xl' : 'text-4xl'} font-black">
 
1
  <script lang="ts">
 
 
 
 
2
  export let name: string;
3
  export let description: string = "";
4
  export let createdByName: string | undefined;
5
+ export let avatar: string | undefined;
6
 
7
+ import logo from "../../../../../static/huggingchat/logo.svg?raw";
8
  </script>
9
 
10
  <div class="flex h-full w-full flex-col items-center justify-center bg-black p-2">
11
  <div class="flex w-full max-w-[540px] items-start justify-center text-white">
12
+ {#if avatar}
13
+ <img class="h-64 w-64 rounded-full" src={avatar} alt="avatar" />
14
  {/if}
15
  <div class="ml-10 flex flex-col items-start">
16
  <p class="mb-2 mt-0 text-3xl font-normal text-gray-400">
17
+ <span class="mr-1.5 h-8 w-8">
18
+ <!-- eslint-disable-next-line -->
19
+ {@html logo}
20
+ </span>
21
  AI assistant
22
  </p>
23
  <h1 class="m-0 {name.length < 38 ? 'text-5xl' : 'text-4xl'} font-black">