fix the four typecheck errors that broke the build
`npm run build` runs `tsc --noEmit` first, so all four stopped the deploy before vite ever ran. They came in with the redesign commit. KpiCard: the note pill was removed from the tile but `note` was still destructured, and `noUnusedLocals` rejects that. The prop stays declared — 87 call sites across 21 files pass it — and is now documented as accepted and ignored, the same way `fill` already was. Those 87 strings are written and never shown; the comment says so rather than leaving it a puzzle. InventoryPage: dropped an unused SectionHeader import, and `colour` is not a BadgeProps field. The intent was a brand-coloured "In transit", so that is now `variant="purple"` — a real variant in BadgeVariantMap, and the brand is purple. StoreAccountPage: `current` is a BRANCH, and `gettenantlocations` sends no tenantname on it (checked on the wire against tenant 1147). So the second half of `shopQuery.data?.tenantname || current?.tenantname` could never fire. Removed rather than added to the type — a field the backend does not send is exactly the bug the previous commit fixed on the summary endpoints. Verified: tsc clean, 625 tests pass, vite build clean, and the lock file installs under `npm@10.9.8 ci` — the builder's npm, which the image pins. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01JYEsb8PNZ19G9R8gUjTU7n
This commit is contained in:
@@ -19,8 +19,17 @@ export interface KpiCardProps {
|
||||
label: string;
|
||||
value: string;
|
||||
/**
|
||||
* The sub-pill. This is where the number gets its meaning — "1 of 84 orders"
|
||||
* says something "1.2%" does not.
|
||||
* Accepted and ignored, like `fill` below.
|
||||
*
|
||||
* This was the sub-pill — where the number got its meaning, since "1 of 84
|
||||
* orders" says something "1.2%" does not. The pill was removed from the tile
|
||||
* deliberately; 87 call sites across 21 files still pass the text, so the
|
||||
* prop stays declared to keep them compiling and is not read.
|
||||
*
|
||||
* That means every one of those 87 strings is now written and never shown.
|
||||
* Either drop them from the callers or bring the pill back — right now it is
|
||||
* neither, and this comment is here so that is visible rather than a puzzle
|
||||
* for whoever next wonders where "84 orders" went.
|
||||
*/
|
||||
note?: string;
|
||||
tone?: KpiTone;
|
||||
@@ -39,11 +48,12 @@ export interface KpiCardProps {
|
||||
/**
|
||||
* A KPI tile.
|
||||
*
|
||||
* Label and icon, a large tabular value, a muted sub-pill carrying the
|
||||
* interpretation, and a 2px underline in the tile's tone. Sized to sit 4–6
|
||||
* Label and icon, then a large tabular value. The sub-pill and the 2px tone
|
||||
* underline were both removed from the tile; `note` and `fill` still arrive
|
||||
* from the call sites and are ignored — see the props above. Sized to sit 4–6
|
||||
* across rather than 4 — a console is glanced at all day, not read once.
|
||||
*/
|
||||
export function KpiCard({ label, value, note, tone = 'neutral', icon }: KpiCardProps) {
|
||||
export function KpiCard({ label, value, tone = 'neutral', icon }: KpiCardProps) {
|
||||
const color = TONE_COLOR[tone];
|
||||
|
||||
return (
|
||||
|
||||
Reference in New Issue
Block a user