diff --git a/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/about-me-section/about-me-section.ejs b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/about-me-section/about-me-section.ejs new file mode 100644 index 00000000..30e9595c --- /dev/null +++ b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/about-me-section/about-me-section.ejs @@ -0,0 +1,11 @@ +<%_ if (profile && profile !== 'undefined' ) { -%> +
+
+ + + +

Sobre mi

+
+

<%= profile?.description %>

+
+<%_ } -%> diff --git a/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/about-me-section/about-me-section.part.ts b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/about-me-section/about-me-section.part.ts new file mode 100644 index 00000000..bfc3b41c --- /dev/null +++ b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/about-me-section/about-me-section.part.ts @@ -0,0 +1,17 @@ +import ejs from 'ejs'; +import { ProfileSectionVm, mapFromMacCvToProfileSectionVm } from '@lemoncode/manfred-common/profile-section'; +import { ManfredAwesomicCV } from '@/model'; +import aboutMeSection from './about-me-section.ejs?raw'; + +export const generateAboutMeSection = (cv: ManfredAwesomicCV): string => { + const profileSectionVm = mapFromMacCvToProfileSectionVm(cv); + return generateAboutMeSectionInner(profileSectionVm); +}; + +const generateAboutMeSectionInner = (profileSectionVm: ProfileSectionVm): string => { + const rootObject = { + profile: profileSectionVm, + }; + + return ejs.render(aboutMeSection, rootObject); +}; diff --git a/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/about-me-section/index.ts b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/about-me-section/index.ts new file mode 100644 index 00000000..b0ee7d15 --- /dev/null +++ b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/about-me-section/index.ts @@ -0,0 +1 @@ +export * from './about-me-section.part'; diff --git a/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/index.ts b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/index.ts index 323c8406..4c06698e 100644 --- a/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/index.ts +++ b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/index.ts @@ -3,3 +3,6 @@ export * from './html-document-end'; export * from './header-element-start'; export * from './header-element-end'; export * from './header-section'; +export * from './main-element-start'; +export * from './main-element-end'; +export * from './about-me-section'; diff --git a/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/main-element-end/index.ts b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/main-element-end/index.ts new file mode 100644 index 00000000..43da82c1 --- /dev/null +++ b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/main-element-end/index.ts @@ -0,0 +1 @@ +export * from './main-element-end.part'; diff --git a/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/main-element-end/main-element-end.ejs b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/main-element-end/main-element-end.ejs new file mode 100644 index 00000000..0f4bf453 --- /dev/null +++ b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/main-element-end/main-element-end.ejs @@ -0,0 +1 @@ + diff --git a/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/main-element-end/main-element-end.part.ts b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/main-element-end/main-element-end.part.ts new file mode 100644 index 00000000..ad9c1b96 --- /dev/null +++ b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/main-element-end/main-element-end.part.ts @@ -0,0 +1,4 @@ +import ejs from 'ejs'; +import mainElementEndTemplate from './main-element-end.ejs?raw'; + +export const generateMainElementEnd = (): string => ejs.render(mainElementEndTemplate); diff --git a/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/main-element-start/index.ts b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/main-element-start/index.ts new file mode 100644 index 00000000..5286e5ba --- /dev/null +++ b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/main-element-start/index.ts @@ -0,0 +1 @@ +export * from './main-element-start.part'; diff --git a/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/main-element-start/main-element-start.ejs b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/main-element-start/main-element-start.ejs new file mode 100644 index 00000000..506713e2 --- /dev/null +++ b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/main-element-start/main-element-start.ejs @@ -0,0 +1 @@ +
diff --git a/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/main-element-start/main-element-start.part.ts b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/main-element-start/main-element-start.part.ts new file mode 100644 index 00000000..0a903b79 --- /dev/null +++ b/packages/manfred2html/src/engine/cv-x-wing-squadron/html-parts/main-element-start/main-element-start.part.ts @@ -0,0 +1,4 @@ +import ejs from 'ejs'; +import mainElementTemplate from './main-element-start.ejs?raw'; + +export const generateMainElementStart = (): string => ejs.render(mainElementTemplate); diff --git a/packages/manfred2html/src/engine/cv-x-wing-squadron/index.ts b/packages/manfred2html/src/engine/cv-x-wing-squadron/index.ts index 132262ee..2622c5cc 100644 --- a/packages/manfred2html/src/engine/cv-x-wing-squadron/index.ts +++ b/packages/manfred2html/src/engine/cv-x-wing-squadron/index.ts @@ -5,6 +5,9 @@ import { generateHeaderElementEnd, generateHeaderElementStart, generateHeaderSection, + generateMainElementStart, + generateAboutMeSection, + generateMainElementEnd, } from './html-parts'; export const exportManfredJsonToCVXWingHTML = (manfredJsonContent: ManfredAwesomicCV): string => { @@ -13,12 +16,17 @@ export const exportManfredJsonToCVXWingHTML = (manfredJsonContent: ManfredAwesom const headerElementStart = generateHeaderElementStart(); const headerElementEnd = generateHeaderElementEnd(); const headerSection = generateHeaderSection(manfredJsonContent); - + const mainElementStart = generateMainElementStart(); + const aboutMeSection = generateAboutMeSection(manfredJsonContent); + const mainElementEnd = generateMainElementEnd(); return ` ${htmlDocumentStart} ${headerElementStart} ${headerSection} ${headerElementEnd} + ${mainElementStart} + ${aboutMeSection} + ${mainElementEnd} ${htmlDocumentEnd} `; };