diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index be4c5bda..e52e6364 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -2,7 +2,7 @@ Thank you for taking the time to contribute! -We ❤️ our contributors and strive to give back more than we get. Have feedback on how we can improve? Questions, insight, or other concerns? We invite you to share in our [this anonymous form](https://forms.gle/v2whmf4XX3du4Y3t9). +We ❤️ our contributors and strive to give back more than we get. Have feedback on how we can improve? Questions, insight, or other concerns? We invite you to share in our [this anonymous form](https://forms.gle/v2whmf4XX3du4Y3t9). Do you want to make a greater impact with Chayn and receive special access to our organization and volunteer opportunities? Please visit our [visit our Getting Involved Guide](https://www.chayn.co/get-involved) to get started! Don't forget to star this repository ⭐ so we can find more contributors like you! @@ -21,7 +21,6 @@ Do you want to make a greater impact with Chayn and receive special access to ou 6. [Push Changes to GitHub](#6-push-changes-to-github) 7. [Make a Pull Request to Chayn](#7--make-a-pull-request-to-chayn) - # Prerequisites If you are new to GitHub and git version control, here are some resources to help you get started: @@ -50,7 +49,7 @@ You can ask Chayn team members questions at any point during your contribution i - Pull request discussions for your contribution. - Or, create a new issue with the `type: question / suggestion` label. -Chayn team members will respond within 3 business days. +Chayn team members usually respond within 3 business days. # What kind of contributions does Chayn want? @@ -58,7 +57,7 @@ Chayn is open to all kinds of contributions, such as: - additional software tests - code of any kind (enhancements, new features, maintenance) -- no-code (documenation, translations) *see spam policy below for accepted documentation changes. +- no-code (documenation, translations) \*see spam policy below for accepted documentation changes. # Chayn's Spam Contribution Policy 🚫 @@ -66,6 +65,8 @@ Chayn is open to all kinds of contributions, such as: All pull requests need to be associated with an issue. If you open a pull request without claiming an issue, you will be asked to create an issue for your pull request. Documentation contributions will only be accepted under these circumstances: + +- is relevant to an open issue. - adds additional context to the developer experience, such as environment set-up. - describes solutions for common error handling. - fixes a typo. @@ -75,6 +76,7 @@ Unwanted documentation changes, such as summarizations, white space edits, or mi # The Contribution Process Guide ### Directions for Contributing to Chayn: + 1. [Read the README and Code of Conduct](#1-read-the-readme-and-code-of-conduct) 2. [Claim an Issue](#2-claim-an-issue) 3. [Fork the Repo and Create a New Branch](#3-fork-the-repo-and-create-a-new-branch) @@ -93,34 +95,57 @@ Contributing means you have agreed to our [Code of Conduct](/CODE_OF_CONDUCT.md) ## 2. **Claim an Issue:** -**First, please ask to be assigned an issue, this helps us keep track of contributor progress. We may deny your PR if the issue is already assigned to someone who asked.** +To claim an issue, either create an issue to be assigned to OR ask to be assigned an existing issue. + +- If multiple people ask to be assigned before a Chayn maintainer can respond, the person who asked first will be assigned. + +- Multiple people are welcome to collaborate on a single issue. + +**Important!: All pull requests MUST be associated with a claimed issue. We may deny your pull request if it is not associated with an issue that you're assigned to. Please make sure you are assigned an issue BEFORE making your contribution.** + +### Create Issue: + +Have an idea for a contribution? Create your own! +For more guidance see [GitHub Docs: Creating an Issue](https://docs.github.com/en/issues/tracking-your-work-with-issues/creating-an-issue). + +Steps to create an issue to be assigned to: + +1. Check that your issue doesn't already exist. +2. Follow our issue templates for creating new issues. +3. If your issue is complex, consider breaking it into multiple smaller issues. +4. Ask to be assigned your issue in the discussion. + +See [What kind of contributions does Chayn want?](#what-kind-of-contributions-does-chayn-want) for contribution ideas. + +### Claim Existing Issue: + +To claim an existing issue, comment in the discussions and ask to be assigned. Ideally you should tag the issue author / Chayn team member. + +### How to Select Issues: + +Scan our issue `labels` to find issues that suit you: + +- The `good first issue` and `first-timers-friendly` labels are best for new contributors. +- The `help wanted` label indicates that Chayn is inviting contributors to help. While contributors can contribute to any unassigned issue, issues with this label are specifically looking for help outside of Chayn's dev team. +- The `complexity: beginner` label is for issues that take less than 1 day to complete, and require little to no prior experience with the codebase. +- The `complexity: moderate` label is for issues that may take 1-2 days to complete, and will require some knowledge of the codebase. +- The `complexity: advanced` is for issues that may take more time, possibly 3+ days. These will require more in-depth knowledge of the codebase. **Contributors are strongly encouraged to report progress while working on complex issues.** -- **If creating an issue:** - Check that your issue doesn't already exist and follow our issue templates for creating new issues. For a detailed guide on creating issues, read this guide on GitHub: [Creating an Issue](https://docs.github.com/en/issues/tracking-your-work-with-issues/creating-an-issue). -- **If contributing to an existing issue:** - Please comment on it asking for the issue to be assigned to you. +We suggest starting with issues labeled `good first issue` or `complexity: beginner` to get comfortable with the codebase before moving onto more complex issues. -### How to Use Issue Labels: +### Issue Limit Policies -Note: all unassigned issues are available to contributors, regardless of their label. +**To ensure we give a fair opportunity to everyone, Chayn maintainers may limit the number of issues you can be assigned.** This allows us to manage our open-source contributions at a sustainble pace and ensure there are always open issues for everyone. -- Scan our issue `labels` to find issues that suit you: - - The `good first issue` and `first-timers-friendly` labels are best for new contributors. - - The `help wanted` label indicates that Chayn is inviting contributors to help. While contributors can contribute to any unassigned issue, issues with this label are specifically looking for help outside of Chayn's dev team. - - The `complexity: obvious` label is for issues that take less than 1 day to complete, and require little to no prior experience with the codebase. - - The `complexity: moderate` label is for issues that may take 1-2 days to complete, and will require some knowledge of the codebase. - - The `complexity: advanced` is for issues that may take more time, possibly 3+ days. These will require more in-depth knowledge of the codebase. -- We suggest starting with issues labeled `good first issue` or `complexity: obvious` to get comfortable with the codebase before moving onto more complex issues. +- **Only 1 issue of a specific complexity level in a single repository may be assigned to a contributor at a time.** To be assigned another, you must complete or close your previous issue. For example, a contributor can have 1 beginner issue, 1 intermediate issue, and 1 complex issue open in a single repository at a time. But they cannot have 3 beginner issues open, or 2 intermediate issues open at once in a single repository. +- **Beginner issues may be capped** at any time to reserve for current events, such as volunteer programs or Hacktoberfest. -### How We Manage Issues: +### Abandoned Contribution Policy: -- Issues can be assigned to multiple people if everyone agrees to collaborate! -- Consider if an issue would be best broken up into multiple, smaller issues. If so, feel free to create those issues! -- If an assigned issue is abandoned, we will unassign the issue after tagging you if we receive no response. -- If you can no longer complete an issue you're assigned to, we understand life happens! Please comment on the issue and we will unassign you. -- For complex issues, please report your progress in the issue discussions by tagging the issue author or Chayn maintainer who assigned you, and ticking off the checkboxes in the issue description. +We understand that life happens! **If you can no longer finish a contribution, please comment to let us know so we can swiftly reassign.** -🤝 **If you need more clarifying information about the issue, please tag us (issue author or Chayn maintainer who assigned the issue to you) to ask questions in the issues discussions at any point during your contribution. We are happy to help! You should hear back from us within 3 days.** +- After 60 days of no activity, your issue or pull request will be labeled `stale` and you will be prompted to respond in the discussions. +- If there is no response, we will unassign the issue and close your pull request. ## 3. **Fork the Repo and Create a New Branch:** diff --git a/components/cards/CourseCard.tsx b/components/cards/CourseCard.tsx index 6fa89af7..46123864 100644 --- a/components/cards/CourseCard.tsx +++ b/components/cards/CourseCard.tsx @@ -14,7 +14,7 @@ import { } from '@mui/material'; import { ISbStoryData } from '@storyblok/react'; import { useTranslations } from 'next-intl'; -import Image from 'next/legacy/image'; +import Image from 'next/image'; import { useRouter } from 'next/router'; import { useState } from 'react'; import { PROGRESS_STATUS } from '../../constants/enums'; diff --git a/components/common/ContentUnavailable.tsx b/components/common/ContentUnavailable.tsx index bdae7e47..6d1a8343 100644 --- a/components/common/ContentUnavailable.tsx +++ b/components/common/ContentUnavailable.tsx @@ -1,6 +1,6 @@ import { Box, Container, Typography } from '@mui/material'; import { useTranslations } from 'next-intl'; -import Image from 'next/legacy/image'; +import Image from 'next/image'; import illustrationPerson4Peach from '../../public/illustration_person4_peach.svg'; import { columnStyle } from '../../styles/common'; import { TextNode } from '../../utils/helper-types/translations'; diff --git a/components/common/ImageTextColumn.tsx b/components/common/ImageTextColumn.tsx index 15fc72a2..61db4803 100644 --- a/components/common/ImageTextColumn.tsx +++ b/components/common/ImageTextColumn.tsx @@ -1,6 +1,6 @@ import { Box, Typography } from '@mui/material'; import { useTranslations } from 'next-intl'; -import Image, { StaticImageData } from 'next/legacy/image'; +import Image, { StaticImageData } from 'next/image'; export interface ImageTextItem { text: string; diff --git a/components/common/ImageTextGrid.tsx b/components/common/ImageTextGrid.tsx index 91a48fdc..54d380eb 100644 --- a/components/common/ImageTextGrid.tsx +++ b/components/common/ImageTextGrid.tsx @@ -1,6 +1,6 @@ import { Box, Typography } from '@mui/material'; import { useTranslations } from 'next-intl'; -import Image, { StaticImageData } from 'next/legacy/image'; +import Image, { StaticImageData } from 'next/image'; import { richtextContentStyle, rowStyle } from '../../styles/common'; export interface ImageTextItem { diff --git a/components/layout/Consent.tsx b/components/layout/Consent.tsx index 41752d95..984f9999 100644 --- a/components/layout/Consent.tsx +++ b/components/layout/Consent.tsx @@ -1,7 +1,7 @@ import { getAnalytics } from '@firebase/analytics'; import { Box, Button, alpha, useMediaQuery, useTheme } from '@mui/material'; import { useTranslations } from 'next-intl'; -import Image from 'next/legacy/image'; +import Image from 'next/image'; import React from 'react'; import CookieConsent from 'react-cookie-consent'; import { COOKIES_ACCEPTED, COOKIES_REJECTED } from '../../constants/events'; diff --git a/components/layout/Footer.tsx b/components/layout/Footer.tsx index 1011f65d..a584f75a 100644 --- a/components/layout/Footer.tsx +++ b/components/layout/Footer.tsx @@ -5,7 +5,7 @@ import TwitterIcon from '@mui/icons-material/Twitter'; import YoutubeIcon from '@mui/icons-material/YouTube'; import { Box, Container, IconButton, Typography } from '@mui/material'; import { useTranslations } from 'next-intl'; -import Image from 'next/legacy/image'; +import Image from 'next/image'; import { useRouter } from 'next/router'; import { useEffect, useState } from 'react'; import { PARTNER_SOCIAL_LINK_CLICKED, SOCIAL_LINK_CLICKED } from '../../constants/events'; diff --git a/components/layout/Header.tsx b/components/layout/Header.tsx index 829c0623..ee580a5c 100644 --- a/components/layout/Header.tsx +++ b/components/layout/Header.tsx @@ -2,7 +2,7 @@ import KeyboardArrowLeftIcon from '@mui/icons-material/KeyboardArrowLeft'; import { Box, Container, IconButton, Typography } from '@mui/material'; import { ISbRichtext } from '@storyblok/react'; import { useTranslations } from 'next-intl'; -import Image, { StaticImageData } from 'next/legacy/image'; +import Image, { StaticImageData } from 'next/image'; import { useRouter } from 'next/router'; import { JSXElementConstructor, ReactElement, ReactNodeArray } from 'react'; import { render } from 'storyblok-rich-text-react-renderer'; diff --git a/components/layout/HomeHeader.tsx b/components/layout/HomeHeader.tsx index b6dd3196..3f1faedb 100644 --- a/components/layout/HomeHeader.tsx +++ b/components/layout/HomeHeader.tsx @@ -2,7 +2,7 @@ import Box from '@mui/material/Box'; import Container from '@mui/material/Container'; import Typography from '@mui/material/Typography'; import { useTranslations } from 'next-intl'; -import Image, { StaticImageData } from 'next/legacy/image'; +import Image, { StaticImageData } from 'next/image'; import * as React from 'react'; import { render } from 'storyblok-rich-text-react-renderer'; import { columnStyle, rowStyle } from '../../styles/common'; diff --git a/components/layout/LanguageMenu.tsx b/components/layout/LanguageMenu.tsx index 49c2b4d4..fda51db0 100644 --- a/components/layout/LanguageMenu.tsx +++ b/components/layout/LanguageMenu.tsx @@ -98,6 +98,7 @@ export default function LanguageMenu() { locale={language} onClick={() => { logEvent(generateLanguageMenuEvent(language), eventUserData); + handleClose() }} > {languageLabel} diff --git a/components/layout/PartnerAdminHeader.tsx b/components/layout/PartnerAdminHeader.tsx index a047ec19..ef34f6d1 100644 --- a/components/layout/PartnerAdminHeader.tsx +++ b/components/layout/PartnerAdminHeader.tsx @@ -1,6 +1,6 @@ import { Container, Typography } from '@mui/material'; import { useTranslations } from 'next-intl'; -import Image, { StaticImageData } from 'next/legacy/image'; +import Image, { StaticImageData } from 'next/image'; import * as React from 'react'; const headerContainerStyles = { diff --git a/components/layout/PartnerHeader.tsx b/components/layout/PartnerHeader.tsx index e0cc1b87..b2caef99 100644 --- a/components/layout/PartnerHeader.tsx +++ b/components/layout/PartnerHeader.tsx @@ -1,6 +1,6 @@ import { Box, Container } from '@mui/material'; import { useTranslations } from 'next-intl'; -import Image, { StaticImageData } from 'next/legacy/image'; +import Image, { StaticImageData } from 'next/image'; import { rowStyle } from '../../styles/common'; import UserResearchBanner from '../banner/UserResearchBanner'; diff --git a/components/layout/SecondaryNav.tsx b/components/layout/SecondaryNav.tsx index 6a788b23..467321a1 100644 --- a/components/layout/SecondaryNav.tsx +++ b/components/layout/SecondaryNav.tsx @@ -1,5 +1,5 @@ import { Icon, Tab, Tabs } from '@mui/material'; -import Image from 'next/legacy/image'; +import Image from 'next/image'; import { useRouter } from 'next/router'; import notesFromBloomIcon from '../../public/notes_from_bloom_icon.svg'; import therapyIcon from '../../public/therapy_icon.svg'; diff --git a/components/layout/TopBar.tsx b/components/layout/TopBar.tsx index 8e946c84..93d74527 100644 --- a/components/layout/TopBar.tsx +++ b/components/layout/TopBar.tsx @@ -1,6 +1,6 @@ import { AppBar, Box, Button, Container, Theme, useMediaQuery, useTheme } from '@mui/material'; import { useTranslations } from 'next-intl'; -import Image from 'next/legacy/image'; +import Image from 'next/image'; import { useRouter } from 'next/router'; import { useEffect, useState } from 'react'; import { HEADER_HOME_LOGO_CLICKED, HEADER_LOGIN_CLICKED } from '../../constants/events'; diff --git a/components/storyblok/StoryblokAccordion.tsx b/components/storyblok/StoryblokAccordion.tsx index 24f10c08..ee4dda54 100644 --- a/components/storyblok/StoryblokAccordion.tsx +++ b/components/storyblok/StoryblokAccordion.tsx @@ -8,7 +8,7 @@ import { Typography, } from '@mui/material'; import { storyblokEditable } from '@storyblok/react'; -import Image from 'next/legacy/image'; +import Image from 'next/image'; import { render } from 'storyblok-rich-text-react-renderer'; import { ACCORDION_OPENED, generateAccordionEvent } from '../../constants/events'; import logEvent from '../../utils/logEvent'; diff --git a/components/storyblok/StoryblokCard.tsx b/components/storyblok/StoryblokCard.tsx index b98265f6..bfc5b9b7 100644 --- a/components/storyblok/StoryblokCard.tsx +++ b/components/storyblok/StoryblokCard.tsx @@ -12,7 +12,7 @@ import { import { Box } from '@mui/system'; import { ISbRichtext, storyblokEditable } from '@storyblok/react'; import { useTranslations } from 'next-intl'; -import Image from 'next/legacy/image'; +import Image from 'next/image'; import { useState } from 'react'; import { render } from 'storyblok-rich-text-react-renderer'; import { RichTextOptions } from '../../utils/richText'; diff --git a/components/storyblok/StoryblokFaqs.tsx b/components/storyblok/StoryblokFaqs.tsx index b9fc47bd..8012938a 100644 --- a/components/storyblok/StoryblokFaqs.tsx +++ b/components/storyblok/StoryblokFaqs.tsx @@ -1,7 +1,7 @@ import ExpandMoreIcon from '@mui/icons-material/ExpandMore'; import { Accordion, AccordionDetails, AccordionSummary, Box, Typography } from '@mui/material'; import { ISbRichtext, storyblokEditable } from '@storyblok/react'; -import Image from 'next/legacy/image'; +import Image from 'next/image'; import { render } from 'storyblok-rich-text-react-renderer'; import { FAQ_OPENED } from '../../constants/events'; import illustrationLeafMix from '../../public/illustration_leaf_mix.svg'; diff --git a/components/storyblok/StoryblokImage.tsx b/components/storyblok/StoryblokImage.tsx index debb2954..f491ca09 100644 --- a/components/storyblok/StoryblokImage.tsx +++ b/components/storyblok/StoryblokImage.tsx @@ -1,6 +1,6 @@ import { Box } from '@mui/system'; import { storyblokEditable } from '@storyblok/react'; -import Image from 'next/legacy/image'; +import Image from 'next/image'; import { richtextContentStyle } from '../../styles/common'; interface StoryblokImageProps { diff --git a/components/storyblok/StoryblokTeamMemberCard.tsx b/components/storyblok/StoryblokTeamMemberCard.tsx index 7d3d3e6b..6a57b1c5 100644 --- a/components/storyblok/StoryblokTeamMemberCard.tsx +++ b/components/storyblok/StoryblokTeamMemberCard.tsx @@ -3,7 +3,7 @@ import LanguageIcon from '@mui/icons-material/Language'; import { Box, Card, CardActionArea, CardContent, Collapse, Typography } from '@mui/material'; import { ISbRichtext, storyblokEditable } from '@storyblok/react'; import { useTranslations } from 'next-intl'; -import Image from 'next/legacy/image'; +import Image from 'next/image'; import { useState } from 'react'; import { render } from 'storyblok-rich-text-react-renderer'; import { columnStyle, rowStyle } from '../../styles/common'; diff --git a/constants/partners.ts b/constants/partners.ts index 08694300..ce0a8cb1 100644 --- a/constants/partners.ts +++ b/constants/partners.ts @@ -1,4 +1,4 @@ -import { StaticImageData } from 'next/legacy/image'; +import { StaticImageData } from 'next/image'; import badooLogo from '../public/badoo_logo.svg'; import bloomBadooLogo from '../public/bloom_badoo_logo.svg'; import bloomBumbleLogo from '../public/bloom_bumble_logo.svg'; diff --git a/guards/partnerAdminGuard.tsx b/guards/partnerAdminGuard.tsx index 1c6caa13..20a93df3 100644 --- a/guards/partnerAdminGuard.tsx +++ b/guards/partnerAdminGuard.tsx @@ -1,7 +1,7 @@ import { Container, Typography } from '@mui/material'; import { Box } from '@mui/system'; import Head from 'next/head'; -import Image from 'next/legacy/image'; +import Image from 'next/image'; import { useTranslations } from 'use-intl'; import Link from '../components/common/Link'; import { useTypedSelector } from '../hooks/store'; diff --git a/guards/superAdminGuard.tsx b/guards/superAdminGuard.tsx index 2216ff7a..436baa5c 100644 --- a/guards/superAdminGuard.tsx +++ b/guards/superAdminGuard.tsx @@ -1,7 +1,7 @@ import { Container, Typography } from '@mui/material'; import { Box } from '@mui/system'; import Head from 'next/head'; -import Image from 'next/legacy/image'; +import Image from 'next/image'; import { useTranslations } from 'use-intl'; import Link from '../components/common/Link'; import { useTypedSelector } from '../hooks/store'; diff --git a/guards/therapyAccessGuard.tsx b/guards/therapyAccessGuard.tsx index d8aab74b..310feaee 100644 --- a/guards/therapyAccessGuard.tsx +++ b/guards/therapyAccessGuard.tsx @@ -1,7 +1,7 @@ import { Container, Typography } from '@mui/material'; import { Box } from '@mui/system'; import Head from 'next/head'; -import Image from 'next/legacy/image'; +import Image from 'next/image'; import { useTranslations } from 'use-intl'; import Link from '../components/common/Link'; import { useTypedSelector } from '../hooks/store'; diff --git a/pages/404.tsx b/pages/404.tsx index 34b1c46a..5cba982b 100644 --- a/pages/404.tsx +++ b/pages/404.tsx @@ -2,7 +2,7 @@ import { Button, Container, Typography } from '@mui/material'; import { Box } from '@mui/system'; import { GetStaticPropsContext, NextPage } from 'next'; import Head from 'next/head'; -import Image from 'next/legacy/image'; +import Image from 'next/image'; import { useTranslations } from 'use-intl'; import Link from '../components/common/Link'; import LoadingContainer from '../components/common/LoadingContainer'; diff --git a/pages/500.tsx b/pages/500.tsx index 8792806d..a0133ba2 100644 --- a/pages/500.tsx +++ b/pages/500.tsx @@ -2,7 +2,7 @@ import { Button, Container, Typography } from '@mui/material'; import { Box } from '@mui/system'; import { GetStaticPropsContext, NextPage } from 'next'; import Head from 'next/head'; -import Image from 'next/legacy/image'; +import Image from 'next/image'; import { useTranslations } from 'use-intl'; import Link from '../components/common/Link'; import LoadingContainer from '../components/common/LoadingContainer'; diff --git a/pages/account/apply-a-code.tsx b/pages/account/apply-a-code.tsx index 158b8c71..ebe47a12 100644 --- a/pages/account/apply-a-code.tsx +++ b/pages/account/apply-a-code.tsx @@ -2,7 +2,7 @@ import { Box, Card, CardContent, Container, Typography } from '@mui/material'; import { GetStaticPropsContext, NextPage } from 'next'; import { useTranslations } from 'next-intl'; import Head from 'next/head'; -import Image from 'next/legacy/image'; +import Image from 'next/image'; import { useEffect, useState } from 'react'; import Link from '../../components/common/Link'; import ApplyCodeForm from '../../components/forms/ApplyCodeForm'; diff --git a/pages/auth/login.tsx b/pages/auth/login.tsx index 7f58a62f..72ec058a 100644 --- a/pages/auth/login.tsx +++ b/pages/auth/login.tsx @@ -11,7 +11,7 @@ import type { NextPage } from 'next'; import { GetStaticPropsContext } from 'next'; import { useTranslations } from 'next-intl'; import Head from 'next/head'; -import Image from 'next/legacy/image'; +import Image from 'next/image'; import { useRouter } from 'next/router'; import { useEffect } from 'react'; import Link from '../../components/common/Link'; diff --git a/pages/auth/register.tsx b/pages/auth/register.tsx index 2f95d59c..9fb911bd 100644 --- a/pages/auth/register.tsx +++ b/pages/auth/register.tsx @@ -11,7 +11,7 @@ import type { NextPage } from 'next'; import { GetStaticPropsContext } from 'next'; import { useTranslations } from 'next-intl'; import Head from 'next/head'; -import Image from 'next/legacy/image'; +import Image from 'next/image'; import { useRouter } from 'next/router'; import { useEffect, useState } from 'react'; import Link from '../../components/common/Link'; diff --git a/pages/therapy/book-session.tsx b/pages/therapy/book-session.tsx index d5e05cc4..5ff72a53 100644 --- a/pages/therapy/book-session.tsx +++ b/pages/therapy/book-session.tsx @@ -2,7 +2,7 @@ import { Box, Button, Container, Typography } from '@mui/material'; import { GetStaticPropsContext, NextPage } from 'next'; import { useTranslations } from 'next-intl'; import Head from 'next/head'; -import Image from 'next/legacy/image'; +import Image from 'next/image'; import Script from 'next/script'; import { useEffect, useState } from 'react'; import { PartnerAccess } from '../../app/partnerAccessSlice'; diff --git a/pages/therapy/confirmed-session.tsx b/pages/therapy/confirmed-session.tsx index d6e8e683..f6de2bf5 100644 --- a/pages/therapy/confirmed-session.tsx +++ b/pages/therapy/confirmed-session.tsx @@ -2,7 +2,7 @@ import { Box, Container, Typography } from '@mui/material'; import { GetStaticPropsContext, NextPage } from 'next'; import { useTranslations } from 'next-intl'; import Head from 'next/head'; -import Image from 'next/legacy/image'; +import Image from 'next/image'; import { useEffect, useState } from 'react'; import { PartnerAccess } from '../../app/partnerAccessSlice'; import Faqs from '../../components/common/Faqs';