Fix Progress zero value bug
This commit is contained in:
parent
21a7991562
commit
c5b7260e6d
@ -40,17 +40,18 @@ export function Progress(props: ProgressProps): JSX.Element {
|
|||||||
};
|
};
|
||||||
|
|
||||||
const valueNow = (): number | undefined => {
|
const valueNow = (): number | undefined => {
|
||||||
return isIndeterminate() ? undefined : currentValue() || undefined;
|
const v = currentValue();
|
||||||
|
return isIndeterminate() || v === null ? undefined : v;
|
||||||
};
|
};
|
||||||
|
|
||||||
const dataValue = (): number | undefined => {
|
const dataValue = (): number | undefined => {
|
||||||
return isIndeterminate() ? undefined : currentValue() || undefined;
|
const v = currentValue();
|
||||||
|
return isIndeterminate() || v === null ? undefined : v;
|
||||||
};
|
};
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div
|
<div
|
||||||
role="progressbar"
|
role="progressbar"
|
||||||
tabIndex={-1}
|
|
||||||
aria-valuemin={0}
|
aria-valuemin={0}
|
||||||
aria-valuemax={max()}
|
aria-valuemax={max()}
|
||||||
aria-valuenow={valueNow()}
|
aria-valuenow={valueNow()}
|
||||||
|
|||||||
@ -48,4 +48,10 @@ describe("Progress", () => {
|
|||||||
render(() => <Progress value={75} />);
|
render(() => <Progress value={75} />);
|
||||||
expect(screen.getByRole("progressbar").getAttribute("data-state")).toBe("complete");
|
expect(screen.getByRole("progressbar").getAttribute("data-state")).toBe("complete");
|
||||||
});
|
});
|
||||||
|
|
||||||
|
it("sets aria-valuenow=0 when value is zero", () => {
|
||||||
|
render(() => <Progress value={0} />);
|
||||||
|
expect(screen.getByRole("progressbar").getAttribute("aria-valuenow")).toBe("0");
|
||||||
|
expect(screen.getByRole("progressbar").getAttribute("data-state")).toBe("complete");
|
||||||
|
});
|
||||||
});
|
});
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user