Skip to content

Commit b666249

Browse files
authored
Merge pull request #306 from deletidev/feature/#271-CV-monochrome-force-Create-languages-section
Closed #271
2 parents c46efa4 + aa0567c commit b666249

File tree

12 files changed

+149
-39
lines changed

12 files changed

+149
-39
lines changed

export-samples/html/cv-monochrome-force.html

Lines changed: 25 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -365,30 +365,30 @@
365365
padding-left: var(--space-24);
366366
}
367367

368-
/* icono lenguajes */
369-
.lenguage__container {
368+
/* section languages */
369+
.language__container {
370370
display: grid;
371371
padding-inline: var(--space-8);
372372
grid-template-columns: minmax(100px, auto) minmax(114px, 1fr);
373373
align-items: center;
374374
justify-items: start;
375375
}
376-
.lenguage__container + .lenguage__container {
376+
.language__container + .language__container {
377377
padding-top: var(--space-12);
378378
}
379-
.lenguage__title {
379+
.language__title {
380380
color: var(--primary-500);
381381
font-weight: var(--fw-medium);
382382
}
383-
.lenguage__image {
383+
.language__image {
384384
min-width: 7rem;
385385
display: flex;
386386
flex-direction: column;
387387
align-items: flex-end;
388388
gap: var(--space-2);
389389
margin: 0px;
390390
}
391-
.lenguage__icon {
391+
.language__icon {
392392
width: 114px;
393393
height: 24px;
394394
clip-path: polygon(0px 100%, 100% 0px, 100% 100%);
@@ -483,7 +483,7 @@
483483
);
484484
}
485485

486-
/* experiencies */
486+
/* section experiencies */
487487
.experiencies__container {
488488
display: flex;
489489
flex-direction: column;
@@ -565,7 +565,7 @@
565565
}
566566
}
567567

568-
/* educations */
568+
/* section educations */
569569
.educations {
570570
padding-bottom: var(--space-8);
571571
}
@@ -846,31 +846,31 @@ <h2 class="title">Competencias</h2>
846846
</section>
847847
<section class="section languages">
848848
<h2 class="title">Idiomas</h2>
849-
<div class="lenguage__container">
850-
<p class="lenguage__title">Español</p>
851-
<figure type="language" class="lenguage__image">
852-
<div class="lenguage__icon level-4"></div>
849+
<div class="language__container">
850+
<p class="language__title">Español</p>
851+
<figure type="language" class="language__image">
852+
<div class="language__icon level-4"></div>
853853
<figcaption class="language__caption">Nativo/Bilingüe</figcaption>
854854
</figure>
855855
</div>
856-
<div class="lenguage__container">
857-
<p class="lenguage__title">Inglés</p>
858-
<figure type="language" class="lenguage__image">
859-
<div class="lenguage__icon level-3"></div>
856+
<div class="language__container">
857+
<p class="language__title">Inglés</p>
858+
<figure type="language" class="language__image">
859+
<div class="language__icon level-3"></div>
860860
<figcaption class="language__caption">Fluido</figcaption>
861861
</figure>
862862
</div>
863-
<div class="lenguage__container">
864-
<p class="lenguage__title">Alemán</p>
865-
<figure type="language" class="lenguage__image">
866-
<div class="lenguage__icon level-2"></div>
863+
<div class="language__container">
864+
<p class="language__title">Alemán</p>
865+
<figure type="language" class="language__image">
866+
<div class="language__icon level-2"></div>
867867
<figcaption class="language__caption">Intermedio</figcaption>
868868
</figure>
869869
</div>
870-
<div class="lenguage__container">
871-
<p class="lenguage__title">Gallego</p>
872-
<figure type="language" class="lenguage__image">
873-
<div class="lenguage__icon level-1"></div>
870+
<div class="language__container">
871+
<p class="language__title">Gallego</p>
872+
<figure type="language" class="language__image">
873+
<div class="language__icon level-1"></div>
874874
<figcaption class="language__caption">Básico</figcaption>
875875
</figure>
876876
</div>
@@ -1060,9 +1060,9 @@ <h2 class="title">Educación</h2>
10601060
// Mueve los elementos al contenedor
10611061
myLinks && main.appendChild(myLinks);
10621062
aboutMe && main.appendChild(aboutMe);
1063-
languages && main.appendChild(languages);
10641063
hardSkills && main.appendChild(hardSkills);
10651064
softSkills && main.appendChild(softSkills);
1065+
languages && main.appendChild(languages);
10661066
experience && main.appendChild(experience);
10671067
education && main.appendChild(education);
10681068
}

packages/manfred2html/src/engine/cv-monochrome-force/html-parts/html-document-end/html-document-end.ejs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,9 +56,9 @@
5656
// Mueve los elementos al contenedor
5757
myLinks && main.appendChild(myLinks);
5858
aboutMe && main.appendChild(aboutMe);
59-
languages && main.appendChild(languages);
6059
hardSkills && main.appendChild(hardSkills);
6160
softSkills && main.appendChild(softSkills);
61+
languages && main.appendChild(languages);
6262
experience && main.appendChild(experience);
6363
education && main.appendChild(education);
6464
}

packages/manfred2html/src/engine/cv-monochrome-force/html-parts/html-document-start/html-document-start.ejs

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -365,30 +365,30 @@
365365
padding-left: var(--space-24);
366366
}
367367
368-
/* icono lenguajes */
369-
.lenguage__container {
368+
/* section languages */
369+
.language__container {
370370
display: grid;
371371
padding-inline: var(--space-8);
372372
grid-template-columns: minmax(100px, auto) minmax(114px, 1fr);
373373
align-items: center;
374374
justify-items: start;
375375
}
376-
.lenguage__container + .lenguage__container {
376+
.language__container + .language__container {
377377
padding-top: var(--space-12);
378378
}
379-
.lenguage__title {
379+
.language__title {
380380
color: var(--primary-500);
381381
font-weight: var(--fw-medium);
382382
}
383-
.lenguage__image {
383+
.language__image {
384384
min-width: 7rem;
385385
display: flex;
386386
flex-direction: column;
387387
align-items: flex-end;
388388
gap: var(--space-2);
389389
margin: 0px;
390390
}
391-
.lenguage__icon {
391+
.language__icon {
392392
width: 114px;
393393
height: 24px;
394394
clip-path: polygon(0px 100%, 100% 0px, 100% 100%);
@@ -483,7 +483,7 @@
483483
);
484484
}
485485
486-
/* experiencies */
486+
/* section experiencies */
487487
.experiencies__container {
488488
display: flex;
489489
flex-direction: column;
@@ -565,7 +565,7 @@
565565
}
566566
}
567567
568-
/* educations */
568+
/* section educations */
569569
.educations {
570570
padding-bottom: var(--space-8);
571571
}

packages/manfred2html/src/engine/cv-monochrome-force/html-parts/index.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,4 +10,5 @@ export * from './about-me-section';
1010
export * from './experience-section';
1111
export * from './soft-skills-section';
1212
export * from './relevants-links-section';
13-
export * from './hard-skills-section';
13+
export * from './hard-skills-section';
14+
export * from './language-section';
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
export * from './language-section.part';
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
import { Language } from '@/model';
2+
import { LanguageLabels } from './language-label.model';
3+
import { spanishLanguageLabels } from './language-spanish-labels.const';
4+
import { englishLanguageLabels } from './language-english-labels.const';
5+
6+
export const getLabels = (language: Language): LanguageLabels => {
7+
switch (language) {
8+
case 'es':
9+
return spanishLanguageLabels;
10+
case 'en':
11+
return englishLanguageLabels;
12+
default:
13+
throw new Error(`Language not supported: ${language}`);
14+
}
15+
};
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
import { LanguageLabels } from './language-label.model';
2+
3+
export const englishLanguageLabels: LanguageLabels = {
4+
LANGUAGE_HEADING: 'Languages',
5+
LEVEL_ONE: 'Basic',
6+
LEVEL_TWO: 'Intermediate',
7+
LEVEL_THREE: 'Fluent',
8+
LEVEL_FOUR: 'Native/bilingual',
9+
};
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
export interface LanguageLabels {
2+
LANGUAGE_HEADING: string;
3+
LEVEL_ONE: string;
4+
LEVEL_TWO: string;
5+
LEVEL_THREE: string;
6+
LEVEL_FOUR: string;
7+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
import { LanguageLabels } from './language-label.model';
2+
3+
export const spanishLanguageLabels: LanguageLabels = {
4+
LANGUAGE_HEADING: 'Idiomas',
5+
LEVEL_ONE: 'Básico',
6+
LEVEL_TWO: 'Intermedio',
7+
LEVEL_THREE: 'Fluido',
8+
LEVEL_FOUR: 'Nativo/Bilingüe',
9+
};
Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
<%_ if (languageCollection && languageCollection.length !== 0) { -%>
2+
<section class="section languages">
3+
<h2 class="title"><%- labels.LANGUAGE_HEADING %></h2>
4+
5+
<%_ for (const language of languageCollection) { -%>
6+
<%_ if (language.level ==='Habilidad básica' || language.level ==='Habilidad limitada en el trabajo') { -%>
7+
<div class="language__container">
8+
<p class="language__title"><%- language.name %></p>
9+
<figure type="language" class="language__image">
10+
<div class="language__icon level-1"></div>
11+
<figcaption class="language__caption"><%- labels.LEVEL_ONE %></figcaption>
12+
</figure>
13+
</div>
14+
<%_ } -%>
15+
<%_ if (language.level ==='Habilidad profesional en el trabajo') { -%>
16+
<div class="language__container">
17+
<p class="language__title"><%- language.name %></p>
18+
<figure type="language" class="language__image">
19+
<div class="language__icon level-2"></div>
20+
<figcaption class="language__caption"><%- labels.LEVEL_TWO %></figcaption>
21+
</figure>
22+
</div>
23+
<%_ } -%>
24+
<%_ if (language.level ==='Habilidad profesional completo') { -%>
25+
<div class="language__container">
26+
<p class="language__title"><%- language.name %></p>
27+
<figure type="language" class="language__image">
28+
<div class="language__icon level-3"></div>
29+
<figcaption class="language__caption"><%- labels.LEVEL_THREE %></figcaption>
30+
</figure>
31+
</div>
32+
<%_ } -%>
33+
<%_ if (language.level ==='Habilidad nativo o bilingüe') { -%>
34+
<div class="language__container">
35+
<p class="language__title"><%- language.name %></p>
36+
<figure type="language" class="language__image">
37+
<div class="language__icon level-4"></div>
38+
<figcaption class="language__caption"><%- labels.LEVEL_FOUR %></figcaption>
39+
</figure>
40+
</div>
41+
<%_ } -%>
42+
<%_ } -%>
43+
</section>
44+
<%_ } -%>

0 commit comments

Comments
 (0)