@burdenoff/microfe-assethandler 2026.1013.1 → 2026.1015.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"AssetsAssetCheckInOutPage.d.ts","sourceRoot":"","sources":["../../../src/assethandler/pages/AssetsAssetCheckInOutPage.tsx"],"names":[],"mappings":"AAgOA,wBAAgB,yBAAyB,gCA2mBxC"}
1
+ {"version":3,"file":"AssetsAssetCheckInOutPage.d.ts","sourceRoot":"","sources":["../../../src/assethandler/pages/AssetsAssetCheckInOutPage.tsx"],"names":[],"mappings":"AAgOA,wBAAgB,yBAAyB,gCA+mBxC"}
@@ -134,21 +134,25 @@ var O = (e) => e ? new Date(e).toLocaleDateString(void 0, {
134
134
  }) : "—";
135
135
  function k() {
136
136
  let { assets: d } = e(), b = ce(), [x, w] = o(""), [E, k] = o(""), [A, j] = o(""), [M, N] = o(""), [P, F] = o(""), I = ie(null), [L, R] = o(""), [z, B] = o(!1), [V, H] = o(""), [U, De] = o(""), [W, Oe] = o(""), [ke, Ae] = o(!1), { data: je, loading: Me, refetch: G } = le(xe, { fetchPolicy: "cache-and-network" }), [Ne, { loading: Pe }] = f(Se, {
137
+ refetchQueries: ["AssetHandlerBootstrap"],
137
138
  onCompleted: () => {
138
139
  n.success("Asset checked out", "The assignment has been recorded."), k(""), j(""), N(""), F(""), G();
139
140
  },
140
141
  onError: (e) => n.error("Check-out failed", e.message)
141
142
  }), [Fe, { loading: Ie }] = f(Ce, {
143
+ refetchQueries: ["AssetHandlerBootstrap"],
142
144
  onCompleted: () => {
143
145
  n.success("Asset checked in", "The asset has been returned."), G();
144
146
  },
145
147
  onError: (e) => n.error("Check-in failed", e.message)
146
148
  }), [Le, { loading: Re }] = f(we, {
149
+ refetchQueries: ["AssetHandlerBootstrap"],
147
150
  onCompleted: () => {
148
151
  n.success("Asset checked out", "The assignment has been recorded."), Q(), G();
149
152
  },
150
153
  onError: (e) => n.error("Scan check-out failed", e.message)
151
154
  }), [ze, { loading: Be }] = f(Te, {
155
+ refetchQueries: ["AssetHandlerBootstrap"],
152
156
  onCompleted: () => {
153
157
  n.success("Asset checked in", "The asset has been returned."), Q(), G();
154
158
  },
@@ -1 +1 @@
1
- {"version":3,"file":"AssetsAssetCheckInOutPage.js","names":[],"sources":["../../../src/assethandler/pages/AssetsAssetCheckInOutPage.tsx"],"sourcesContent":["import { useEffect, useMemo, useRef, useState } from 'react';\nimport {\n Button,\n Input,\n Textarea,\n Label,\n Tabs,\n TabsContent,\n TabsList,\n TabsTrigger,\n GlassCard,\n PagePurpose,\n IllustratedEmptyState,\n Select,\n SelectContent,\n SelectItem,\n SelectTrigger,\n SelectValue,\n} from '@burdenoff/fe-libs/ui';\nimport {\n ArrowDownToLine,\n ArrowUpFromLine,\n Clock,\n Search,\n AlertTriangle,\n PackageCheck,\n ScanLine,\n} from 'lucide-react';\nimport { gql } from '@apollo/client';\nimport { useApolloClient, useMutation, useQuery } from '@apollo/client/react';\nimport { useAssetHandlerStore } from '../store/assethandlerStore';\nimport { notify } from '../utils/toast';\nimport { cn } from '../utils/cn';\nimport { SectionHeader, StatTile, ChartCard, DonutChart, TrendChart } from '../components';\n\n// ─── Backend types (mirror wspace-assethandler-svc AssetAssignment) ───────────\ntype AssignmentStatus = 'CHECKED_OUT' | 'OVERDUE' | 'RETURNED';\n\ninterface AssetAssignment {\n id: string;\n assetId: string;\n assetName: string;\n assignedTo: string;\n assignedBy: string;\n checkedOutAt: string;\n dueAt: string | null;\n checkedInAt: string | null;\n status: AssignmentStatus;\n notes: string | null;\n}\n\nconst ASSET_ASSIGNMENTS_QUERY = gql`\n query AssetHandlerAssetAssignments {\n assetAssignments {\n id\n assetId\n assetName\n assignedTo\n assignedBy\n checkedOutAt\n dueAt\n checkedInAt\n status\n notes\n }\n }\n`;\n\nconst CHECK_OUT_ASSET_MUTATION = gql`\n mutation AssetHandlerCheckOutAsset($input: CheckOutAssetInput!) {\n checkOutAsset(input: $input) {\n id\n status\n }\n }\n`;\n\nconst CHECK_IN_ASSET_MUTATION = gql`\n mutation AssetHandlerCheckInAsset($input: CheckInAssetInput!) {\n checkInAsset(input: $input) {\n id\n status\n }\n }\n`;\n\nconst CHECK_OUT_ASSET_BY_TAG_MUTATION = gql`\n mutation AssetHandlerCheckOutAssetByTag($input: CheckOutAssetByTagInput!) {\n checkOutAssetByTag(input: $input) {\n id\n status\n }\n }\n`;\n\nconst CHECK_IN_ASSET_BY_TAG_MUTATION = gql`\n mutation AssetHandlerCheckInAssetByTag($input: CheckInAssetByTagInput!) {\n checkInAssetByTag(input: $input) {\n id\n status\n }\n }\n`;\n\nconst ASSET_BY_TAG_QUERY = gql`\n query AssetHandlerAssetByTag($tagId: String!) {\n assetByTag(tagId: $tagId) {\n id\n name\n tagId\n assetNumber\n status\n }\n }\n`;\n\n// Branded soft status pills — amber = checked out, green = returned, red = overdue.\nconst STATUS_PILL: Record<AssignmentStatus, string> = {\n CHECKED_OUT: 'bg-status-warning-subtle text-status-warning-text',\n RETURNED: 'bg-status-success-subtle text-status-success-text',\n OVERDUE: 'bg-status-error-subtle text-status-error-text',\n};\n\nconst STATUS_LABEL: Record<AssignmentStatus, string> = {\n CHECKED_OUT: 'Checked out',\n RETURNED: 'Returned',\n OVERDUE: 'Overdue',\n};\n\nconst STATUS_DONUT_COLOR: Record<AssignmentStatus, string> = {\n CHECKED_OUT: 'var(--color-status-warning-bg)',\n OVERDUE: 'var(--color-status-error-bg)',\n RETURNED: 'var(--color-status-success-bg)',\n};\n\nfunction StatusPill({ status }: { status: AssignmentStatus }) {\n return (\n <span\n className={cn(\n 'inline-flex items-center rounded-full px-2.5 py-0.5 text-xs font-medium',\n STATUS_PILL[status]\n )}\n >\n {STATUS_LABEL[status]}\n </span>\n );\n}\n\nfunction initials(value: string): string {\n const trimmed = value.trim();\n if (!trimmed) return '?';\n const parts = trimmed.split(/[\\s@._-]+/).filter(Boolean);\n const first = parts[0]?.[0] ?? trimmed[0];\n const second = parts.length > 1 ? parts[1][0] : '';\n return (first + second).toUpperCase();\n}\n\nfunction PersonChip({ name, by }: { name: string; by: string }) {\n return (\n <div className=\"flex items-center gap-2.5\">\n <span\n aria-hidden=\"true\"\n className=\"flex h-8 w-8 shrink-0 items-center justify-center rounded-full bg-action-primary-bg/10 text-xs font-semibold text-action-primary-text\"\n >\n {initials(name)}\n </span>\n <div className=\"min-w-0\">\n <p className=\"truncate text-sm text-text-primary\">{name || '—'}</p>\n <p className=\"truncate text-xs text-text-secondary\">by {by}</p>\n </div>\n </div>\n );\n}\n\nfunction daysUntil(dueAt: string): number | null {\n const due = new Date(dueAt);\n if (Number.isNaN(due.getTime())) return null;\n const today = new Date();\n const start = new Date(today.getFullYear(), today.getMonth(), today.getDate());\n const target = new Date(due.getFullYear(), due.getMonth(), due.getDate());\n return Math.round((target.getTime() - start.getTime()) / 86_400_000);\n}\n\nfunction DueChip({ dueAt, status }: { dueAt: string | null; status: AssignmentStatus }) {\n if (status === 'RETURNED' || !dueAt) return null;\n const days = daysUntil(dueAt);\n if (days === null) return null;\n let label: string;\n let tone: string;\n if (days < 0) {\n label = `${-days}d overdue`;\n tone = 'bg-status-error-subtle text-status-error-text';\n } else if (days === 0) {\n label = 'Due today';\n tone = 'bg-status-warning-subtle text-status-warning-text';\n } else if (days <= 3) {\n label = `Due in ${days}d`;\n tone = 'bg-status-warning-subtle text-status-warning-text';\n } else {\n label = `Due in ${days}d`;\n tone = 'bg-bg-sunken text-text-secondary';\n }\n return (\n <span className={cn('inline-flex rounded-full px-2 py-0.5 text-[11px] font-medium', tone)}>\n {label}\n </span>\n );\n}\n\nconst fmtDate = (iso: string | null): string =>\n iso\n ? new Date(iso).toLocaleDateString(undefined, {\n month: 'short',\n day: 'numeric',\n year: 'numeric',\n })\n : '—';\n\ninterface ScannableAsset {\n id: string;\n name: string;\n tagId: string;\n}\n\nexport function AssetsAssetCheckInOutPage() {\n const { assets } = useAssetHandlerStore();\n const apolloClient = useApolloClient();\n const [searchQuery, setSearchQuery] = useState('');\n const [assetId, setAssetId] = useState('');\n const [assignedTo, setAssignedTo] = useState('');\n const [dueAt, setDueAt] = useState('');\n const [notes, setNotes] = useState('');\n\n // Scan-based check-in/out state (BOFF-3950).\n const scanInputRef = useRef<HTMLInputElement>(null);\n const [scanTagId, setScanTagId] = useState('');\n const [scanCheckoutMode, setScanCheckoutMode] = useState(false);\n const [scanAssignee, setScanAssignee] = useState('');\n const [scanDueAt, setScanDueAt] = useState('');\n const [scanNotes, setScanNotes] = useState('');\n const [scanning, setScanning] = useState(false);\n\n const { data, loading, refetch } = useQuery<{ assetAssignments: AssetAssignment[] }>(\n ASSET_ASSIGNMENTS_QUERY,\n { fetchPolicy: 'cache-and-network' }\n );\n\n const [checkOutAsset, { loading: checkingOut }] = useMutation(CHECK_OUT_ASSET_MUTATION, {\n onCompleted: () => {\n notify.success('Asset checked out', 'The assignment has been recorded.');\n setAssetId('');\n setAssignedTo('');\n setDueAt('');\n setNotes('');\n void refetch();\n },\n onError: (error) => notify.error('Check-out failed', error.message),\n });\n\n const [checkInAsset, { loading: checkingIn }] = useMutation(CHECK_IN_ASSET_MUTATION, {\n onCompleted: () => {\n notify.success('Asset checked in', 'The asset has been returned.');\n void refetch();\n },\n onError: (error) => notify.error('Check-in failed', error.message),\n });\n\n const [checkOutAssetByTag, { loading: checkingOutByTag }] = useMutation(\n CHECK_OUT_ASSET_BY_TAG_MUTATION,\n {\n onCompleted: () => {\n notify.success('Asset checked out', 'The assignment has been recorded.');\n resetScanForm();\n void refetch();\n },\n onError: (error) => notify.error('Scan check-out failed', error.message),\n }\n );\n\n const [checkInAssetByTag, { loading: checkingInByTag }] = useMutation(\n CHECK_IN_ASSET_BY_TAG_MUTATION,\n {\n onCompleted: () => {\n notify.success('Asset checked in', 'The asset has been returned.');\n resetScanForm();\n void refetch();\n },\n onError: (error) => notify.error('Scan check-in failed', error.message),\n }\n );\n\n const assignments = useMemo(() => data?.assetAssignments ?? [], [data]);\n\n const activeCheckouts = assignments.filter((a) => a.status === 'CHECKED_OUT');\n const overdueCheckouts = assignments.filter((a) => a.status === 'OVERDUE');\n const returnedRecords = assignments.filter((a) => a.status === 'RETURNED');\n\n const filteredRecords = assignments.filter(\n (a) =>\n searchQuery === '' ||\n a.assetName.toLowerCase().includes(searchQuery.toLowerCase()) ||\n a.assignedTo.toLowerCase().includes(searchQuery.toLowerCase())\n );\n\n // Status mix (real snapshot counts) — zero slices are dropped by DonutChart.\n const statusMix = [\n { name: 'Checked out', value: activeCheckouts.length, color: STATUS_DONUT_COLOR.CHECKED_OUT },\n { name: 'Overdue', value: overdueCheckouts.length, color: STATUS_DONUT_COLOR.OVERDUE },\n { name: 'Returned', value: returnedRecords.length, color: STATUS_DONUT_COLOR.RETURNED },\n ];\n\n // Checkouts over the last 6 months, bucketed from real checkedOutAt timestamps.\n const checkoutTrend = useMemo(() => {\n const base = new Date();\n const buckets = Array.from({ length: 6 }, (_, i) => {\n const d = new Date(base.getFullYear(), base.getMonth() - (5 - i), 1);\n return {\n key: `${d.getFullYear()}-${d.getMonth()}`,\n label: d.toLocaleDateString(undefined, { month: 'short' }),\n checkouts: 0,\n };\n });\n const index = new Map(buckets.map((b, i) => [b.key, i]));\n for (const a of assignments) {\n const d = new Date(a.checkedOutAt);\n if (Number.isNaN(d.getTime())) continue;\n const i = index.get(`${d.getFullYear()}-${d.getMonth()}`);\n if (i !== undefined) buckets[i].checkouts += 1;\n }\n return buckets;\n }, [assignments]);\n\n const hasTrend = checkoutTrend.some((b) => b.checkouts > 0);\n const hasData = assignments.length > 0;\n\n const activeCheckoutForAsset = (assetId: string): AssetAssignment | undefined =>\n assignments.find((a) => a.assetId === assetId && a.status !== 'RETURNED');\n\n const resetScanForm = () => {\n setScanTagId('');\n setScanCheckoutMode(false);\n setScanAssignee('');\n setScanDueAt('');\n setScanNotes('');\n scanInputRef.current?.focus();\n };\n\n const resolveAssetForScan = async (tagId: string): Promise<ScannableAsset | null> => {\n const localAsset = assets.find(\n (a) => a.tagId === tagId || a.assetTag === tagId || a.id === tagId\n );\n if (localAsset) {\n return { id: localAsset.id, name: localAsset.name, tagId: localAsset.tagId };\n }\n\n try {\n const result = await apolloClient.query<{ assetByTag: ScannableAsset | null }>({\n query: ASSET_BY_TAG_QUERY,\n variables: { tagId },\n fetchPolicy: 'network-only',\n });\n return result.data?.assetByTag ?? null;\n } catch {\n return null;\n }\n };\n\n const executeScanAction = (asset: ScannableAsset) => {\n const activeCheckout = activeCheckoutForAsset(asset.id);\n\n if (scanCheckoutMode) {\n // Already in checkout mode — perform the checkout.\n if (!scanAssignee.trim()) {\n notify.warning('Assignee required', 'Enter who is receiving the asset.');\n return;\n }\n void checkOutAssetByTag({\n variables: {\n input: {\n tagId: asset.tagId,\n assignedTo: scanAssignee.trim(),\n dueAt: scanDueAt ? new Date(scanDueAt).toISOString() : null,\n notes: scanNotes.trim() || null,\n },\n },\n });\n return;\n }\n\n if (activeCheckout) {\n // Asset is currently checked out — check it in.\n void checkInAssetByTag({\n variables: {\n input: {\n tagId: asset.tagId,\n notes: scanNotes.trim() || null,\n },\n },\n });\n return;\n }\n\n // Asset is available — switch to checkout mode.\n setScanCheckoutMode(true);\n notify.info(\n 'Ready to check out',\n `${asset.name} is available. Add assignee details and scan again.`\n );\n };\n\n const submitScan = async (event: React.FormEvent) => {\n event.preventDefault();\n const tagId = scanTagId.trim();\n if (!tagId) {\n notify.warning('Enter a tag', 'Scan or type the asset tag to continue.');\n return;\n }\n\n setScanning(true);\n const asset = await resolveAssetForScan(tagId);\n setScanning(false);\n\n if (!asset) {\n notify.error('Unknown tag', `No asset matched \"${tagId}\".`);\n return;\n }\n\n executeScanAction(asset);\n };\n\n // `/` focuses the scan input from anywhere on the page.\n useEffect(() => {\n const handler = (event: KeyboardEvent) => {\n if (\n event.key === '/' &&\n !['INPUT', 'TEXTAREA'].includes((event.target as HTMLElement)?.tagName)\n ) {\n event.preventDefault();\n scanInputRef.current?.focus();\n }\n };\n window.addEventListener('keydown', handler);\n return () => window.removeEventListener('keydown', handler);\n }, []);\n\n const submitCheckout = (event: React.FormEvent) => {\n event.preventDefault();\n if (!assetId || !assignedTo.trim()) {\n notify.warning('Missing details', 'Choose an asset and who is receiving it.');\n return;\n }\n void checkOutAsset({\n variables: {\n input: {\n assetId,\n assignedTo: assignedTo.trim(),\n dueAt: dueAt ? new Date(dueAt).toISOString() : null,\n notes: notes.trim() || null,\n },\n },\n });\n };\n\n const checkInButton = (rec: AssetAssignment) =>\n rec.status !== 'RETURNED' ? (\n <Button\n size=\"sm\"\n variant=\"outline\"\n disabled={checkingIn}\n onClick={() => void checkInAsset({ variables: { input: { assignmentId: rec.id } } })}\n >\n <ArrowDownToLine className=\"mr-1.5 h-3.5 w-3.5\" />\n Check In\n </Button>\n ) : null;\n\n const renderRecords = (records: AssetAssignment[]) => (\n <GlassCard treatment=\"glass\" className=\"overflow-hidden border-border-seam\">\n {/* Desktop table */}\n <div className=\"hidden overflow-x-auto md:block\">\n <table className=\"w-full text-sm\">\n <thead>\n <tr className=\"border-b border-border-seam bg-bg-sunken/40\">\n <th className=\"p-3 text-left font-medium text-text-secondary\">Asset</th>\n <th className=\"p-3 text-left font-medium text-text-secondary\">Assigned to</th>\n <th className=\"p-3 text-left font-medium text-text-secondary\">Checked out</th>\n <th className=\"p-3 text-left font-medium text-text-secondary\">Due</th>\n <th className=\"p-3 text-left font-medium text-text-secondary\">Returned</th>\n <th className=\"p-3 text-left font-medium text-text-secondary\">Status</th>\n <th className=\"p-3 text-right font-medium text-text-secondary\">Action</th>\n </tr>\n </thead>\n <tbody>\n {records.map((rec) => {\n const overdue = rec.status === 'OVERDUE';\n return (\n <tr\n key={rec.id}\n className={cn(\n 'border-b border-border-seam/70 transition-colors',\n overdue\n ? 'border-l-2 border-l-status-error-text bg-status-error-subtle/50 hover:bg-status-error-subtle'\n : 'hover:bg-bg-sunken/50'\n )}\n >\n <td className=\"p-3\">\n <p className=\"font-medium text-text-primary\">{rec.assetName}</p>\n <p className=\"font-mono text-xs text-text-secondary\">{rec.assetId}</p>\n </td>\n <td className=\"p-3\">\n <PersonChip name={rec.assignedTo} by={rec.assignedBy} />\n </td>\n <td className=\"p-3 text-xs text-text-secondary\">{fmtDate(rec.checkedOutAt)}</td>\n <td className=\"p-3\">\n <div className=\"flex flex-col items-start gap-1\">\n <span className=\"text-xs text-text-secondary\">{fmtDate(rec.dueAt)}</span>\n <DueChip dueAt={rec.dueAt} status={rec.status} />\n </div>\n </td>\n <td className=\"p-3 text-xs text-text-secondary\">{fmtDate(rec.checkedInAt)}</td>\n <td className=\"p-3\">\n <StatusPill status={rec.status} />\n </td>\n <td className=\"p-3 text-right\">{checkInButton(rec)}</td>\n </tr>\n );\n })}\n </tbody>\n </table>\n </div>\n\n {/* Mobile stacked cards */}\n <div className=\"divide-y divide-border-seam md:hidden\">\n {records.map((rec) => {\n const overdue = rec.status === 'OVERDUE';\n const action = checkInButton(rec);\n return (\n <div\n key={rec.id}\n className={cn(\n 'space-y-3 p-4',\n overdue && 'border-l-2 border-l-status-error-text bg-status-error-subtle/40'\n )}\n >\n <div className=\"flex items-start justify-between gap-3\">\n <div className=\"min-w-0\">\n <p className=\"truncate font-medium text-text-primary\">{rec.assetName}</p>\n <p className=\"font-mono text-xs text-text-secondary\">{rec.assetId}</p>\n </div>\n <StatusPill status={rec.status} />\n </div>\n <PersonChip name={rec.assignedTo} by={rec.assignedBy} />\n <div className=\"flex flex-wrap items-center gap-x-4 gap-y-1 text-xs text-text-secondary\">\n <span>Out {fmtDate(rec.checkedOutAt)}</span>\n <span>Due {fmtDate(rec.dueAt)}</span>\n <DueChip dueAt={rec.dueAt} status={rec.status} />\n </div>\n {action ? <div>{action}</div> : null}\n </div>\n );\n })}\n </div>\n\n {records.length === 0 && !loading && (\n <IllustratedEmptyState\n illustration={searchQuery ? 'empty-search' : 'empty-people'}\n title={searchQuery ? 'No matching records' : 'No check-in / out records'}\n description={\n searchQuery\n ? 'No records match your search — try a different name.'\n : 'Check an asset out to someone and the activity will appear here.'\n }\n />\n )}\n {loading && records.length === 0 ? (\n <div className=\"space-y-2 p-4\">\n {Array.from({ length: 4 }).map((_, i) => (\n <div key={i} className=\"h-10 rounded-md bg-bg-sunken motion-safe:animate-vc-shimmer\" />\n ))}\n </div>\n ) : null}\n </GlassCard>\n );\n\n return (\n <div className=\"space-y-6 p-4 sm:p-6\">\n <SectionHeader\n hero\n icon={PackageCheck}\n title=\"Asset Check-In / Check-Out\"\n description=\"Manage asset assignments and returns\"\n />\n\n <PagePurpose>\n Know who has what, right now. Check assets out to people for a job or loan period and check\n them back in on return. Use it to chase overdue items and make sure nothing walks off\n without a trace.\n </PagePurpose>\n\n {/* Uniform KPI band */}\n <div className=\"grid gap-4 sm:grid-cols-2 xl:grid-cols-4\">\n <StatTile\n label=\"Active checkouts\"\n value={activeCheckouts.length}\n icon={ArrowUpFromLine}\n hero\n />\n <StatTile\n label=\"Overdue\"\n value={overdueCheckouts.length}\n icon={AlertTriangle}\n delta={overdueCheckouts.length > 0 ? 'chase now' : undefined}\n deltaTone=\"negative\"\n deltaDirection=\"up\"\n />\n <StatTile label=\"Returned\" value={returnedRecords.length} icon={ArrowDownToLine} />\n <StatTile label=\"Total records\" value={assignments.length} icon={Clock} />\n </div>\n\n <div className=\"grid gap-6 xl:grid-cols-[minmax(0,1fr)_340px]\">\n {/* Main column */}\n <div className=\"min-w-0 space-y-6\">\n {hasData && (\n <div className=\"grid gap-4 lg:grid-cols-2\">\n <ChartCard\n title=\"Custody mix\"\n subtitle=\"Where every record stands right now\"\n icon={PackageCheck}\n >\n <DonutChart\n data={statusMix}\n centerLabel=\"Records\"\n centerValue={assignments.length}\n ariaLabel=\"Custody status mix\"\n />\n </ChartCard>\n <ChartCard\n title=\"Checkouts over time\"\n subtitle=\"Custody activity, last 6 months\"\n icon={ArrowUpFromLine}\n >\n {hasTrend ? (\n <TrendChart\n data={checkoutTrend}\n xKey=\"label\"\n series={[{ key: 'checkouts', label: 'Checkouts' }]}\n height={220}\n ariaLabel=\"Checkouts per month\"\n />\n ) : (\n <div className=\"flex h-[220px] items-center justify-center text-sm text-text-secondary\">\n Not enough dated history yet.\n </div>\n )}\n </ChartCard>\n </div>\n )}\n\n <GlassCard treatment=\"glass\" className=\"border-border-seam\">\n <form className=\"space-y-4 p-5\" onSubmit={submitScan}>\n <div className=\"flex items-center gap-2\">\n <ScanLine className=\"h-4 w-4 text-action-primary-text\" />\n <h2 className=\"text-base font-semibold text-text-primary\">Scan asset tag</h2>\n <span className=\"ml-auto text-xs text-text-secondary\">Press / to focus</span>\n </div>\n\n <div className=\"flex flex-col gap-4 sm:flex-row sm:items-end\">\n <div className=\"relative min-w-0 flex-1\">\n <ScanLine className=\"absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-text-secondary\" />\n <Input\n ref={scanInputRef}\n placeholder=\"Scan or type asset tag…\"\n value={scanTagId}\n onChange={(e) => setScanTagId(e.target.value)}\n className=\"pl-9\"\n autoFocus\n />\n </div>\n <Button\n type=\"submit\"\n disabled={checkingOutByTag || checkingInByTag || scanning}\n className=\"w-full sm:w-auto\"\n >\n <ScanLine className=\"mr-2 h-4 w-4\" />\n {checkingOutByTag || checkingInByTag || scanning\n ? 'Processing…'\n : scanCheckoutMode\n ? 'Check Out'\n : 'Scan'}\n </Button>\n </div>\n\n {scanCheckoutMode && (\n <div className=\"grid gap-4 sm:grid-cols-3\">\n <div className=\"space-y-1.5\">\n <Label htmlFor=\"scan-assignee\">Assign to</Label>\n <Input\n id=\"scan-assignee\"\n placeholder=\"Name or email\"\n value={scanAssignee}\n onChange={(e) => setScanAssignee(e.target.value)}\n />\n </div>\n <div className=\"space-y-1.5\">\n <Label htmlFor=\"scan-due\">Due date</Label>\n <Input\n id=\"scan-due\"\n type=\"date\"\n value={scanDueAt}\n onChange={(e) => setScanDueAt(e.target.value)}\n />\n </div>\n <div className=\"space-y-1.5\">\n <Label htmlFor=\"scan-notes\">Notes</Label>\n <Input\n id=\"scan-notes\"\n placeholder=\"Optional notes\"\n value={scanNotes}\n onChange={(e) => setScanNotes(e.target.value)}\n />\n </div>\n </div>\n )}\n\n {scanCheckoutMode && (\n <div className=\"flex items-center gap-2 text-xs text-text-secondary\">\n <button\n type=\"button\"\n className=\"text-action-primary-text hover:underline\"\n onClick={resetScanForm}\n >\n Cancel\n </button>\n <span>to start over.</span>\n </div>\n )}\n </form>\n </GlassCard>\n\n <div className=\"relative max-w-md\">\n <Search className=\"absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-text-secondary\" />\n <Input\n placeholder=\"Search by asset or person…\"\n value={searchQuery}\n onChange={(e) => setSearchQuery(e.target.value)}\n className=\"pl-9\"\n />\n </div>\n\n <Tabs defaultValue=\"all\">\n <TabsList className=\"max-w-full justify-start overflow-x-auto\">\n <TabsTrigger value=\"all\">All ({filteredRecords.length})</TabsTrigger>\n <TabsTrigger value=\"active\">Active ({activeCheckouts.length})</TabsTrigger>\n <TabsTrigger value=\"overdue\">Overdue ({overdueCheckouts.length})</TabsTrigger>\n <TabsTrigger value=\"returned\">Returned ({returnedRecords.length})</TabsTrigger>\n </TabsList>\n {(\n [\n ['all', null],\n ['active', 'CHECKED_OUT'],\n ['overdue', 'OVERDUE'],\n ['returned', 'RETURNED'],\n ] as const\n ).map(([tab, status]) => {\n const records =\n status === null\n ? filteredRecords\n : filteredRecords.filter((r) => r.status === status);\n return (\n <TabsContent key={tab} value={tab} className=\"mt-4\">\n {renderRecords(records)}\n </TabsContent>\n );\n })}\n </Tabs>\n </div>\n\n {/* Persistent check-out rail */}\n <aside className=\"xl:sticky xl:top-4 xl:h-fit\">\n <GlassCard treatment=\"glass\" className=\"border-border-seam\">\n <form className=\"space-y-4 p-5\" onSubmit={submitCheckout}>\n <div className=\"flex items-center gap-2\">\n <ArrowUpFromLine className=\"h-4 w-4 text-action-primary-text\" />\n <h2 className=\"text-base font-semibold text-text-primary\">Check out an asset</h2>\n </div>\n\n <div className=\"space-y-1.5\">\n <Label htmlFor=\"checkout-asset\">Asset</Label>\n <Select value={assetId} onValueChange={setAssetId}>\n <SelectTrigger id=\"checkout-asset\" className=\"w-full\">\n <SelectValue placeholder=\"Select an asset…\" />\n </SelectTrigger>\n <SelectContent>\n {assets.map((asset) => (\n <SelectItem key={asset.id} value={asset.id}>\n {asset.name} ({asset.assetTag})\n </SelectItem>\n ))}\n </SelectContent>\n </Select>\n </div>\n\n <div className=\"space-y-1.5\">\n <Label htmlFor=\"checkout-assignee\">Assign to</Label>\n <Input\n id=\"checkout-assignee\"\n placeholder=\"Name or email\"\n value={assignedTo}\n onChange={(event) => setAssignedTo(event.target.value)}\n />\n </div>\n\n <div className=\"space-y-1.5\">\n <Label htmlFor=\"checkout-due\">Due date</Label>\n <Input\n id=\"checkout-due\"\n type=\"date\"\n value={dueAt}\n onChange={(event) => setDueAt(event.target.value)}\n />\n </div>\n\n <div className=\"space-y-1.5\">\n <Label htmlFor=\"checkout-notes\">Notes</Label>\n <Textarea\n id=\"checkout-notes\"\n placeholder=\"Optional context for this checkout…\"\n rows={3}\n value={notes}\n onChange={(event) => setNotes(event.target.value)}\n />\n </div>\n\n <Button type=\"submit\" className=\"w-full\" disabled={checkingOut}>\n <ArrowUpFromLine className=\"mr-2 h-4 w-4\" />\n {checkingOut ? 'Checking out…' : 'Check Out Asset'}\n </Button>\n </form>\n </GlassCard>\n </aside>\n </div>\n </div>\n );\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"AssetsAssetCheckInOutPage.js","names":[],"sources":["../../../src/assethandler/pages/AssetsAssetCheckInOutPage.tsx"],"sourcesContent":["import { useEffect, useMemo, useRef, useState } from 'react';\nimport {\n Button,\n Input,\n Textarea,\n Label,\n Tabs,\n TabsContent,\n TabsList,\n TabsTrigger,\n GlassCard,\n PagePurpose,\n IllustratedEmptyState,\n Select,\n SelectContent,\n SelectItem,\n SelectTrigger,\n SelectValue,\n} from '@burdenoff/fe-libs/ui';\nimport {\n ArrowDownToLine,\n ArrowUpFromLine,\n Clock,\n Search,\n AlertTriangle,\n PackageCheck,\n ScanLine,\n} from 'lucide-react';\nimport { gql } from '@apollo/client';\nimport { useApolloClient, useMutation, useQuery } from '@apollo/client/react';\nimport { useAssetHandlerStore } from '../store/assethandlerStore';\nimport { notify } from '../utils/toast';\nimport { cn } from '../utils/cn';\nimport { SectionHeader, StatTile, ChartCard, DonutChart, TrendChart } from '../components';\n\n// ─── Backend types (mirror wspace-assethandler-svc AssetAssignment) ───────────\ntype AssignmentStatus = 'CHECKED_OUT' | 'OVERDUE' | 'RETURNED';\n\ninterface AssetAssignment {\n id: string;\n assetId: string;\n assetName: string;\n assignedTo: string;\n assignedBy: string;\n checkedOutAt: string;\n dueAt: string | null;\n checkedInAt: string | null;\n status: AssignmentStatus;\n notes: string | null;\n}\n\nconst ASSET_ASSIGNMENTS_QUERY = gql`\n query AssetHandlerAssetAssignments {\n assetAssignments {\n id\n assetId\n assetName\n assignedTo\n assignedBy\n checkedOutAt\n dueAt\n checkedInAt\n status\n notes\n }\n }\n`;\n\nconst CHECK_OUT_ASSET_MUTATION = gql`\n mutation AssetHandlerCheckOutAsset($input: CheckOutAssetInput!) {\n checkOutAsset(input: $input) {\n id\n status\n }\n }\n`;\n\nconst CHECK_IN_ASSET_MUTATION = gql`\n mutation AssetHandlerCheckInAsset($input: CheckInAssetInput!) {\n checkInAsset(input: $input) {\n id\n status\n }\n }\n`;\n\nconst CHECK_OUT_ASSET_BY_TAG_MUTATION = gql`\n mutation AssetHandlerCheckOutAssetByTag($input: CheckOutAssetByTagInput!) {\n checkOutAssetByTag(input: $input) {\n id\n status\n }\n }\n`;\n\nconst CHECK_IN_ASSET_BY_TAG_MUTATION = gql`\n mutation AssetHandlerCheckInAssetByTag($input: CheckInAssetByTagInput!) {\n checkInAssetByTag(input: $input) {\n id\n status\n }\n }\n`;\n\nconst ASSET_BY_TAG_QUERY = gql`\n query AssetHandlerAssetByTag($tagId: String!) {\n assetByTag(tagId: $tagId) {\n id\n name\n tagId\n assetNumber\n status\n }\n }\n`;\n\n// Branded soft status pills — amber = checked out, green = returned, red = overdue.\nconst STATUS_PILL: Record<AssignmentStatus, string> = {\n CHECKED_OUT: 'bg-status-warning-subtle text-status-warning-text',\n RETURNED: 'bg-status-success-subtle text-status-success-text',\n OVERDUE: 'bg-status-error-subtle text-status-error-text',\n};\n\nconst STATUS_LABEL: Record<AssignmentStatus, string> = {\n CHECKED_OUT: 'Checked out',\n RETURNED: 'Returned',\n OVERDUE: 'Overdue',\n};\n\nconst STATUS_DONUT_COLOR: Record<AssignmentStatus, string> = {\n CHECKED_OUT: 'var(--color-status-warning-bg)',\n OVERDUE: 'var(--color-status-error-bg)',\n RETURNED: 'var(--color-status-success-bg)',\n};\n\nfunction StatusPill({ status }: { status: AssignmentStatus }) {\n return (\n <span\n className={cn(\n 'inline-flex items-center rounded-full px-2.5 py-0.5 text-xs font-medium',\n STATUS_PILL[status]\n )}\n >\n {STATUS_LABEL[status]}\n </span>\n );\n}\n\nfunction initials(value: string): string {\n const trimmed = value.trim();\n if (!trimmed) return '?';\n const parts = trimmed.split(/[\\s@._-]+/).filter(Boolean);\n const first = parts[0]?.[0] ?? trimmed[0];\n const second = parts.length > 1 ? parts[1][0] : '';\n return (first + second).toUpperCase();\n}\n\nfunction PersonChip({ name, by }: { name: string; by: string }) {\n return (\n <div className=\"flex items-center gap-2.5\">\n <span\n aria-hidden=\"true\"\n className=\"flex h-8 w-8 shrink-0 items-center justify-center rounded-full bg-action-primary-bg/10 text-xs font-semibold text-action-primary-text\"\n >\n {initials(name)}\n </span>\n <div className=\"min-w-0\">\n <p className=\"truncate text-sm text-text-primary\">{name || '—'}</p>\n <p className=\"truncate text-xs text-text-secondary\">by {by}</p>\n </div>\n </div>\n );\n}\n\nfunction daysUntil(dueAt: string): number | null {\n const due = new Date(dueAt);\n if (Number.isNaN(due.getTime())) return null;\n const today = new Date();\n const start = new Date(today.getFullYear(), today.getMonth(), today.getDate());\n const target = new Date(due.getFullYear(), due.getMonth(), due.getDate());\n return Math.round((target.getTime() - start.getTime()) / 86_400_000);\n}\n\nfunction DueChip({ dueAt, status }: { dueAt: string | null; status: AssignmentStatus }) {\n if (status === 'RETURNED' || !dueAt) return null;\n const days = daysUntil(dueAt);\n if (days === null) return null;\n let label: string;\n let tone: string;\n if (days < 0) {\n label = `${-days}d overdue`;\n tone = 'bg-status-error-subtle text-status-error-text';\n } else if (days === 0) {\n label = 'Due today';\n tone = 'bg-status-warning-subtle text-status-warning-text';\n } else if (days <= 3) {\n label = `Due in ${days}d`;\n tone = 'bg-status-warning-subtle text-status-warning-text';\n } else {\n label = `Due in ${days}d`;\n tone = 'bg-bg-sunken text-text-secondary';\n }\n return (\n <span className={cn('inline-flex rounded-full px-2 py-0.5 text-[11px] font-medium', tone)}>\n {label}\n </span>\n );\n}\n\nconst fmtDate = (iso: string | null): string =>\n iso\n ? new Date(iso).toLocaleDateString(undefined, {\n month: 'short',\n day: 'numeric',\n year: 'numeric',\n })\n : '—';\n\ninterface ScannableAsset {\n id: string;\n name: string;\n tagId: string;\n}\n\nexport function AssetsAssetCheckInOutPage() {\n const { assets } = useAssetHandlerStore();\n const apolloClient = useApolloClient();\n const [searchQuery, setSearchQuery] = useState('');\n const [assetId, setAssetId] = useState('');\n const [assignedTo, setAssignedTo] = useState('');\n const [dueAt, setDueAt] = useState('');\n const [notes, setNotes] = useState('');\n\n // Scan-based check-in/out state (BOFF-3950).\n const scanInputRef = useRef<HTMLInputElement>(null);\n const [scanTagId, setScanTagId] = useState('');\n const [scanCheckoutMode, setScanCheckoutMode] = useState(false);\n const [scanAssignee, setScanAssignee] = useState('');\n const [scanDueAt, setScanDueAt] = useState('');\n const [scanNotes, setScanNotes] = useState('');\n const [scanning, setScanning] = useState(false);\n\n const { data, loading, refetch } = useQuery<{ assetAssignments: AssetAssignment[] }>(\n ASSET_ASSIGNMENTS_QUERY,\n { fetchPolicy: 'cache-and-network' }\n );\n\n const [checkOutAsset, { loading: checkingOut }] = useMutation(CHECK_OUT_ASSET_MUTATION, {\n refetchQueries: ['AssetHandlerBootstrap'],\n onCompleted: () => {\n notify.success('Asset checked out', 'The assignment has been recorded.');\n setAssetId('');\n setAssignedTo('');\n setDueAt('');\n setNotes('');\n void refetch();\n },\n onError: (error) => notify.error('Check-out failed', error.message),\n });\n\n const [checkInAsset, { loading: checkingIn }] = useMutation(CHECK_IN_ASSET_MUTATION, {\n refetchQueries: ['AssetHandlerBootstrap'],\n onCompleted: () => {\n notify.success('Asset checked in', 'The asset has been returned.');\n void refetch();\n },\n onError: (error) => notify.error('Check-in failed', error.message),\n });\n\n const [checkOutAssetByTag, { loading: checkingOutByTag }] = useMutation(\n CHECK_OUT_ASSET_BY_TAG_MUTATION,\n {\n refetchQueries: ['AssetHandlerBootstrap'],\n onCompleted: () => {\n notify.success('Asset checked out', 'The assignment has been recorded.');\n resetScanForm();\n void refetch();\n },\n onError: (error) => notify.error('Scan check-out failed', error.message),\n }\n );\n\n const [checkInAssetByTag, { loading: checkingInByTag }] = useMutation(\n CHECK_IN_ASSET_BY_TAG_MUTATION,\n {\n refetchQueries: ['AssetHandlerBootstrap'],\n onCompleted: () => {\n notify.success('Asset checked in', 'The asset has been returned.');\n resetScanForm();\n void refetch();\n },\n onError: (error) => notify.error('Scan check-in failed', error.message),\n }\n );\n\n const assignments = useMemo(() => data?.assetAssignments ?? [], [data]);\n\n const activeCheckouts = assignments.filter((a) => a.status === 'CHECKED_OUT');\n const overdueCheckouts = assignments.filter((a) => a.status === 'OVERDUE');\n const returnedRecords = assignments.filter((a) => a.status === 'RETURNED');\n\n const filteredRecords = assignments.filter(\n (a) =>\n searchQuery === '' ||\n a.assetName.toLowerCase().includes(searchQuery.toLowerCase()) ||\n a.assignedTo.toLowerCase().includes(searchQuery.toLowerCase())\n );\n\n // Status mix (real snapshot counts) — zero slices are dropped by DonutChart.\n const statusMix = [\n { name: 'Checked out', value: activeCheckouts.length, color: STATUS_DONUT_COLOR.CHECKED_OUT },\n { name: 'Overdue', value: overdueCheckouts.length, color: STATUS_DONUT_COLOR.OVERDUE },\n { name: 'Returned', value: returnedRecords.length, color: STATUS_DONUT_COLOR.RETURNED },\n ];\n\n // Checkouts over the last 6 months, bucketed from real checkedOutAt timestamps.\n const checkoutTrend = useMemo(() => {\n const base = new Date();\n const buckets = Array.from({ length: 6 }, (_, i) => {\n const d = new Date(base.getFullYear(), base.getMonth() - (5 - i), 1);\n return {\n key: `${d.getFullYear()}-${d.getMonth()}`,\n label: d.toLocaleDateString(undefined, { month: 'short' }),\n checkouts: 0,\n };\n });\n const index = new Map(buckets.map((b, i) => [b.key, i]));\n for (const a of assignments) {\n const d = new Date(a.checkedOutAt);\n if (Number.isNaN(d.getTime())) continue;\n const i = index.get(`${d.getFullYear()}-${d.getMonth()}`);\n if (i !== undefined) buckets[i].checkouts += 1;\n }\n return buckets;\n }, [assignments]);\n\n const hasTrend = checkoutTrend.some((b) => b.checkouts > 0);\n const hasData = assignments.length > 0;\n\n const activeCheckoutForAsset = (assetId: string): AssetAssignment | undefined =>\n assignments.find((a) => a.assetId === assetId && a.status !== 'RETURNED');\n\n const resetScanForm = () => {\n setScanTagId('');\n setScanCheckoutMode(false);\n setScanAssignee('');\n setScanDueAt('');\n setScanNotes('');\n scanInputRef.current?.focus();\n };\n\n const resolveAssetForScan = async (tagId: string): Promise<ScannableAsset | null> => {\n const localAsset = assets.find(\n (a) => a.tagId === tagId || a.assetTag === tagId || a.id === tagId\n );\n if (localAsset) {\n return { id: localAsset.id, name: localAsset.name, tagId: localAsset.tagId };\n }\n\n try {\n const result = await apolloClient.query<{ assetByTag: ScannableAsset | null }>({\n query: ASSET_BY_TAG_QUERY,\n variables: { tagId },\n fetchPolicy: 'network-only',\n });\n return result.data?.assetByTag ?? null;\n } catch {\n return null;\n }\n };\n\n const executeScanAction = (asset: ScannableAsset) => {\n const activeCheckout = activeCheckoutForAsset(asset.id);\n\n if (scanCheckoutMode) {\n // Already in checkout mode — perform the checkout.\n if (!scanAssignee.trim()) {\n notify.warning('Assignee required', 'Enter who is receiving the asset.');\n return;\n }\n void checkOutAssetByTag({\n variables: {\n input: {\n tagId: asset.tagId,\n assignedTo: scanAssignee.trim(),\n dueAt: scanDueAt ? new Date(scanDueAt).toISOString() : null,\n notes: scanNotes.trim() || null,\n },\n },\n });\n return;\n }\n\n if (activeCheckout) {\n // Asset is currently checked out — check it in.\n void checkInAssetByTag({\n variables: {\n input: {\n tagId: asset.tagId,\n notes: scanNotes.trim() || null,\n },\n },\n });\n return;\n }\n\n // Asset is available — switch to checkout mode.\n setScanCheckoutMode(true);\n notify.info(\n 'Ready to check out',\n `${asset.name} is available. Add assignee details and scan again.`\n );\n };\n\n const submitScan = async (event: React.FormEvent) => {\n event.preventDefault();\n const tagId = scanTagId.trim();\n if (!tagId) {\n notify.warning('Enter a tag', 'Scan or type the asset tag to continue.');\n return;\n }\n\n setScanning(true);\n const asset = await resolveAssetForScan(tagId);\n setScanning(false);\n\n if (!asset) {\n notify.error('Unknown tag', `No asset matched \"${tagId}\".`);\n return;\n }\n\n executeScanAction(asset);\n };\n\n // `/` focuses the scan input from anywhere on the page.\n useEffect(() => {\n const handler = (event: KeyboardEvent) => {\n if (\n event.key === '/' &&\n !['INPUT', 'TEXTAREA'].includes((event.target as HTMLElement)?.tagName)\n ) {\n event.preventDefault();\n scanInputRef.current?.focus();\n }\n };\n window.addEventListener('keydown', handler);\n return () => window.removeEventListener('keydown', handler);\n }, []);\n\n const submitCheckout = (event: React.FormEvent) => {\n event.preventDefault();\n if (!assetId || !assignedTo.trim()) {\n notify.warning('Missing details', 'Choose an asset and who is receiving it.');\n return;\n }\n void checkOutAsset({\n variables: {\n input: {\n assetId,\n assignedTo: assignedTo.trim(),\n dueAt: dueAt ? new Date(dueAt).toISOString() : null,\n notes: notes.trim() || null,\n },\n },\n });\n };\n\n const checkInButton = (rec: AssetAssignment) =>\n rec.status !== 'RETURNED' ? (\n <Button\n size=\"sm\"\n variant=\"outline\"\n disabled={checkingIn}\n onClick={() => void checkInAsset({ variables: { input: { assignmentId: rec.id } } })}\n >\n <ArrowDownToLine className=\"mr-1.5 h-3.5 w-3.5\" />\n Check In\n </Button>\n ) : null;\n\n const renderRecords = (records: AssetAssignment[]) => (\n <GlassCard treatment=\"glass\" className=\"overflow-hidden border-border-seam\">\n {/* Desktop table */}\n <div className=\"hidden overflow-x-auto md:block\">\n <table className=\"w-full text-sm\">\n <thead>\n <tr className=\"border-b border-border-seam bg-bg-sunken/40\">\n <th className=\"p-3 text-left font-medium text-text-secondary\">Asset</th>\n <th className=\"p-3 text-left font-medium text-text-secondary\">Assigned to</th>\n <th className=\"p-3 text-left font-medium text-text-secondary\">Checked out</th>\n <th className=\"p-3 text-left font-medium text-text-secondary\">Due</th>\n <th className=\"p-3 text-left font-medium text-text-secondary\">Returned</th>\n <th className=\"p-3 text-left font-medium text-text-secondary\">Status</th>\n <th className=\"p-3 text-right font-medium text-text-secondary\">Action</th>\n </tr>\n </thead>\n <tbody>\n {records.map((rec) => {\n const overdue = rec.status === 'OVERDUE';\n return (\n <tr\n key={rec.id}\n className={cn(\n 'border-b border-border-seam/70 transition-colors',\n overdue\n ? 'border-l-2 border-l-status-error-text bg-status-error-subtle/50 hover:bg-status-error-subtle'\n : 'hover:bg-bg-sunken/50'\n )}\n >\n <td className=\"p-3\">\n <p className=\"font-medium text-text-primary\">{rec.assetName}</p>\n <p className=\"font-mono text-xs text-text-secondary\">{rec.assetId}</p>\n </td>\n <td className=\"p-3\">\n <PersonChip name={rec.assignedTo} by={rec.assignedBy} />\n </td>\n <td className=\"p-3 text-xs text-text-secondary\">{fmtDate(rec.checkedOutAt)}</td>\n <td className=\"p-3\">\n <div className=\"flex flex-col items-start gap-1\">\n <span className=\"text-xs text-text-secondary\">{fmtDate(rec.dueAt)}</span>\n <DueChip dueAt={rec.dueAt} status={rec.status} />\n </div>\n </td>\n <td className=\"p-3 text-xs text-text-secondary\">{fmtDate(rec.checkedInAt)}</td>\n <td className=\"p-3\">\n <StatusPill status={rec.status} />\n </td>\n <td className=\"p-3 text-right\">{checkInButton(rec)}</td>\n </tr>\n );\n })}\n </tbody>\n </table>\n </div>\n\n {/* Mobile stacked cards */}\n <div className=\"divide-y divide-border-seam md:hidden\">\n {records.map((rec) => {\n const overdue = rec.status === 'OVERDUE';\n const action = checkInButton(rec);\n return (\n <div\n key={rec.id}\n className={cn(\n 'space-y-3 p-4',\n overdue && 'border-l-2 border-l-status-error-text bg-status-error-subtle/40'\n )}\n >\n <div className=\"flex items-start justify-between gap-3\">\n <div className=\"min-w-0\">\n <p className=\"truncate font-medium text-text-primary\">{rec.assetName}</p>\n <p className=\"font-mono text-xs text-text-secondary\">{rec.assetId}</p>\n </div>\n <StatusPill status={rec.status} />\n </div>\n <PersonChip name={rec.assignedTo} by={rec.assignedBy} />\n <div className=\"flex flex-wrap items-center gap-x-4 gap-y-1 text-xs text-text-secondary\">\n <span>Out {fmtDate(rec.checkedOutAt)}</span>\n <span>Due {fmtDate(rec.dueAt)}</span>\n <DueChip dueAt={rec.dueAt} status={rec.status} />\n </div>\n {action ? <div>{action}</div> : null}\n </div>\n );\n })}\n </div>\n\n {records.length === 0 && !loading && (\n <IllustratedEmptyState\n illustration={searchQuery ? 'empty-search' : 'empty-people'}\n title={searchQuery ? 'No matching records' : 'No check-in / out records'}\n description={\n searchQuery\n ? 'No records match your search — try a different name.'\n : 'Check an asset out to someone and the activity will appear here.'\n }\n />\n )}\n {loading && records.length === 0 ? (\n <div className=\"space-y-2 p-4\">\n {Array.from({ length: 4 }).map((_, i) => (\n <div key={i} className=\"h-10 rounded-md bg-bg-sunken motion-safe:animate-vc-shimmer\" />\n ))}\n </div>\n ) : null}\n </GlassCard>\n );\n\n return (\n <div className=\"space-y-6 p-4 sm:p-6\">\n <SectionHeader\n hero\n icon={PackageCheck}\n title=\"Asset Check-In / Check-Out\"\n description=\"Manage asset assignments and returns\"\n />\n\n <PagePurpose>\n Know who has what, right now. Check assets out to people for a job or loan period and check\n them back in on return. Use it to chase overdue items and make sure nothing walks off\n without a trace.\n </PagePurpose>\n\n {/* Uniform KPI band */}\n <div className=\"grid gap-4 sm:grid-cols-2 xl:grid-cols-4\">\n <StatTile\n label=\"Active checkouts\"\n value={activeCheckouts.length}\n icon={ArrowUpFromLine}\n hero\n />\n <StatTile\n label=\"Overdue\"\n value={overdueCheckouts.length}\n icon={AlertTriangle}\n delta={overdueCheckouts.length > 0 ? 'chase now' : undefined}\n deltaTone=\"negative\"\n deltaDirection=\"up\"\n />\n <StatTile label=\"Returned\" value={returnedRecords.length} icon={ArrowDownToLine} />\n <StatTile label=\"Total records\" value={assignments.length} icon={Clock} />\n </div>\n\n <div className=\"grid gap-6 xl:grid-cols-[minmax(0,1fr)_340px]\">\n {/* Main column */}\n <div className=\"min-w-0 space-y-6\">\n {hasData && (\n <div className=\"grid gap-4 lg:grid-cols-2\">\n <ChartCard\n title=\"Custody mix\"\n subtitle=\"Where every record stands right now\"\n icon={PackageCheck}\n >\n <DonutChart\n data={statusMix}\n centerLabel=\"Records\"\n centerValue={assignments.length}\n ariaLabel=\"Custody status mix\"\n />\n </ChartCard>\n <ChartCard\n title=\"Checkouts over time\"\n subtitle=\"Custody activity, last 6 months\"\n icon={ArrowUpFromLine}\n >\n {hasTrend ? (\n <TrendChart\n data={checkoutTrend}\n xKey=\"label\"\n series={[{ key: 'checkouts', label: 'Checkouts' }]}\n height={220}\n ariaLabel=\"Checkouts per month\"\n />\n ) : (\n <div className=\"flex h-[220px] items-center justify-center text-sm text-text-secondary\">\n Not enough dated history yet.\n </div>\n )}\n </ChartCard>\n </div>\n )}\n\n <GlassCard treatment=\"glass\" className=\"border-border-seam\">\n <form className=\"space-y-4 p-5\" onSubmit={submitScan}>\n <div className=\"flex items-center gap-2\">\n <ScanLine className=\"h-4 w-4 text-action-primary-text\" />\n <h2 className=\"text-base font-semibold text-text-primary\">Scan asset tag</h2>\n <span className=\"ml-auto text-xs text-text-secondary\">Press / to focus</span>\n </div>\n\n <div className=\"flex flex-col gap-4 sm:flex-row sm:items-end\">\n <div className=\"relative min-w-0 flex-1\">\n <ScanLine className=\"absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-text-secondary\" />\n <Input\n ref={scanInputRef}\n placeholder=\"Scan or type asset tag…\"\n value={scanTagId}\n onChange={(e) => setScanTagId(e.target.value)}\n className=\"pl-9\"\n autoFocus\n />\n </div>\n <Button\n type=\"submit\"\n disabled={checkingOutByTag || checkingInByTag || scanning}\n className=\"w-full sm:w-auto\"\n >\n <ScanLine className=\"mr-2 h-4 w-4\" />\n {checkingOutByTag || checkingInByTag || scanning\n ? 'Processing…'\n : scanCheckoutMode\n ? 'Check Out'\n : 'Scan'}\n </Button>\n </div>\n\n {scanCheckoutMode && (\n <div className=\"grid gap-4 sm:grid-cols-3\">\n <div className=\"space-y-1.5\">\n <Label htmlFor=\"scan-assignee\">Assign to</Label>\n <Input\n id=\"scan-assignee\"\n placeholder=\"Name or email\"\n value={scanAssignee}\n onChange={(e) => setScanAssignee(e.target.value)}\n />\n </div>\n <div className=\"space-y-1.5\">\n <Label htmlFor=\"scan-due\">Due date</Label>\n <Input\n id=\"scan-due\"\n type=\"date\"\n value={scanDueAt}\n onChange={(e) => setScanDueAt(e.target.value)}\n />\n </div>\n <div className=\"space-y-1.5\">\n <Label htmlFor=\"scan-notes\">Notes</Label>\n <Input\n id=\"scan-notes\"\n placeholder=\"Optional notes\"\n value={scanNotes}\n onChange={(e) => setScanNotes(e.target.value)}\n />\n </div>\n </div>\n )}\n\n {scanCheckoutMode && (\n <div className=\"flex items-center gap-2 text-xs text-text-secondary\">\n <button\n type=\"button\"\n className=\"text-action-primary-text hover:underline\"\n onClick={resetScanForm}\n >\n Cancel\n </button>\n <span>to start over.</span>\n </div>\n )}\n </form>\n </GlassCard>\n\n <div className=\"relative max-w-md\">\n <Search className=\"absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-text-secondary\" />\n <Input\n placeholder=\"Search by asset or person…\"\n value={searchQuery}\n onChange={(e) => setSearchQuery(e.target.value)}\n className=\"pl-9\"\n />\n </div>\n\n <Tabs defaultValue=\"all\">\n <TabsList className=\"max-w-full justify-start overflow-x-auto\">\n <TabsTrigger value=\"all\">All ({filteredRecords.length})</TabsTrigger>\n <TabsTrigger value=\"active\">Active ({activeCheckouts.length})</TabsTrigger>\n <TabsTrigger value=\"overdue\">Overdue ({overdueCheckouts.length})</TabsTrigger>\n <TabsTrigger value=\"returned\">Returned ({returnedRecords.length})</TabsTrigger>\n </TabsList>\n {(\n [\n ['all', null],\n ['active', 'CHECKED_OUT'],\n ['overdue', 'OVERDUE'],\n ['returned', 'RETURNED'],\n ] as const\n ).map(([tab, status]) => {\n const records =\n status === null\n ? filteredRecords\n : filteredRecords.filter((r) => r.status === status);\n return (\n <TabsContent key={tab} value={tab} className=\"mt-4\">\n {renderRecords(records)}\n </TabsContent>\n );\n })}\n </Tabs>\n </div>\n\n {/* Persistent check-out rail */}\n <aside className=\"xl:sticky xl:top-4 xl:h-fit\">\n <GlassCard treatment=\"glass\" className=\"border-border-seam\">\n <form className=\"space-y-4 p-5\" onSubmit={submitCheckout}>\n <div className=\"flex items-center gap-2\">\n <ArrowUpFromLine className=\"h-4 w-4 text-action-primary-text\" />\n <h2 className=\"text-base font-semibold text-text-primary\">Check out an asset</h2>\n </div>\n\n <div className=\"space-y-1.5\">\n <Label htmlFor=\"checkout-asset\">Asset</Label>\n <Select value={assetId} onValueChange={setAssetId}>\n <SelectTrigger id=\"checkout-asset\" className=\"w-full\">\n <SelectValue placeholder=\"Select an asset…\" />\n </SelectTrigger>\n <SelectContent>\n {assets.map((asset) => (\n <SelectItem key={asset.id} value={asset.id}>\n {asset.name} ({asset.assetTag})\n </SelectItem>\n ))}\n </SelectContent>\n </Select>\n </div>\n\n <div className=\"space-y-1.5\">\n <Label htmlFor=\"checkout-assignee\">Assign to</Label>\n <Input\n id=\"checkout-assignee\"\n placeholder=\"Name or email\"\n value={assignedTo}\n onChange={(event) => setAssignedTo(event.target.value)}\n />\n </div>\n\n <div className=\"space-y-1.5\">\n <Label htmlFor=\"checkout-due\">Due date</Label>\n <Input\n id=\"checkout-due\"\n type=\"date\"\n value={dueAt}\n onChange={(event) => setDueAt(event.target.value)}\n />\n </div>\n\n <div className=\"space-y-1.5\">\n <Label htmlFor=\"checkout-notes\">Notes</Label>\n <Textarea\n id=\"checkout-notes\"\n placeholder=\"Optional context for this checkout…\"\n rows={3}\n value={notes}\n onChange={(event) => setNotes(event.target.value)}\n />\n </div>\n\n <Button type=\"submit\" className=\"w-full\" disabled={checkingOut}>\n <ArrowUpFromLine className=\"mr-2 h-4 w-4\" />\n {checkingOut ? 'Checking out…' : 'Check Out Asset'}\n </Button>\n </form>\n </GlassCard>\n </aside>\n </div>\n </div>\n );\n}\n"],"mappings":"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"}
@@ -424,8 +424,8 @@ export declare function useGetSandboxQuery(baseOptions: ApolloReactHooks.QueryHo
424
424
  skip?: boolean;
425
425
  } | {
426
426
  skip: boolean;
427
- })): ApolloReactHooks.useQuery.Result<Types.GetSandboxQuery, Types.GetSandboxQueryVariables, "empty" | "complete" | "streaming", Types.GetSandboxQueryVariables>;
428
- export declare function useGetSandboxLazyQuery(baseOptions?: ApolloReactHooks.LazyQueryHookOptions<Types.GetSandboxQuery, Types.GetSandboxQueryVariables>): ApolloReactHooks.useLazyQuery.ResultTuple<Types.GetSandboxQuery, Types.GetSandboxQueryVariables, "empty" | "complete" | "streaming">;
427
+ })): ApolloReactHooks.useQuery.Result<Types.GetSandboxQuery, Types.GetSandboxQueryVariables, "empty" | "complete" | "streaming", Types.GetSandboxQueryVariables, undefined>;
428
+ export declare function useGetSandboxLazyQuery(baseOptions?: ApolloReactHooks.LazyQueryHookOptions<Types.GetSandboxQuery, Types.GetSandboxQueryVariables>): ApolloReactHooks.useLazyQuery.ResultTuple<Types.GetSandboxQuery, Types.GetSandboxQueryVariables, "empty" | "complete" | "streaming", undefined>;
429
429
  export declare function useGetSandboxSuspenseQuery(baseOptions?: ApolloReactHooks.SuspenseQueryHookOptions<Types.GetSandboxQuery, Types.GetSandboxQueryVariables>): ApolloReactHooks.UseSuspenseQueryResult<Types.GetSandboxQuery, Types.GetSandboxQueryVariables>;
