Skip to content

Commit 6ab7ff4

Browse files
feat: add qrcode generation
1 parent 0e08f4f commit 6ab7ff4

File tree

3 files changed

+9
-0
lines changed

3 files changed

+9
-0
lines changed

webui/app/(dashboard)/peers/generate-peer.tsx

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,7 @@ import { z } from "zod";
4444
import { useForm } from "react-hook-form";
4545
import { zodResolver } from "@hookform/resolvers/zod";
4646
import { toast } from "sonner";
47+
import QRCode from "qrcode";
4748

4849
const generatePeerFormSchema = z.object({
4950
allowedIP: z.string().ip({ version: "v4" }),
@@ -126,6 +127,12 @@ export function GeneratePeer() {
126127
[hub.data, generatedPeer],
127128
);
128129

130+
useEffect(() => {
131+
if (showQR && canvasRef.current) {
132+
QRCode.toCanvas(canvasRef.current, peerConfig, {}).catch(console.error);
133+
}
134+
}, [showQR, peerConfig]);
135+
129136
return (
130137
<Dialog open={open} onOpenChange={setOpen}>
131138
<DialogTrigger asChild>

webui/bun.lockb

7.88 KB
Binary file not shown.

webui/package.json

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@
2727
"next-themes": "^0.2.1",
2828
"p-memoize": "^7.1.1",
2929
"pretty-bytes": "^6.1.1",
30+
"qrcode": "^1.5.3",
3031
"react": "^18",
3132
"react-dom": "^18",
3233
"react-hook-form": "^7.50.0",
@@ -40,6 +41,7 @@
4041
},
4142
"devDependencies": {
4243
"@types/node": "^20",
44+
"@types/qrcode": "^1.5.5",
4345
"@types/react": "^18",
4446
"@types/react-dom": "^18",
4547
"autoprefixer": "^10.0.1",

0 commit comments

Comments
 (0)