fix: add missing ebay parts visibility helper module

This commit is contained in:
DMleadgen 2026-04-16 16:18:31 -06:00
parent 23f1ed6297
commit 5d3ee2c4d7
Signed by: matt
GPG key ID: C2720CF8CD701894

View file

@ -0,0 +1,43 @@
import type { EbayCacheState } from "@/lib/ebay-parts-match"
type PartLike = {
ebayListings?: Array<unknown>
}
const HIDDEN_CACHE_STATUSES = new Set([
"rate_limited",
"missing_config",
"disabled",
"error",
])
export function hasTrustedPartsListings(parts: PartLike[]) {
return parts.some((part) => (part.ebayListings || []).length > 0)
}
export function shouldShowEbayPartsPanel(args: {
isLoading: boolean
parts: PartLike[]
cache: EbayCacheState | null
error: string | null
}) {
if (args.isLoading) {
return true
}
const hasListings = hasTrustedPartsListings(args.parts)
if (hasListings) {
return true
}
const status = args.cache?.status || "idle"
if (HIDDEN_CACHE_STATUSES.has(status)) {
return false
}
if (args.error) {
return false
}
return false
}