Download src/DataCard.js from KyleAIers/Tina: direct link, hf CLI and curl.
- Browser
- Download file 2.55 kB
-
https://huggingface.co/spaces/KyleAIers/Tina/resolve/main/src/DataCard.js
- Command line
-
hf download hf://spaces/KyleAIers/Tina/src/DataCard.js
-
curl -L -o DataCard.js https://huggingface.co/spaces/KyleAIers/Tina/resolve/main/src/DataCard.js
2.55 kB
| export const DataResponseCard = ({ data }) => { | |
| if (data.type === 'inventory') { | |
| return ( | |
| <div className="space-y-3"> | |
| <p className="text-slate-200">Current store inventory details:</p> | |
| <div className="grid grid-cols-2 gap-2 text-xs"> | |
| <div className="bg-slate-900 p-2.5 rounded-lg border border-slate-700"> | |
| <span className="text-slate-400 block">Product Lines</span> | |
| <span className="text-lg font-bold text-emerald-400">{data.productCount}</span> | |
| </div> | |
| <div className="bg-slate-900 p-2.5 rounded-lg border border-slate-700"> | |
| <span className="text-slate-400 block">Total Units</span> | |
| <span className="text-lg font-bold text-emerald-400">{data.totalUnits}</span> | |
| </div> | |
| </div> | |
| <div className="bg-slate-900 rounded-lg p-3 border border-slate-700 space-y-1 text-xs"> | |
| <div className="font-semibold text-slate-300 mb-1">Items List</div> | |
| {data.products.length === 0 ? ( | |
| <p className="text-slate-500">No products found in database.</p> | |
| ) : ( | |
| data.products.map(p => ( | |
| <div key={p.id || p.product_name} className="flex justify-between py-1 border-b border-slate-800 last:border-0"> | |
| <span>{p.product_name}</span> | |
| <span className="text-slate-400">{p.stock_quantity} in stock (₱{p.price})</span> | |
| </div> | |
| )) | |
| )} | |
| </div> | |
| </div> | |
| ); | |
| } | |
| if (data.type === 'sales') { | |
| return ( | |
| <div className="space-y-3"> | |
| <p className="text-slate-200">Sales metrics summary:</p> | |
| <div className="grid grid-cols-3 gap-2 text-xs"> | |
| <div className="bg-slate-900 p-2.5 rounded-lg border border-slate-700"> | |
| <span className="text-slate-400 block">Revenue</span> | |
| <span className="text-sm font-bold text-emerald-400">₱{data.totalRev.toFixed(2)}</span> | |
| </div> | |
| <div className="bg-slate-900 p-2.5 rounded-lg border border-slate-700"> | |
| <span className="text-slate-400 block">Orders</span> | |
| <span className="text-sm font-bold text-emerald-400">{data.totalOrders}</span> | |
| </div> | |
| <div className="bg-slate-900 p-2.5 rounded-lg border border-slate-700"> | |
| <span className="text-slate-400 block">Average</span> | |
| <span className="text-sm font-bold text-emerald-400">₱{data.avgOrder.toFixed(2)}</span> | |
| </div> | |
| </div> | |
| </div> | |
| ); | |
| } | |
| return null; | |
| }; |