430
430
  export declare function useGetSandboxSuspenseQuery(baseOptions?: ApolloReactHooks.SkipToken | ApolloReactHooks.SuspenseQueryHookOptions<Types.GetSandboxQuery, Types.GetSandboxQueryVariables>): ApolloReactHooks.UseSuspenseQueryResult<Types.GetSandboxQuery | undefined, Types.GetSandboxQueryVariables>;
431
431
  export type GetSandboxQueryHookResult = ReturnType<typeof useGetSandboxQuery>;
@@ -454,8 +454,8 @@ export declare function useGetActiveSandboxesQuery(baseOptions: ApolloReactHooks
454
454
  skip?: boolean;
455
455
  } | {
456
456
  skip: boolean;
457
- })): ApolloReactHooks.useQuery.Result<Types.GetActiveSandboxesQuery, Types.GetActiveSandboxesQueryVariables, "empty" | "complete" | "streaming", Types.GetActiveSandboxesQueryVariables>;
458
- export declare function useGetActiveSandboxesLazyQuery(baseOptions?: ApolloReactHooks.LazyQueryHookOptions<Types.GetActiveSandboxesQuery, Types.GetActiveSandboxesQueryVariables>): ApolloReactHooks.useLazyQuery.ResultTuple<Types.GetActiveSandboxesQuery, Types.GetActiveSandboxesQueryVariables, "empty" | "complete" | "streaming">;
457
+ })): ApolloReactHooks.useQuery.Result<Types.GetActiveSandboxesQuery, Types.GetActiveSandboxesQueryVariables, "empty" | "complete" | "streaming", Types.GetActiveSandboxesQueryVariables, undefined>;
458
+ export declare function useGetActiveSandboxesLazyQuery(baseOptions?: ApolloReactHooks.LazyQueryHookOptions<Types.GetActiveSandboxesQuery, Types.GetActiveSandboxesQueryVariables>): ApolloReactHooks.useLazyQuery.ResultTuple<Types.GetActiveSandboxesQuery, Types.GetActiveSandboxesQueryVariables, "empty" | "complete" | "streaming", undefined>;
459
459
  export declare function useGetActiveSandboxesSuspenseQuery(baseOptions?: ApolloReactHooks.SuspenseQueryHookOptions<Types.GetActiveSandboxesQuery, Types.GetActiveSandboxesQueryVariables>): ApolloReactHooks.UseSuspenseQueryResult<Types.GetActiveSandboxesQuery, Types.GetActiveSandboxesQueryVariables>;
