History

Merge remote-tracking branch 'origin/codex/batch14-react-chart-payload-guard' into codex/effect-lint-integration

Rhys Sullivan committed 6 months ago

Commit abe685b2 parents 9b540fd 9e84f991 file · +9 −10Browse files

Unified · Split

packages/react/src/components/chart.tsx+9−10
@@ -303,26 +303,25 @@ function ChartLegendContent({ · 302 unmodified lines
303}303}
304 304
305// Helper to extract item config from a payload.305// Helper to extract item config from a payload.
306const isRecord = (value: unknown): value is Record<string, unknown> =>
307 typeof value === "object" && value !== null && !Array.isArray(value);
308
306function getPayloadConfigFromPayload(config: ChartConfig, payload: unknown, key: string) {309function getPayloadConfigFromPayload(config: ChartConfig, payload: unknown, key: string) {
307 if (typeof payload !== "object" || payload === null) {310 if (!isRecord(payload)) {
308 return undefined;311 return undefined;
309 }312 }
310 313
311 const payloadPayload =314 const payloadPayload = isRecord(payload.payload) ? payload.payload : undefined;
312 "payload" in payload && typeof payload.payload === "object" && payload.payload !== null
313 ? payload.payload
314 : undefined;
315 315
316 let configLabelKey: string = key;316 let configLabelKey: string = key;
317 317
318 if (key in payload && typeof payload[key as keyof typeof payload] === "string") {318 if (typeof payload[key] === "string") {
319 configLabelKey = payload[key as keyof typeof payload] as string;319 configLabelKey = payload[key];
320 } else if (320 } else if (
321 payloadPayload &&321 payloadPayload &&
322 key in payloadPayload &&322 typeof payloadPayload[key] === "string"
323 typeof payloadPayload[key as keyof typeof payloadPayload] === "string"
324 ) {323 ) {
325 configLabelKey = payloadPayload[key as keyof typeof payloadPayload] as string;324 configLabelKey = payloadPayload[key];
326 }325 }
327 326
328 return configLabelKey in config ? config[configLabelKey] : config[key];327 return configLabelKey in config ? config[configLabelKey] : config[key];

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t