workspace with decoupled nostr package

This commit is contained in:
ennmichael
2023-02-11 21:05:46 +01:00
parent 52e0809622
commit 2a211b78a1
260 changed files with 2363 additions and 714 deletions

View File

@ -0,0 +1,36 @@
import { useSelector } from "react-redux";
import { RootState } from "State/Store";
import NostrBuild from "Upload/NostrBuild";
import VoidCat from "Upload/VoidCat";
import NostrImg from "./NostrImg";
export interface UploadResult {
url?: string;
error?: string;
}
export interface Uploader {
upload: (f: File | Blob, filename: string) => Promise<UploadResult>;
}
export default function useFileUpload(): Uploader {
const fileUploader = useSelector((s: RootState) => s.login.preferences.fileUploader);
switch (fileUploader) {
case "nostr.build": {
return {
upload: NostrBuild,
} as Uploader;
}
case "nostrimg.com": {
return {
upload: NostrImg,
} as Uploader;
}
default: {
return {
upload: VoidCat,
} as Uploader;
}
}
}