Compare commits

...

13 Commits

14 changed files with 629 additions and 5 deletions

View File

@ -2,6 +2,18 @@
All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
### [3.2.7](https://github.com/AmruthPillai/Reactive-Resume/compare/v3.2.6...v3.2.7) (2022-03-18)
### Features
* **i18n:** add Malayalam (മലയാളം) language to i18n locales ([3a2e62b](https://github.com/AmruthPillai/Reactive-Resume/commit/3a2e62be4c9acc14f17277c060cc9ea2c417a478))
### Bug Fixes
* **printer/i18n:** fix dates not showing up in resume language when printing ([90321e1](https://github.com/AmruthPillai/Reactive-Resume/commit/90321e1284409ab9442883c04a9b4c591d36f95d)), closes [#729](https://github.com/AmruthPillai/Reactive-Resume/issues/729)
### [3.2.6](https://github.com/AmruthPillai/Reactive-Resume/compare/v3.2.5...v3.2.6) (2022-03-17)

View File

@ -46,6 +46,7 @@ You have complete control over what goes into your resume, how it looks, what co
- Hindi (हिन्दी)
- Italian (Italiano)
- Kannada (ಕನ್ನಡ)
- Malayalam (മലയാളം)
- Polish (Polski)
- Spanish (Español)
- Tamil (தமிழ்)

View File

@ -19,7 +19,7 @@ const Theme = () => {
const { background, text, primary } = useAppSelector<ThemeType>((state) => get(state.resume, 'metadata.theme'));
const handleChange = (property: string, color: string) => {
dispatch(setResumeState({ path: `metadata.theme.${property}`, value: color }));
dispatch(setResumeState({ path: `metadata.theme.${property}`, value: color[0] !== '#' ? `#${color}` : color }));
};
return (

View File

@ -15,6 +15,7 @@ export const languages: Language[] = [
{ code: 'hi', name: 'Hindi', localName: 'हिन्दी' },
{ code: 'it', name: 'Italian', localName: 'Italiano' },
{ code: 'kn', name: 'Kannada', localName: 'ಕನ್ನಡ' },
{ code: 'ml', name: 'Malayalam', localName: 'മലയാളം' },
{ code: 'pl', name: 'Polish', localName: 'Polski' },
{ code: 'ta', name: 'Tamil', localName: 'தமிழ்' },
{ code: 'tr', name: 'Turkish', localName: 'Türkçe' },

View File

@ -3,7 +3,7 @@ const path = require('path');
const i18nConfig = {
i18n: {
defaultLocale: 'en',
locales: ['ar', 'bn', 'da', 'de', 'en', 'es', 'fr', 'hi', 'it', 'kn', 'pl', 'ta', 'tr', 'zh'],
locales: ['ar', 'bn', 'da', 'de', 'en', 'es', 'fr', 'hi', 'it', 'kn', 'ml', 'pl', 'ta', 'tr', 'zh'],
},
nsSeparator: '.',
localePath: path.resolve('./public/locales'),

View File

@ -3,6 +3,7 @@ import clsx from 'clsx';
import get from 'lodash/get';
import isEmpty from 'lodash/isEmpty';
import { GetServerSideProps, NextPage } from 'next';
import { useRouter } from 'next/router';
import { serverSideTranslations } from 'next-i18next/serverSideTranslations';
import { useEffect } from 'react';
@ -20,6 +21,7 @@ type QueryParams = {
type Props = {
resume?: Resume;
locale: string;
redirect?: any;
};
@ -35,7 +37,13 @@ export const getServerSideProps: GetServerSideProps<Props | Promise<Props>, Quer
const resume = await fetchResumeByIdentifier({ username, slug, options: { secretKey } });
const displayLocale = resume.metadata.locale || locale || 'en';
return { props: { resume, ...(await serverSideTranslations(displayLocale, ['common'])) } };
return {
props: {
resume,
locale: displayLocale,
...(await serverSideTranslations(displayLocale, ['common'])),
},
};
} catch (error) {
return {
redirect: {
@ -46,7 +54,9 @@ export const getServerSideProps: GetServerSideProps<Props | Promise<Props>, Quer
}
};
const Printer: NextPage<Props> = ({ resume: initialData }) => {
const Printer: NextPage<Props> = ({ resume: initialData, locale }) => {
const router = useRouter();
const dispatch = useAppDispatch();
const resume = useAppSelector((state) => state.resume);
@ -55,6 +65,12 @@ const Printer: NextPage<Props> = ({ resume: initialData }) => {
if (initialData) dispatch(setResume(initialData));
}, [dispatch, initialData]);
useEffect(() => {
const { pathname, asPath, query } = router;
router.push({ pathname, query }, asPath, { locale });
}, [router, locale]);
if (!resume || isEmpty(resume)) return null;
const layout: string[][][] = get(resume, 'metadata.layout', []);

View File

@ -0,0 +1,358 @@
{
"common": {
"actions": {
"add": "പുതിയ {{token}} ചേർക്കുക",
"delete": "{{token}} ഇല്ലാതാക്കുക",
"edit": "{{token}} എഡിറ്റ് ചെയ്യുക"
},
"columns": {
"heading": "നിരകൾ",
"tooltip": "നിരകളുടെ എണ്ണം മാറ്റുക"
},
"form": {
"date": {
"label": "തിയതി"
},
"description": {
"label": "വിവരണം"
},
"email": {
"label": "ഇമെയിൽ വിലാസം"
},
"end-date": {
"help-text": "നിലവിലുണ്ടെങ്കിൽ ഈ ഫീൽഡ് ശൂന്യമായി വിടുക",
"label": "അവസാന തീയതി"
},
"keywords": {
"label": "കീവേഡുകൾ"
},
"level": {
"label": "ലെവൽ"
},
"levelNum": {
"label": "ലെവൽ (നമ്പർ)"
},
"name": {
"label": "പേര്"
},
"phone": {
"label": "ഫോണ്‍ നമ്പര്‍"
},
"position": {
"label": "സ്ഥാനം"
},
"start-date": {
"label": "ആരംഭിക്കുന്ന തീയതി"
},
"subtitle": {
"label": "ഉപശീർഷകം"
},
"summary": {
"label": "സംഗ്രഹം"
},
"title": {
"label": "തലക്കെട്ട്"
},
"url": {
"label": "വെബ്സൈറ്റ്"
}
},
"glossary": {
"page": "പേജ്"
},
"list": {
"actions": {
"delete": "ഡിലീറ്റ്",
"duplicate": "ഡ്യൂപ്ലിക്കേറ്റ്",
"edit": "എഡിറ്റ് ചെയ്യുക"
},
"empty-text": "ഈ ലിസ്റ്റ് ശൂന്യമാണ്."
},
"tooltip": {
"delete-item": "ഈ ഇനം ഇല്ലാതാക്കണമെന്ന് തീർച്ചയാണോ? ഇത് മാറ്റാനാവാത്ത നടപടിയാണ്.",
"delete-section": "വിഭാഗം ഇല്ലാതാക്കുക",
"rename-section": "വിഭാഗത്തിന്റെ പേര് മാറ്റുക",
"toggle-visibility": "ദൃശ്യപരത ടോഗിൾ ചെയ്യുക"
}
},
"controller": {
"tooltip": {
"center-artboard": "കേന്ദ്ര ആർട്ട്ബോർഡ്",
"copy-link": "റെസ്യൂമെയിലേക്ക് ലിങ്ക് പകർത്തുക",
"export-pdf": "PDF കയറ്റുമതി ചെയ്യുക",
"toggle-orientation": "പേജ് ഓറിയന്റേഷൻ ടോഗിൾ ചെയ്യുക",
"toggle-page-break-line": "പേജ് ബ്രേക്ക് ലൈൻ ടോഗിൾ ചെയ്യുക",
"toggle-sidebars": "സൈഡ്‌ബാറുകൾ ടോഗിൾ ചെയ്യുക",
"zoom-in": "വലുതാക്കുക",
"zoom-out": "ചെറുതാക്കുക"
}
},
"header": {
"menu": {
"delete": "ഡിലീറ്റ്",
"duplicate": "ഡ്യൂപ്ലിക്കേറ്റ്",
"rename": "പേര് മാറ്റുക",
"share-link": "ലിങ്ക് ഷെയർ ചെയ്യൂ",
"tooltips": {
"delete": "ഈ റെസ്യൂമെ ഇല്ലാതാക്കണമെന്ന് തീർച്ചയാണോ? ഇത് മാറ്റാനാവാത്ത നടപടിയാണ്.",
"share-link": "മറ്റുള്ളവർക്ക് ദൃശ്യമാക്കാൻ നിങ്ങളുടെ റെസ്യൂമെയുടെ ദൃശ്യപരത പൊതുവായി മാറ്റേണ്ടതുണ്ട്."
}
}
},
"leftSidebar": {
"sections": {
"awards": {
"form": {
"awarder": {
"label": "പുരസ്കാരദാതാവ്"
}
}
},
"basics": {
"actions": {
"photo-filters": "ഫോട്ടോ ഫിൽട്ടറുകൾ"
},
"heading": "അടിസ്ഥാനകാര്യങ്ങൾ",
"headline": {
"label": "തലക്കെട്ട്"
},
"name": {
"label": "പൂർണ്ണമായ പേര്"
},
"photo-filters": {
"effects": {
"border": {
"label": "ബോർഡർ"
},
"grayscale": {
"label": "ഗ്രേസ്കെയിൽ"
},
"heading": "ഇഫക്റ്റുകൾ"
},
"shape": {
"heading": "ആകൃതി"
},
"size": {
"heading": "വലിപ്പം (പിക്സലിൽ)"
}
},
"photo-upload": {
"tooltip": {
"remove": "ഫോട്ടോ നീക്കം ചെയ്യുക",
"upload": "ഫോട്ടോ അപ്‌ലോഡ് ചെയ്യുക"
}
}
},
"certifications": {
"form": {
"issuer": {
"label": "ഇഷ്യു ചെയ്യുന്നയാൾ"
}
}
},
"education": {
"form": {
"area-study": {
"label": "പഠന മേഖല"
},
"courses": {
"label": "കോഴ്സുകൾ"
},
"degree": {
"label": "ഡിഗ്രി"
},
"grade": {
"label": "ഗ്രേഡ്"
},
"institution": {
"label": "സ്ഥാപനം"
}
}
},
"location": {
"address": {
"label": "വിലാസം"
},
"city": {
"label": "നഗരം"
},
"country": {
"label": "രാജ്യം"
},
"heading": "സ്ഥലം",
"postal-code": {
"label": "തപാൽ കോഡ്"
},
"region": {
"label": "പ്രദേശം"
}
},
"profiles": {
"form": {
"network": {
"label": "നെറ്റ്‌വർക്ക്"
},
"username": {
"label": "ഉപയോക്തൃനാമം"
}
},
"heading": "പ്രൊഫൈലുകൾ",
"heading_one": "പ്രൊഫൈൽ"
},
"publications": {
"form": {
"publisher": {
"label": "പ്രസാധകൻ"
}
}
},
"references": {
"form": {
"relationship": {
"label": "ബന്ധം"
}
}
},
"section": {
"heading": "വിഭാഗം"
},
"volunteer": {
"form": {
"organization": {
"label": "സംഘടന"
}
}
}
}
},
"rightSidebar": {
"sections": {
"css": {
"heading": "ഇഷ്ടാനുസൃത CSS"
},
"export": {
"heading": "എക്സ്പോർട്ട്",
"json": {
"primary": "JSON",
"secondary": "റിയാക്ടീവ് റെസ്യൂമിലേക്ക് തിരികെ ഇറക്കുമതി ചെയ്യാൻ കഴിയുന്ന നിങ്ങളുടെ റെസ്യൂമെയുടെ JSON പതിപ്പ് ഡൗൺലോഡ് ചെയ്യുക."
},
"pdf": {
"loading": {
"primary": "PDF സൃഷ്ടിക്കുന്നു",
"secondary": "നിങ്ങളുടെ PDF ജനറേറ്റുചെയ്യുന്നത് പോലെ കാത്തിരിക്കുക, ഇതിന് 15 സെക്കൻഡ് വരെ എടുത്തേക്കാം."
},
"normal": {
"primary": "PDF",
"secondary": "നിങ്ങളുടെ സ്വപ്‌ന ജോലിയിലേക്ക് പ്രിന്റ് ചെയ്‌ത് അയയ്‌ക്കാൻ കഴിയുന്ന നിങ്ങളുടെ റെസ്യൂമെയുടെ PDF ഡൗൺലോഡ് ചെയ്യുക. കൂടുതൽ എഡിറ്റിംഗിനായി ഈ ഫയൽ തിരികെ ഇറക്കുമതി ചെയ്യാൻ കഴിയില്ല."
}
}
},
"layout": {
"heading": "ലേഔട്ട്",
"tooltip": {
"reset-layout": "ലേഔട്ട് പുനഃസജ്ജമാക്കുക"
}
},
"links": {
"bugs-features": {
"body": "ഒരു റെസ്യൂമെ ഉണ്ടാക്കുന്നതിൽ നിന്ന് നിങ്ങളെ എന്തെങ്കിലും തടസ്സപ്പെടുത്തുന്നുണ്ടോ? അല്ലെങ്കിൽ നിങ്ങൾക്ക് ചേർക്കാൻ അതിശയകരമായ ഒരു ആശയമുണ്ടോ? ആരംഭിക്കുന്നതിന് ഒരു ഗിറ്റ്ഹബ് ഇസ്സു ഉന്നയിക്കുക.",
"button": "ഗിറ്റ്ഹബ് ഇസ്സുസ്",
"heading": "ബഗുകൾ? ഫീച്ചർ അഭ്യർത്ഥനകൾ?"
},
"donate": {
"body": "റിയാക്ടീവ് റെസ്യൂമെ ഉപയോഗിക്കുന്നത് നിങ്ങൾക്ക് ഇഷ്‌ടമാണെങ്കിൽ, പരസ്യങ്ങളില്ലാതെ എക്കാലവും സൗജന്യമായി ആപ്പ് പ്രവർത്തനക്ഷമമാക്കി നിലനിർത്തുന്നതിന് നിങ്ങളാൽ കഴിയുന്നത്ര സംഭാവന ചെയ്യുന്നത് പരിഗണിക്കുക.",
"button": "എനിക്കൊരു കാപ്പി വാങ്ങിത്തരൂ",
"heading": "റിയാക്ടീവ് റെസ്യൂമെയിലേക്ക് സംഭാവന നൽകുക"
},
"github": "സോഴ്സ് കോഡ്",
"heading": "ലിങ്കുകൾ"
},
"settings": {
"global": {
"date": {
"primary": "തിയതി",
"secondary": "ആപ്പിലുടനീളം ഉപയോഗിക്കാനുള്ള തീയതി ഫോർമാറ്റ്"
},
"heading": "ആഗോള",
"language": {
"primary": "ഭാഷ",
"secondary": "ആപ്പിലുടനീളം ഉപയോഗിക്കാനുള്ള ഭാഷ"
},
"theme": {
"primary": "തീം"
}
},
"heading": "ക്രമീകരണങ്ങള്‍",
"page": {
"break-line": {
"primary": "ബ്രേക്ക് ലൈൻ",
"secondary": "A4 പേജിന്റെ ഉയരം അടയാളപ്പെടുത്താൻ എല്ലാ പേജുകളിലും ഒരു വരി കാണിക്കുക"
},
"heading": "പേജ്",
"orientation": {
"disabled": "ഒരു പേജ് മാത്രമുള്ളപ്പോൾ ഫലമുണ്ടാകില്ല",
"primary": "ഓറിയന്റേഷൻ",
"secondary": "പേജുകൾ തിരശ്ചീനമായോ ലംബമായോ പ്രദർശിപ്പിക്കണമോ എന്ന്"
}
},
"resume": {
"heading": "റെസ്യൂമെ",
"reset": {
"primary": "എല്ലാം പുനഃസജ്ജമാക്കുക",
"secondary": "വളരെയധികം തെറ്റുകൾ ചെയ്തോ? എല്ലാ മാറ്റങ്ങളും പുനഃസജ്ജമാക്കാനും ആദ്യം മുതൽ ആരംഭിക്കാനും ഇവിടെ ക്ലിക്ക് ചെയ്യുക. ശ്രദ്ധിക്കുക, ഈ പ്രവർത്തനം പഴയപടിയാക്കാനാകില്ല."
},
"sample": {
"primary": "സാമ്പിൾ ഡാറ്റ ലോഡ് ചെയ്യുക",
"secondary": "എവിടെ തുടങ്ങണമെന്ന് ഉറപ്പില്ലേ? ഒരു സമ്പൂർണ്ണ റെസ്യൂമെ എങ്ങനെയുണ്ടെന്ന് കാണുന്നതിന് കുറച്ച് സാമ്പിൾ ഡാറ്റ ലോഡ് ചെയ്യാൻ ഇവിടെ ക്ലിക്ക് ചെയ്യുക."
}
}
},
"sharing": {
"heading": "ഷെയർ",
"short-url": {
"label": "ഹ്രസ്വ URL തിരഞ്ഞെടുക്കുക"
},
"visibility": {
"subtitle": "നിങ്ങളുടെ റെസ്യൂമെ കാണാൻ ലിങ്കുള്ള ആരെയും അനുവദിക്കുക",
"title": "പൊതുവായത്"
}
},
"templates": {
"heading": "ടെംപ്ലേറ്റുകൾ"
},
"theme": {
"form": {
"background": {
"label": "പശ്ചാത്തലം"
},
"primary": {
"label": "പ്രാഥമികം"
},
"text": {
"label": "ടെക്സ്റ്റ്"
}
},
"heading": "തീം"
},
"typography": {
"form": {
"font-family": {
"label": "ഫോണ്ട് ഫാമിലി"
},
"font-size": {
"label": "അക്ഷര വലിപ്പം"
}
},
"heading": "ടൈപ്പോഗ്രാഫി",
"widgets": {
"body": {
"label": "ബോഡി"
},
"headings": {
"label": "തലക്കെട്ടുകൾ"
}
}
}
}
}
}

View File

@ -0,0 +1,32 @@
{
"avatar": {
"menu": {
"greeting": "ഹലോ",
"logout": "പുറത്തുകടക്കുക"
}
},
"footer": {
"credit": "<1>അമൃത് പിള്ളയുടെ</1> ഒരു പാഷൻ പ്രോജക്റ്റ്",
"language": {
"missing": "നിങ്ങളുടെ ഭാഷ കാണുന്നില്ലേ?"
},
"license": "സമൂഹത്താൽ, സമൂഹത്തിന് വേണ്ടി."
},
"markdown": {
"help-text": "ഈ വിഭാഗം <1>മാർക്ക്ഡൗൺ</1> ഫോർമാറ്റിംഗ് പിന്തുണയ്ക്കുന്നു."
},
"date": {
"present": "ഇപ്പോൾ"
},
"subtitle": "ഒരു സൗജന്യ ഓപ്പൺ സോഴ്സ് റെസ്യൂം ബിൽഡർ.",
"title": "റിയാക്ടീവ് റെസ്യുമെ",
"toast": {
"error": {
"upload-file-size": "2 മെഗാബൈറ്റിൽ താഴെയുള്ള ഫയലുകൾ മാത്രം അപ്‌ലോഡ് ചെയ്യുക.",
"upload-photo-size": "2 മെഗാബൈറ്റിൽ താഴെയുള്ള ഫോട്ടോകൾ മാത്രം അപ്‌ലോഡ് ചെയ്യുക."
},
"success": {
"resume-link-copied": "നിങ്ങളുടെ റെസ്യൂമെയിലേക്കുള്ള ഒരു ലിങ്ക് നിങ്ങളുടെ ക്ലിപ്പ്ബോർഡിലേക്ക് പകർത്തി."
}
}
}

View File

@ -0,0 +1,25 @@
{
"create-resume": {
"subtitle": "ആദ്യം മുതൽ ആരംഭിക്കുക",
"title": "പുതിയ റെസ്യുമെ ഉണ്ടാക്കുക"
},
"import-external": {
"subtitle": "LinkedIn, JSON റെസ്യൂമെ, റിയാക്ടീവ് റെസ്യൂമെ",
"title": "ബാഹ്യ ഉറവിടങ്ങളിൽ നിന്ന് ഇറക്കുമതി ചെയ്യുക"
},
"resume": {
"menu": {
"delete": "ഡിലീറ്റ്",
"duplicate": "ഡ്യൂപ്ലിക്കേറ്റ്",
"open": "തുറക്കുക",
"rename": "പേര് മാറ്റുക",
"share-link": "ലിങ്ക് ഷെയർ ചെയ്യൂ",
"tooltips": {
"delete": "ഈ റെസ്യൂമെ ഇല്ലാതാക്കണമെന്ന് തീർച്ചയാണോ? ഇത് മാറ്റാനാവാത്ത നടപടിയാണ്.",
"share-link": "മറ്റുള്ളവർക്ക് ദൃശ്യമാക്കാൻ നിങ്ങളുടെ റെസ്യൂമെയുടെ ദൃശ്യപരത പൊതുവായി മാറ്റേണ്ടതുണ്ട്."
}
},
"timestamp": "അവസാനം അപ്ഡേറ്റ് ചെയ്തത് {{timestamp}} മുമ്പ്"
},
"title": "ഡാഷ്ബോർഡ്"
}

View File

@ -0,0 +1,41 @@
{
"actions": {
"app": "ആപ്പിലേക്ക് പോകുക",
"login": "ലോഗിൻ",
"logout": "പുറത്തുകടക്കുക",
"register": "രജിസ്റ്റർ ചെയ്യുക"
},
"features": {
"heading": "സവിശേഷതകൾ",
"list": {
"ads": "പരസ്യം ഇല്ല",
"export": "നിങ്ങളുടെ റെസ്യൂമെ JSON അല്ലെങ്കിൽ PDF ഫോർമാറ്റിലേക്ക് കയറ്റുമതി ചെയ്യുക",
"free": "എന്നേക്കും സൗജന്യം",
"import": "LinkedIn, JSON റെസ്യൂമെ എന്നിവയിൽ നിന്ന് ഡാറ്റ ഇറക്കുമതി ചെയ്യുക",
"languages": "ഒന്നിലധികം ഭാഷകളിൽ ആക്സസ് ചെയ്യാവുന്നതാണ്",
"more": "കൂടാതെ കൂടുതൽ ആവേശകരമായ ഫീച്ചറുകൾ, <1>എല്ലാം ഇവിടെ വായിക്കുക</1>",
"tracking": "ഉപയോക്തൃ ട്രാക്കിംഗ് ഇല്ല"
}
},
"links": {
"heading": "ലിങ്കുകൾ",
"links": {
"donate": "സംഭാവന നൽകുക",
"github": "സോഴ്സ് കോഡ്",
"privacy": "സ്വകാര്യതാ നയം",
"service": "സേവന നിബന്ധനകൾ"
}
},
"screenshots": {
"heading": "സ്ക്രീൻഷോട്ടുകൾ"
},
"testimonials": {
"heading": "സാക്ഷ്യപത്രങ്ങൾ",
"body": "നല്ലതോ ചീത്തയോ, റിയാക്ടീവ് റെസ്യൂമിനെക്കുറിച്ചുള്ള നിങ്ങളുടെ അഭിപ്രായവും നിങ്ങൾക്ക് അനുഭവം എങ്ങനെയായിരുന്നു എന്നതും കേൾക്കാൻ ഞാൻ ആഗ്രഹിക്കുന്നു.<br/>ലോകമെമ്പാടുമുള്ള ഉപയോക്താക്കൾ അയച്ച ചില സന്ദേശങ്ങൾ ഇതാ.",
"contact": "നിങ്ങൾക്ക് <1>എന്റെ ഇമെയിൽ</1> വഴിയോ <3>എന്റെ വെബ്‌സൈറ്റിലെ</3> കോൺടാക്റ്റ് ഫോം വഴിയോ എന്നെ ബന്ധപ്പെടാം."
},
"summary": {
"body": "1, 2, 3 എന്നിവ പോലെ നിങ്ങളുടെ റെസ്യൂമെ സൃഷ്‌ടിക്കാനും അപ്‌ഡേറ്റ് ചെയ്യാനും പങ്കിടാനുമുള്ള ലൗകിക ജോലികൾ എളുപ്പമാക്കുന്നതിന് നിർമ്മിച്ച ഒരു സൗജന്യമായ ഓപ്പൺ സോഴ്‌സ് റെസ്യൂമെ ബിൽഡറാണ് റിയാക്ടീവ് റെസ്യൂമെ. ഈ ആപ്പ് ഉപയോഗിച്ച്, നിങ്ങൾക്ക് ഒന്നിലധികം റെസ്യൂമെകൾ സൃഷ്‌ടിക്കാനും റിക്രൂട്ടർമാരുമായോ സുഹൃത്തുക്കളുമായോ പങ്കിടാനും കഴിയും. നിങ്ങളുടെ ഡാറ്റയുടെ സമഗ്രതയും സ്വകാര്യതയും നഷ്‌ടപ്പെടാതെ, ഒരു അദ്വിതീയ ലിങ്കിലൂടെ അത് ഒരു PDF ആയി പ്രിന്റ് ചെയ്യുക, എല്ലാം സൗജന്യമായി, പരസ്യങ്ങളൊന്നുമില്ല, ട്രാക്കിംഗില്ല.",
"heading": "സംഗ്രഹം"
}
}

View File

@ -0,0 +1,136 @@
{
"auth": {
"forgot-password": {
"actions": {
"send-email": "പാസ്‌വേഡ് പുനഃസജ്ജമാക്കാൻ ഇമെയിൽ അയയ്ക്കുക"
},
"body": "നിങ്ങൾ വീണ്ടെടുക്കാൻ ആഗ്രഹിക്കുന്ന അക്കൗണ്ടുമായി ബന്ധപ്പെട്ട ഇമെയിൽ വിലാസം നൽകുക.",
"form": {
"email": {
"label": "ഇമെയിൽ വിലാസം"
}
},
"heading": "നിങ്ങളുടെ പാസ്സ്‌വേർഡ് മറന്നോ?",
"help-text": "അക്കൗണ്ട് നിലവിലുണ്ടെങ്കിൽ, നിങ്ങളുടെ പാസ്‌വേഡ് പുനഃസജ്ജമാക്കുന്നതിനുള്ള ലിങ്കുള്ള ഒരു ഇമെയിൽ നിങ്ങൾക്ക് ലഭിക്കും."
},
"login": {
"actions": {
"login": "ലോഗിൻ",
"google": "Google ഉപയോഗിച്ച് ലോഗിൻ ചെയ്യുക"
},
"body": "ലോഗിൻ ചെയ്യാനും ആക്‌സസ് ചെയ്യാനും നിങ്ങളുടെ റെസ്യൂമെകൾ നിയന്ത്രിക്കാനും പങ്കിടാനും നിങ്ങളുടെ അക്കൗണ്ടുമായി ബന്ധപ്പെട്ട ഉപയോക്തൃനാമവും പാസ്‌വേഡും നൽകുക.",
"form": {
"password": {
"label": "പാസ്സ്‌വേർഡ്"
},
"username": {
"help-text": "നിങ്ങളുടെ ഇമെയിൽ വിലാസവും നൽകാം",
"label": "ഉപയോക്തൃനാമം"
}
},
"heading": "നിങ്ങളുടെ അക്കൗണ്ടിൽ ലോഗിൻ ചെയ്യുക",
"recover-text": "നിങ്ങൾ പാസ്‌വേഡ് മറന്നുപോയെങ്കിൽ, നിങ്ങൾക്ക് ഇവിടെ <1>നിങ്ങളുടെ അക്കൗണ്ട് വീണ്ടെടുക്കാം</1>.",
"register-text": "നിങ്ങൾക്ക് ഒന്നുമില്ലെങ്കിൽ, നിങ്ങൾക്ക് ഇവിടെ <1>ഒരു അക്കൗണ്ട് സൃഷ്‌ടിക്കാം</1>."
},
"register": {
"actions": {
"register": "രജിസ്റ്റർ ചെയ്യുക",
"google": "Google വഴി രജിസ്റ്റർ ചെയ്യുക"
},
"body": "ഒരു അക്കൗണ്ട് സൃഷ്‌ടിക്കാൻ നിങ്ങളുടെ സ്വകാര്യ വിവരങ്ങൾ നൽകുക.",
"form": {
"confirm-password": {
"label": "പാസ്‌വേഡ് സ്ഥിരീകരിക്കുക"
},
"email": {
"label": "ഇമെയിൽ വിലാസം"
},
"name": {
"label": "പൂർണ്ണമായ പേര്"
},
"password": {
"label": "പാസ്സ്‌വേർഡ്"
},
"username": {
"label": "ഉപയോക്തൃനാമം"
}
},
"heading": "ഒരു അക്കൗണ്ട് തുടങ്ങുക",
"loginText": "നിങ്ങൾക്ക് ഇതിനകം ഒരു അക്കൗണ്ട് ഉണ്ടെങ്കിൽ, നിങ്ങൾക്ക് ഇവിടെ <1>ലോഗിൻ ചെയ്യാം</1>."
},
"reset-password": {
"actions": {
"set-password": "ഒരു പുതിയ പാസ്‌വേഡ് ക്രമീകരിക്കുക"
},
"body": "നിങ്ങളുടെ അക്കൗണ്ടിനായി ഒരു പുതിയ പാസ്‌വേഡ് നൽകുക.",
"form": {
"confirm-password": {
"label": "പാസ്‌വേഡ് സ്ഥിരീകരിക്കുക"
},
"password": {
"label": "പാസ്സ്‌വേർഡ്"
}
},
"heading": "പാസ്‌വേഡ് പുനക്രമീകരിക്കുക"
}
},
"dashboard": {
"create-resume": {
"actions": {
"create-resume": "പുതിയ റെസ്യുമെ ഉണ്ടാക്കുക"
},
"body": "ഒരു പേര് നൽകി നിങ്ങളുടെ റെസ്യൂമെ നിർമ്മിക്കാൻ ആരംഭിക്കുക. ഇത് നിങ്ങൾ അപേക്ഷിക്കുന്ന റോളിനെയോ നിങ്ങളുടെ പ്രിയപ്പെട്ട ലഘുഭക്ഷണത്തെയോ സൂചിപ്പിക്കാം.",
"form": {
"name": {
"label": "പേര്"
},
"public": {
"label": "എല്ലാവർക്കും പ്രവേശനം സാധ്യമാണോ?"
},
"slug": {
"label": "സ്ലഗ്"
}
},
"heading": "പുതിയ റെസ്യുമെ ഉണ്ടാക്കുക"
},
"import-external": {
"heading": "ബാഹ്യ ഉറവിടങ്ങളിൽ നിന്ന് ഇറക്കുമതി ചെയ്യുക",
"json-resume": {
"actions": {
"upload-json": "JSON അപ്‌ലോഡ് ചെയ്യുക"
},
"body": "നിങ്ങൾക്ക് ഒരു <1>സാധുതയുള്ള JSON റെസ്യൂമെ</1> ഉണ്ടെങ്കിൽ, റിയാക്ടീവ് റെസ്യൂമിൽ നിങ്ങളുടെ വികസനം വേഗത്തിൽ ട്രാക്ക് ചെയ്യാൻ നിങ്ങൾക്ക് ഇത് ഉപയോഗിക്കാം. ആരംഭിക്കുന്നതിന് താഴെയുള്ള ബട്ടണിൽ ക്ലിക്ക് ചെയ്ത് സാധുവായ ഒരു JSON ഫയൽ അപ്‌ലോഡ് ചെയ്യുക.",
"heading": "JSON റെസ്യൂമെയിൽ നിന്ന് ഇറക്കുമതി ചെയ്യുക"
},
"linkedin": {
"actions": {
"upload-archive": "ZIP ആർക്കൈവ് അപ്‌ലോഡ് ചെയ്യുക"
},
"body": "ലിങ്ക്ഡ്ഇനിൽ നിന്ന് നിങ്ങളുടെ ഡാറ്റ എക്‌സ്‌പോർട്ടുചെയ്‌ത് റിയാക്ടീവ് റെസ്യൂമെയിലെ ഫീൽഡുകൾ സ്വയമേവ പൂരിപ്പിക്കുന്നതിന് അത് ഉപയോഗിച്ച് നിങ്ങൾക്ക് സമയം ലാഭിക്കാം. LinkedIn-ലെ <1>ഡാറ്റ സ്വകാര്യത</1> വിഭാഗത്തിലേക്ക് പോയി നിങ്ങളുടെ ഡാറ്റയുടെ ആർക്കൈവ് അഭ്യർത്ഥിക്കുക. അത് ലഭ്യമായിക്കഴിഞ്ഞാൽ, താഴെയുള്ള ZIP ഫയൽ അപ്‌ലോഡ് ചെയ്യുക.",
"heading": "LinkedIn-ൽ നിന്ന് ഇറക്കുമതി ചെയ്യുക"
},
"reactive-resume": {
"actions": {
"upload-json": "JSON അപ്‌ലോഡ് ചെയ്യുക",
"upload-json-v2": "V2-ൽ നിന്ന് JSON അപ്‌ലോഡ് ചെയ്യുക"
},
"body": "റിയാക്ടീവ് റെസ്യൂമെയുടെ നിലവിലെ പതിപ്പിനൊപ്പം എക്‌സ്‌പോർട്ട് ചെയ്‌ത ഒരു JSON നിങ്ങളുടെ പക്കലുണ്ടെങ്കിൽ, എഡിറ്റ് ചെയ്യാവുന്ന ഒരു പതിപ്പ് വീണ്ടും ലഭിക്കാൻ നിങ്ങൾക്കത് ഇവിടെ തിരികെ ഇറക്കുമതി ചെയ്യാം.",
"heading": "റിയാക്ടീവ് റെസ്യൂമെയിൽ നിന്ന് ഇറക്കുമതി ചെയ്യുക"
}
},
"rename-resume": {
"actions": {
"rename-resume": "റെസ്യൂമെ പുനർനാമകരണം ചെയ്യുക"
},
"form": {
"name": {
"label": "പേര്"
},
"slug": {
"label": "സ്ലഗ്"
}
},
"heading": "നിങ്ങളുടെ റെസ്യൂമെ പുനർനാമകരണം ചെയ്യുക"
}
}
}

View File

@ -20,6 +20,7 @@ const DateWrapper: React.FC = ({ children }) => {
require('dayjs/locale/hi');
require('dayjs/locale/it');
require('dayjs/locale/kn');
require('dayjs/locale/ml');
require('dayjs/locale/pl');
require('dayjs/locale/ta');
require('dayjs/locale/tr');

View File

@ -54,6 +54,7 @@ You have complete control over what goes into your resume, how it looks, what co
- Hindi (हिन्दी)
- Italian (Italiano)
- Kannada (ಕನ್ನಡ)
- Malayalam (മലയാളം)
- Polish (Polski)
- Spanish (Español)
- Tamil (தமிழ்)

View File

@ -1,6 +1,6 @@
{
"name": "reactive-resume",
"version": "3.2.6",
"version": "3.2.7",
"private": true,
"workspaces": [
"schema",