diff --git a/package.json b/package.json
index 2166d27..773839b 100644
--- a/package.json
+++ b/package.json
@@ -49,6 +49,7 @@
"input-otp": "^1.2.4",
"lucide-react": "^0.462.0",
"next-themes": "^0.3.0",
+ "qrcode.react": "^4.2.0",
"react": "^18.3.1",
"react-barcode": "^1.6.1",
"react-day-picker": "^8.10.1",
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 19a415e..37f0b5d 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -122,6 +122,9 @@ importers:
next-themes:
specifier: ^0.3.0
version: 0.3.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
+ qrcode.react:
+ specifier: ^4.2.0
+ version: 4.2.0(react@18.3.1)
react:
specifier: ^18.3.1
version: 18.3.1
@@ -2113,6 +2116,11 @@ packages:
resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==}
engines: {node: '>=6'}
+ qrcode.react@4.2.0:
+ resolution: {integrity: sha512-QpgqWi8rD9DsS9EP3z7BT+5lY5SFhsqGjpgW5DY/i3mK4M9DTBNz3ErMi8BWYEfI3L0d8GIbGmcdFAS1uIRGjA==}
+ peerDependencies:
+ react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0
+
queue-microtask@1.2.3:
resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==}
@@ -4281,6 +4289,10 @@ snapshots:
punycode@2.3.1: {}
+ qrcode.react@4.2.0(react@18.3.1):
+ dependencies:
+ react: 18.3.1
+
queue-microtask@1.2.3: {}
react-barcode@1.6.1(react@18.3.1):
diff --git a/src/components/stock/BarcodeDialog.tsx b/src/components/stock/QRCodeDialog.tsx
similarity index 76%
rename from src/components/stock/BarcodeDialog.tsx
rename to src/components/stock/QRCodeDialog.tsx
index 75e2d33..ff6ead6 100644
--- a/src/components/stock/BarcodeDialog.tsx
+++ b/src/components/stock/QRCodeDialog.tsx
@@ -5,16 +5,16 @@ import {
DialogTitle,
DialogDescription,
} from "@/components/ui/dialog"
-import Barcode from "react-barcode"
+import { QRCodeCanvas } from "qrcode.react"
import { StockItem } from "./columns"
-interface BarcodeDialogProps {
+interface QRCodeDialogProps {
item: StockItem | null
open: boolean
onOpenChange: (open: boolean) => void
}
-export const BarcodeDialog = ({ item, open, onOpenChange }: BarcodeDialogProps) => {
+export const QRCodeDialog = ({ item, open, onOpenChange }: QRCodeDialogProps) => {
if (!item) return null
return (
@@ -25,7 +25,7 @@ export const BarcodeDialog = ({ item, open, onOpenChange }: BarcodeDialogProps)