diff --git a/Gemfile.lock b/Gemfile.lock index 4934ba5a1e..17d3bed23c 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -657,6 +657,7 @@ GEM PLATFORMS arm64-darwin-23 + arm64-darwin-24 x64-mingw32 x86_64-linux diff --git a/app/javascript/components/modals/seniority-survey-modal/BootcampAdvertismentView.tsx b/app/javascript/components/modals/seniority-survey-modal/BootcampAdvertismentView.tsx index 860637f5a1..c7f1381628 100644 --- a/app/javascript/components/modals/seniority-survey-modal/BootcampAdvertismentView.tsx +++ b/app/javascript/components/modals/seniority-survey-modal/BootcampAdvertismentView.tsx @@ -1,15 +1,28 @@ -import React, { useContext } from 'react' -import { GraphicalIcon, Icon } from '@/components/common' +import React from 'react' +import { Icon } from '@/components/common' import { FormButton } from '@/components/common/FormButton' import { ErrorBoundary, ErrorMessage } from '@/components/ErrorBoundary' -import { SenioritySurveyModalContext } from './SenioritySurveyModal' import { useAppTranslation } from '@/i18n/useAppTranslation' import { Trans } from 'react-i18next' +import { MutationStatus } from '@tanstack/react-query' const DEFAULT_ERROR = new Error('Unable to dismiss modal') -export function BootcampAdvertismentView() { - const { patchCloseModal, links } = useContext(SenioritySurveyModalContext) +type BootcampAdvertismentViewProps = { + patchCloseModal: { + mutate: () => void + status: string + error: unknown + } + links: { + codingFundamentalsCourse: string + } +} + +export function BootcampAdvertismentView({ + patchCloseModal, + links, +}: BootcampAdvertismentViewProps) { const { t } = useAppTranslation('components/modals/seniority-survey-modal') return ( @@ -86,7 +99,7 @@ export function BootcampAdvertismentView() { {t('bootcampAd.learnMore')} case 'bootcamp-advertisment': - return + return ( + + ) } } diff --git a/app/javascript/components/modals/welcome-modal/WelcomeModal.tsx b/app/javascript/components/modals/welcome-modal/WelcomeModal.tsx index 3c45cff30d..f306b40b80 100644 --- a/app/javascript/components/modals/welcome-modal/WelcomeModal.tsx +++ b/app/javascript/components/modals/welcome-modal/WelcomeModal.tsx @@ -4,7 +4,7 @@ import { sendRequest } from '@/utils/send-request' import { Modal, ModalProps } from '../Modal' import { InitialView } from './InitialView' import { SeniorView } from './DeveloperView' -import { JuniorView } from './JuniorView' +import { BootcampAdvertismentView } from '../seniority-survey-modal/BootcampAdvertismentView' type ViewVariant = 'initial' | 'beginner' | 'developer' @@ -134,9 +134,16 @@ export default function WelcomeModal({ null} className="m-welcome" @@ -148,12 +155,18 @@ export default function WelcomeModal({ } function Inner() { - const { currentView } = useContext(WelcomeModalContext) + const { currentView, patchCloseModal, links } = + useContext(WelcomeModalContext) switch (currentView) { case 'initial': return case 'beginner': - return + return ( + + ) case 'developer': return default: