Update Owliver language and suggestions

This commit is contained in:
2026-10-07 19:15:44 +05:30
parent 8ac4e1ee88
commit 81e5979f8f
156 changed files with 7330 additions and 1755 deletions

View File

@@ -8,8 +8,10 @@ import ApplyIdentityCard from '@/components/krow/ApplyIdentityCard';
import AIInterviewModal from '@/components/krow/AIInterviewModal';
import { useWorkerProfile } from '@/lib/krowHooks';
import { toast } from 'react-hot-toast';
import { useTranslation } from 'react-i18next';
export default function Apply() {
const { t } = useTranslation();
const navigate = useNavigate();
const [searchParams] = useSearchParams();
const jobId = searchParams.get('job');
@@ -77,15 +79,15 @@ export default function Apply() {
{/* Mobile back link */}
{showForm && (
<button onClick={() => { setShowForm(false); setSelectedJob(null); navigate('/apply', { replace: true }); }} className="text-[13px] text-[#6B7280] hover:text-[#111827] font-medium flex items-center gap-1">
<ArrowLeft className="w-3.5 h-3.5" /> Back to positions
<ArrowLeft className="w-3.5 h-3.5" /> {t('apply.backToPositions')}
</button>
)}
{/* Hero */}
<div className="bg-white border border-[#E5E7EB] rounded-2xl p-6 sm:p-8 text-center">
<h1 className="text-[28px] font-bold text-[#111827] mb-2">Skip the quiz. Just talk.</h1>
<h1 className="text-[28px] font-bold text-[#111827] mb-2">{t('apply.skipTheQuizJustTalk')}</h1>
<p className="text-[14px] text-[#6B7280] max-w-lg mx-auto mb-5">
KROW replaces long forms and tests with a fast 5-minute AI interview. Speak naturally — we evaluate readiness, not memory.
{t('apply.krowReplacesLongFormsAndTests')}
</p>
<div className="flex items-center justify-center gap-2 flex-wrap">
{[
@@ -100,7 +102,7 @@ export default function Apply() {
))}
</div>
<button onClick={() => navigate('/owliver')} className="mt-5 inline-flex items-center gap-2 bg-[#0838E0] hover:bg-[#062BAF] text-white text-[13px] font-semibold px-5 py-2.5 rounded-full transition-all">
Create your KROW Identity <ChevronRight className="w-4 h-4" />
{t('apply.createYourKrowIdentity')} <ChevronRight className="w-4 h-4" />
</button>
</div>
@@ -121,13 +123,13 @@ export default function Apply() {
arithmetic and stays on the admin position page. */}
<YourSkillFit job={selectedJob} held={verifiedLevels(courses, profile || {})} />
<button onClick={() => { setShowForm(false); setSelectedJob(null); navigate('/apply', { replace: true }); }} className="text-[13px] text-[#6B7280] hover:text-[#111827] font-medium flex items-center gap-1">
<ArrowLeft className="w-3.5 h-3.5" /> Back to positions
<ArrowLeft className="w-3.5 h-3.5" /> {t('apply.backToPositions')}
</button>
</div>
) : (
/* Position List */
<div>
<p className="text-[13px] font-medium text-[#374151] mb-3">Choose a position:</p>
<p className="text-[13px] font-medium text-[#374151] mb-3">{t('apply.chooseAPosition')}</p>
<div className="space-y-2">
{isLoading && [...Array(4)].map((_, i) => <div key={i} className="h-16 bg-white border border-[#E5E7EB] rounded-xl animate-pulse" />)}
{openPositions.map(job => (
@@ -146,7 +148,7 @@ export default function Apply() {
</button>
))}
{!isLoading && openPositions.length === 0 && (
<div className="text-center py-12 text-[14px] text-[#6B7280]">No open positions right now. Check back soon!</div>
<div className="text-center py-12 text-[14px] text-[#6B7280]">{t('apply.noOpenPositionsRightNowCheck')}</div>
)}
</div>
</div>