import React, { useState, useEffect } from 'react'; import { AlertTriangle } from 'lucide-react'; import isAllOther from '../utils/isAllOther.js'; function CareerModal({ career, careerDetails, closeModal, addCareerToList }) { const [error, setError] = useState(null); const [loadingRisk, setLoadingRisk] = useState(false); const aiRisk = careerDetails?.aiRisk || null; const fmt = (v) => typeof v === 'number' ? v.toLocaleString() : (v ?? '—'); // Handle your normal careerDetails loading logic if (careerDetails?.error) { return (
{careerDetails.error}
Loading career details...
You've selected an "umbrella" field that covers a wide range of careers—many people begin a career journey with a broad interest area and we don't want to discourage anyone from taking this approach. It's just difficult to display detailed career data and day‑to‑day tasks for this “all‑other” occupation. Use it as a starting point, keep exploring specializations, and we can show you richer insights as soon as you are able to narrow it down to a more specific role. If you know this is the field for you, go ahead to add it to your comparison list or move straight into Preparing & Upskilling for Your Career!
No AI risk data available
)}{careerDetails.jobDescription}
Percentile | Regional Salary | National Salary |
---|---|---|
{row.percentile} | {Number.isFinite(row.regionalSalary) ? `$${fmt(row.regionalSalary)}` : '—'} | {Number.isFinite(row.nationalSalary) ? `$${fmt(row.nationalSalary)}` : '—'} |
{careerDetails.economicProjections.state && ( | {careerDetails.economicProjections.state.area} | )} {careerDetails.economicProjections.national && (National | )}
---|---|---|
Current Jobs | {careerDetails.economicProjections.state && ({fmt(careerDetails.economicProjections.state.base)} | )} {careerDetails.economicProjections.national && ({fmt(careerDetails.economicProjections.national.base)} | )}
Jobs in 10 yrs | {careerDetails.economicProjections.state && ({fmt(careerDetails.economicProjections.state.projection)} | )} {careerDetails.economicProjections.national && ({fmt(careerDetails.economicProjections.national.projection)} | )}
Growth % | {careerDetails.economicProjections.state && ({fmt(careerDetails.economicProjections.state.percentChange)}% | )} {careerDetails.economicProjections.national && ({fmt(careerDetails.economicProjections.national.percentChange)}% | )}
Annual Openings | {careerDetails.economicProjections.state && ({fmt(careerDetails.economicProjections.state.annualOpenings)} | )} {careerDetails.economicProjections.national && ({fmt(careerDetails.economicProjections.national.annualOpenings)} | )}
Note: These 10‑year projections may change if AI‑driven tools significantly affect {careerDetails.title} tasks. With a {aiRisk?.riskLevel?.toLowerCase()} AI risk, it’s possible some responsibilities could be automated over time.
)}