Skip to content

Commit 8d2ac67

Browse files
authored
Merge pull request #183 from forumone/156-next-and-react-update
[156] Update to Next.js 15 and React 19
2 parents 56a8c5e + fc7c58f commit 8d2ac67

File tree

48 files changed

+561
-877
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

48 files changed

+561
-877
lines changed

next-env.d.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,4 @@
22
/// <reference types="next/image-types/global" />
33

44
// NOTE: This file should not be edited
5-
// see https://nextjs.org/docs/app/building-your-application/configuring/typescript for more information.
5+
// see https://nextjs.org/docs/app/api-reference/config/typescript for more information.

package-lock.json

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

package.json

Lines changed: 19 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -24,36 +24,36 @@
2424
">= 1% in US"
2525
],
2626
"dependencies": {
27-
"next": "^14.2.24",
28-
"react": "^18.3.1",
29-
"react-dom": "^18.3.1",
27+
"next": "15.2.2",
28+
"react": "19.0.0",
29+
"react-dom": "19.0.0",
3030
"react-select": "^5.10.1"
3131
},
3232
"devDependencies": {
3333
"@csstools/postcss-global-data": "^3.0.0",
34-
"@storybook/addon-a11y": "^8.6.3",
35-
"@storybook/addon-actions": "^8.6.3",
36-
"@storybook/addon-essentials": "^8.6.3",
37-
"@storybook/addon-interactions": "^8.6.3",
38-
"@storybook/addon-links": "^8.6.3",
39-
"@storybook/nextjs": "^8.6.3",
40-
"@storybook/react": "^8.6.3",
41-
"@storybook/test": "^8.6.3",
42-
"@storybook/theming": "^8.6.3",
34+
"@storybook/addon-a11y": "^8.6.6",
35+
"@storybook/addon-actions": "^8.6.6",
36+
"@storybook/addon-essentials": "^8.6.6",
37+
"@storybook/addon-interactions": "^8.6.6",
38+
"@storybook/addon-links": "^8.6.6",
39+
"@storybook/nextjs": "^8.6.6",
40+
"@storybook/react": "^8.6.6",
41+
"@storybook/test": "^8.6.6",
42+
"@storybook/theming": "^8.6.6",
4343
"@svgr/babel-plugin-add-jsx-attribute": "^8.0.0",
4444
"@svgr/babel-plugin-remove-jsx-attribute": "^8.0.0",
4545
"@svgr/cli": "^8.1.0",
4646
"@types/node": "^20.17.22",
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
"@typescript-eslint/eslint-plugin": "^8.25.0",
5050
"@typescript-eslint/parser": "^8.25.0",
5151
"clsx": "^2.1.1",
5252
"css-loader": "^7.1.2",
5353
"csstype": "3.1.3",
5454
"enhanced-resolve": "^5.18.1",
5555
"eslint": "^8.57.1",
56-
"eslint-config-next": "^14.2.24",
56+
"eslint-config-next": "15.2.2",
5757
"eslint-config-prettier": "^9.1.0",
5858
"eslint-plugin-prettier": "^5.2.3",
5959
"html-react-parser": "^5.2.2",
@@ -69,7 +69,7 @@
6969
"postcss-rem": "^3.0.0",
7070
"prettier": "^3.5.3",
7171
"prettier-plugin-organize-imports": "^4.1.0",
72-
"storybook": "^8.6.3",
72+
"storybook": "^8.6.6",
7373
"style-loader": "^4.0.0",
7474
"stylelint": "^16.15.0",
7575
"stylelint-config-standard": "^36.0.1",
@@ -79,6 +79,8 @@
7979
"yaml": "^2.7.0"
8080
},
8181
"overrides": {
82-
"csstype": "3.1.3"
82+
"csstype": "3.1.3",
83+
"@types/react": "19.0.10",
84+
"@types/react-dom": "19.0.4"
8385
}
8486
}

source/01-global/00-colors/color.stories.tsx

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,8 @@ import { withGlobalWrapper } from '../../../.storybook/decorators';
33
import getCssVariables from '../../06-utility/storybook/getCssVariables';
44
import styles from './color.module.css';
55

6+
import type { JSX } from 'react';
7+
68
interface ColorItem {
79
name: string;
810
value: string;

source/01-global/03-box-shadow/shadows.stories.tsx

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,8 @@ import { withGlobalWrapper } from '../../../.storybook/decorators';
44
import getCssVariables from '../../06-utility/storybook/getCssVariables';
55
import styles from './shadows.module.css';
66

7+
import type { JSX } from 'react';
8+
79
interface BoxShadowOptions {
810
[elevation: number]: Property.BoxShadow;
911
}

source/01-global/html-elements/16-blockquote/blockquote.stories.tsx

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
import { Meta, StoryObj } from '@storybook/react';
22
import { withGlobalWrapper } from '../../../../.storybook/decorators';
33

4+
import type { JSX } from 'react';
5+
46
const meta: Meta = {
57
title: 'Global/HTML Elements/Blockquote',
68
decorators: [withGlobalWrapper],

source/02-layouts/Grid/Grid.stories.tsx

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,8 @@ import SampleContent from '../../06-utility/storybook/SampleContent';
33
import GridLayout from './Grid';
44
import gridArgs from './gridArgs';
55

6+
import type { JSX } from 'react';
7+
68
function GridDemo(): JSX.Element {
79
const arr = Array.from(Array(6).keys());
810
return (

source/02-layouts/Grid/Grid.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import clsx from 'clsx';
22
import { GessoComponent } from 'gesso';
3-
import { ReactNode } from 'react';
3+
import { ReactNode, type JSX } from 'react';
44
import styles from './grid.module.css';
55

66
interface GridProps extends GessoComponent {

source/03-components/Accordion/Accordion.tsx

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,14 @@
22

33
import clsx from 'clsx';
44
import { GessoComponent } from 'gesso';
5-
import { JSX, KeyboardEvent, createRef, useId, useMemo, useState } from 'react';
5+
import React, {
6+
JSX,
7+
KeyboardEvent,
8+
createRef,
9+
useId,
10+
useMemo,
11+
useState,
12+
} from 'react';
613
import getCssVar from '../../06-utility/getCssVar';
714
import AccordionItem, { AccordionItemProps } from './AccordionItem';
815
import styles from './accordion.module.css';
@@ -38,7 +45,8 @@ function Accordion({
3845
})),
3946
);
4047
const accordionItemRefs = useMemo(() => {
41-
const refs: { [key: string]: React.RefObject<HTMLButtonElement> } = {};
48+
const refs: { [key: string]: React.RefObject<HTMLButtonElement | null> } =
49+
{};
4250
accordionItemsStatus.forEach(item => (refs[item.id] = createRef()));
4351
return refs;
4452
}, [accordionItemsStatus]);

source/03-components/Accordion/AccordionItem.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ interface AccordionItemProps extends GessoComponent {
2020
isOpen?: boolean;
2121
isStepList?: boolean;
2222
accordionSpeed?: string;
23-
toggleRef?: RefObject<HTMLButtonElement>;
23+
toggleRef?: RefObject<HTMLButtonElement | null>;
2424
handleClick?: MouseEventHandler;
2525
}
2626

0 commit comments

Comments
 (0)