Skip to content

Commit c2189b3

Browse files
committed
Update to react v19
1 parent 9f4f20e commit c2189b3

File tree

6 files changed

+97
-79
lines changed

6 files changed

+97
-79
lines changed

package-lock.json

Lines changed: 79 additions & 65 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,8 @@
2424
"lodash.isequal": "4.5.0",
2525
"lodash.sortby": "4.7.0",
2626
"quantize": "1.0.2",
27-
"react": "18.3.1",
28-
"react-dom": "18.3.1",
27+
"react": "19.0.0",
28+
"react-dom": "19.0.0",
2929
"react-redux": "8.1.3",
3030
"react-router": "6.27.0",
3131
"react-router-dom": "6.27.0",
@@ -35,7 +35,7 @@
3535
},
3636
"devDependencies": {
3737
"@eslint/js": "9.22.0",
38-
"@miikaah/musa-core": "10.4.8",
38+
"@miikaah/musa-core": "10.6.1",
3939
"@testing-library/dom": "10.4.0",
4040
"@testing-library/jest-dom": "6.6.3",
4141
"@testing-library/react": "16.2.0",
@@ -44,8 +44,8 @@
4444
"@types/lodash.sortby": "4.7.9",
4545
"@types/node": "22.13.10",
4646
"@types/quantize": "1.0.2",
47-
"@types/react": "18.3.18",
48-
"@types/react-dom": "18.3.5",
47+
"@types/react": "19.0.10",
48+
"@types/react-dom": "19.0.4",
4949
"@types/react-redux": "7.1.34",
5050
"@typescript-eslint/eslint-plugin": "8.26.1",
5151
"@typescript-eslint/parser": "8.26.1",

src/components/AlbumImage/AlbumImage.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,7 @@ const AlbumImage = ({ item, animate = true }: AlbumImageProps) => {
7272
<Image
7373
alt="Album image"
7474
animate={animate}
75-
src={getSrc(src)}
75+
src={getSrc(src) || undefined}
7676
draggable={false}
7777
/>
7878
);

src/components/Cover/Cover.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,7 @@ const Wrapper = styled.div`
8181
const Image = styled.img.attrs<{
8282
maxHeight: number;
8383
isCoverLoaded: boolean;
84-
src: string;
84+
src: string | undefined;
8585
scaleDownImage: boolean;
8686
isMobile: boolean;
8787
}>(({ maxHeight, isCoverLoaded, src, scaleDownImage, isMobile }) => ({
@@ -546,7 +546,7 @@ const Cover = ({ currentItem, coverData, currentTheme }: CoverProps) => {
546546
<>
547547
<Image
548548
id="albumCover"
549-
src={cleanUrl(src)}
549+
src={cleanUrl(src) || undefined}
550550
ref={coverRef}
551551
crossOrigin=""
552552
maxHeight={coverData.maxHeight}

src/hooks/useAnimationFrame.ts

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import { useEffect, useRef } from "react";
22

33
export const useAnimationFrame = (callback: () => void) => {
4-
const requestRef = useRef<number>();
4+
const requestRef = useRef<number>(null);
55

66
useEffect(() => {
77
const animate = () => {
@@ -10,7 +10,10 @@ export const useAnimationFrame = (callback: () => void) => {
1010
};
1111

1212
requestRef.current = requestAnimationFrame(animate);
13-
// @ts-expect-error it can not be undefined
14-
return () => cancelAnimationFrame(requestRef.current);
13+
return () => {
14+
if (requestRef && requestRef.current) {
15+
cancelAnimationFrame(requestRef.current);
16+
}
17+
};
1518
}, [callback]);
1619
};

src/hooks/useInterval.ts

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ import { useEffect, useRef } from "react";
22

33
// See: https://overreacted.io/making-setinterval-declarative-with-react-hooks/
44
export const useInterval = (callback: () => void, delay: number) => {
5-
const savedCallback = useRef<() => void>();
5+
const savedCallback = useRef<() => void>(null);
66

77
// Remember the latest callback.
88
useEffect(() => {
@@ -12,8 +12,9 @@ export const useInterval = (callback: () => void, delay: number) => {
1212
// Set up the interval.
1313
useEffect(() => {
1414
function tick() {
15-
// @ts-expect-error it can not be undefined
16-
savedCallback.current();
15+
if (savedCallback && savedCallback.current) {
16+
savedCallback.current();
17+
}
1718
}
1819
if (delay !== null) {
1920
let id = setInterval(tick, delay);

0 commit comments

Comments
 (0)