Skip to content

Commit 39bbc21

Browse files
committed
fix(material): avoid random animation
Closes #290
1 parent 55b070c commit 39bbc21

File tree

1 file changed

+19
-6
lines changed

1 file changed

+19
-6
lines changed

packages/material/src/LinearProgress/LinearProgress.tsx

+19-6
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,13 @@ import { redefine } from "@suid/system/createStyled";
1212
import { InPropsOf } from "@suid/types";
1313
import randomString from "@suid/utils/randomString";
1414
import clsx from "clsx";
15-
import { createEffect, createSignal, JSX, Show } from "solid-js";
15+
import {
16+
createEffect,
17+
createRenderEffect,
18+
createSignal,
19+
JSX,
20+
Show,
21+
} from "solid-js";
1622

1723
const $ = createComponentFactory<LinearProgressTypeMap>()({
1824
name: "MuiLinearProgress",
@@ -302,11 +308,6 @@ const LinearProgress = $.component(function LinearProgress({
302308
element.ref.ariaValueNow = Math.round(props.value).toString();
303309
element.ref.ariaValueMin = "0";
304310
element.ref.ariaValueMax = "100";
305-
let transform = props.value - 100;
306-
if (theme.direction === "rtl") {
307-
transform = -transform;
308-
}
309-
setBar1Style({ transform: `translateX(${transform}%)` });
310311
} else if (process.env.NODE_ENV !== "production") {
311312
console.error(
312313
"MUI: You need to provide a value prop " +
@@ -316,6 +317,18 @@ const LinearProgress = $.component(function LinearProgress({
316317
}
317318
});
318319

320+
createRenderEffect(() => {
321+
if (props.variant === "determinate" || props.variant === "buffer") {
322+
if (props.value !== undefined) {
323+
let transform = props.value - 100;
324+
if (theme.direction === "rtl") {
325+
transform = -transform;
326+
}
327+
setBar1Style({ transform: `translateX(${transform}%)` });
328+
}
329+
}
330+
});
331+
319332
createEffect(() => {
320333
if (props.variant === "buffer") {
321334
if (props.valueBuffer !== undefined) {

0 commit comments

Comments
 (0)