460
460
  export declare function useGetActiveSandboxesSuspenseQuery(baseOptions?: ApolloReactHooks.SkipToken | ApolloReactHooks.SuspenseQueryHookOptions<Types.GetActiveSandboxesQuery, Types.GetActiveSandboxesQueryVariables>): ApolloReactHooks.UseSuspenseQueryResult<Types.GetActiveSandboxesQuery | undefined, Types.GetActiveSandboxesQueryVariables>;
461
461
  export type GetActiveSandboxesQueryHookResult = ReturnType<typeof useGetActiveSandboxesQuery>;
@@ -478,8 +478,8 @@ export declare const AssetHandlerBootstrapDocument: Apollo.DocumentNode;
478
478
  * },
479
479
  * });
480
480
  */
481
- export declare function useAssetHandlerBootstrapQuery(baseOptions?: ApolloReactHooks.QueryHookOptions<Types.AssetHandlerBootstrapQuery, Types.AssetHandlerBootstrapQueryVariables>): ApolloReactHooks.useQuery.Result<Types.AssetHandlerBootstrapQuery, Types.AssetHandlerBootstrapQueryVariables, "empty" | "complete" | "streaming", Types.AssetHandlerBootstrapQueryVariables>;
482
- export declare function useAssetHandlerBootstrapLazyQuery(baseOptions?: ApolloReactHooks.LazyQueryHookOptions<Types.AssetHandlerBootstrapQuery, Types.AssetHandlerBootstrapQueryVariables>): ApolloReactHooks.useLazyQuery.ResultTuple<Types.AssetHandlerBootstrapQuery, Types.AssetHandlerBootstrapQueryVariables, "empty" | "complete" | "streaming">;
481
+ export declare function useAssetHandlerBootstrapQuery(baseOptions?: ApolloReactHooks.QueryHookOptions<Types.AssetHandlerBootstrapQuery, Types.AssetHandlerBootstrapQueryVariables>): ApolloReactHooks.useQuery.Result<Types.AssetHandlerBootstrapQuery, Types.AssetHandlerBootstrapQueryVariables, "empty" | "complete" | "streaming", Types.AssetHandlerBootstrapQueryVariables, undefined>;
482
+ export declare function useAssetHandlerBootstrapLazyQuery(baseOptions?: ApolloReactHooks.LazyQueryHookOptions<Types.AssetHandlerBootstrapQuery, Types.AssetHandlerBootstrapQueryVariables>): ApolloReactHooks.useLazyQuery.ResultTuple<Types.AssetHandlerBootstrapQuery, Types.AssetHandlerBootstrapQueryVariables, "empty" | "complete" | "streaming", undefined>;
483
483
  export declare function useAssetHandlerBootstrapSuspenseQuery(baseOptions?: ApolloReactHooks.SuspenseQueryHookOptions<Types.AssetHandlerBootstrapQuery, Types.AssetHandlerBootstrapQueryVariables>): ApolloReactHooks.UseSuspenseQueryResult<Types.AssetHandlerBootstrapQuery, Types.AssetHandlerBootstrapQueryVariables>;
484
484
  export declare function useAssetHandlerBootstrapSuspenseQuery(baseOptions?: ApolloReactHooks.SkipToken | ApolloReactHooks.SuspenseQueryHookOptions<Types.AssetHandlerBootstrapQuery, Types.AssetHandlerBootstrapQueryVariables>): ApolloReactHooks.UseSuspenseQueryResult<Types.AssetHandlerBootstrapQuery | undefined, Types.AssetHandlerBootstrapQueryVariables>;
485
485
  export type AssetHandlerBootstrapQueryHookResult = ReturnType<typeof useAssetHandlerBootstrapQuery>;
@@ -1 +1 @@
1
- {"version":3,"file":"wspace-operations.d.ts","sourceRoot":"","sources":["../../src/generated/wspace-operations.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"wspace-operations.d.ts","sourceRoot":"","sources":["../../src/generated/wspace-operations.ts"],"names":[],"mappings":"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"}