diff --git a/packages/manfred-common/src/doc-parts/profile-section/profile-section.mapper.spec.ts b/packages/manfred-common/src/doc-parts/profile-section/profile-section.mapper.spec.ts index 45229254..234abc54 100644 --- a/packages/manfred-common/src/doc-parts/profile-section/profile-section.mapper.spec.ts +++ b/packages/manfred-common/src/doc-parts/profile-section/profile-section.mapper.spec.ts @@ -82,6 +82,9 @@ describe('Testing profile-section.mapper.ts', () => { fullname: ' ', emails: [] as string[], relevantLinks: [] as RelevantLinkVm[], + avatarUrl: '', + city: '', + country: '', }; // Act @@ -101,6 +104,9 @@ describe('Testing profile-section.mapper.ts', () => { fullname: ' ', emails: [] as string[], relevantLinks: [] as RelevantLinkVm[], + avatarUrl: '', + city: '', + country: '', }; // Act @@ -132,6 +138,9 @@ describe('Testing profile-section.mapper.ts', () => { fullname: ' ', emails: [] as string[], relevantLinks: [] as RelevantLinkVm[], + avatarUrl: '', + city: '', + country: '', }; // Act @@ -163,6 +172,9 @@ describe('Testing profile-section.mapper.ts', () => { fullname: ' ', emails: [] as string[], relevantLinks: [] as RelevantLinkVm[], + avatarUrl: '', + city: '', + country: '', }; // Act @@ -203,6 +215,9 @@ describe('Testing profile-section.mapper.ts', () => { fullname: ' ', emails: [] as string[], relevantLinks: [] as RelevantLinkVm[], + avatarUrl: '', + city: '', + country: '', }; // Act @@ -244,6 +259,9 @@ describe('Testing profile-section.mapper.ts', () => { fullname: ' ', emails: [] as string[], relevantLinks: [] as RelevantLinkVm[], + avatarUrl: '', + city: '', + country: '', }; // Act @@ -270,9 +288,9 @@ describe('Testing profile-section.mapper.ts', () => { title: 'Computer Science Bachelor', description: 'Frontend developer', birthday: '30/03/1990', - avatar: undefined, + avatar: { link: 'http://manfredexport.com' }, contact: theContact, - location: undefined, + location: { municipality: 'Madrid', country: 'Spain' }, }; const cv: ManfredAwesomicCV = { @@ -295,6 +313,9 @@ describe('Testing profile-section.mapper.ts', () => { fullname: 'John Doe', emails: ['john.doe@mydomain.com', 'john.doe@anydomain.com'] as string[], relevantLinks: [theLink] as RelevantLinkVm[], + avatarUrl: 'http://manfredexport.com', + city: 'Madrid', + country: 'Spain', }; // Act diff --git a/packages/manfred-common/src/doc-parts/profile-section/profile-section.mapper.ts b/packages/manfred-common/src/doc-parts/profile-section/profile-section.mapper.ts index 93194a1b..032fe296 100644 --- a/packages/manfred-common/src/doc-parts/profile-section/profile-section.mapper.ts +++ b/packages/manfred-common/src/doc-parts/profile-section/profile-section.mapper.ts @@ -27,6 +27,12 @@ export const mapFromMacCvToProfileSectionVm = (cv: ManfredAwesomicCV): ProfileSe const description = cv?.aboutMe?.profile?.description ?? ''; const fullname = `${name ?? ''} ${surnames ?? ''}`; const emails = (cv?.aboutMe?.profile?.contact?.contactMails as string[]) ?? []; + + const avatarUrl = (cv?.aboutMe?.profile?.avatar?.link as string) ?? ''; + + const city = cv?.aboutMe?.profile?.location?.municipality ?? ''; + const country = cv?.aboutMe?.profile?.location?.country ?? ''; + const relevantLinks = cv?.aboutMe?.relevantLinks ? mapRelevantLinksToVm(cv.aboutMe.relevantLinks as ManfredRelevantLink[]) : []; @@ -39,5 +45,8 @@ export const mapFromMacCvToProfileSectionVm = (cv: ManfredAwesomicCV): ProfileSe fullname, emails, relevantLinks, + avatarUrl, + city, + country, }; }; diff --git a/packages/manfred-common/src/doc-parts/profile-section/profile-section.vm.ts b/packages/manfred-common/src/doc-parts/profile-section/profile-section.vm.ts index c2c848c8..f08782c7 100644 --- a/packages/manfred-common/src/doc-parts/profile-section/profile-section.vm.ts +++ b/packages/manfred-common/src/doc-parts/profile-section/profile-section.vm.ts @@ -6,6 +6,9 @@ export interface ProfileSectionVm { fullname: string; emails: string[]; relevantLinks: RelevantLinkVm[]; + avatarUrl: string; + city: string; + country: string; } export interface RelevantLinkVm { diff --git a/packages/manfred2html/src/engine/cv-monochrome-force/html-parts/header-element-end/header-element-end.ejs b/packages/manfred2html/src/engine/cv-monochrome-force/html-parts/header-element-end/header-element-end.ejs new file mode 100644 index 00000000..0064bfd2 --- /dev/null +++ b/packages/manfred2html/src/engine/cv-monochrome-force/html-parts/header-element-end/header-element-end.ejs @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/packages/manfred2html/src/engine/cv-monochrome-force/html-parts/header-element-end/header-element-end.part.ts b/packages/manfred2html/src/engine/cv-monochrome-force/html-parts/header-element-end/header-element-end.part.ts new file mode 100644 index 00000000..8412032b --- /dev/null +++ b/packages/manfred2html/src/engine/cv-monochrome-force/html-parts/header-element-end/header-element-end.part.ts @@ -0,0 +1,4 @@ +import ejs from 'ejs'; +import headerElementEndTemplate from './header-element-end.ejs?raw'; + +export const generateHeaderElementEnd = (): string => ejs.render(headerElementEndTemplate); diff --git a/packages/manfred2html/src/engine/cv-monochrome-force/html-parts/header-element-end/index.ts b/packages/manfred2html/src/engine/cv-monochrome-force/html-parts/header-element-end/index.ts new file mode 100644 index 00000000..a3cb12e2 --- /dev/null +++ b/packages/manfred2html/src/engine/cv-monochrome-force/html-parts/header-element-end/index.ts @@ -0,0 +1 @@ +export * from './header-element-end.part'; diff --git a/packages/manfred2html/src/engine/cv-monochrome-force/html-parts/header-element-start/header-element-start.ejs b/packages/manfred2html/src/engine/cv-monochrome-force/html-parts/header-element-start/header-element-start.ejs new file mode 100644 index 00000000..3a6bd2e0 --- /dev/null +++ b/packages/manfred2html/src/engine/cv-monochrome-force/html-parts/header-element-start/header-element-start.ejs @@ -0,0 +1,2 @@ +
+
\ No newline at end of file diff --git a/packages/manfred2html/src/engine/cv-monochrome-force/html-parts/header-element-start/header-element-start.part.ts b/packages/manfred2html/src/engine/cv-monochrome-force/html-parts/header-element-start/header-element-start.part.ts new file mode 100644 index 00000000..df24cee8 --- /dev/null +++ b/packages/manfred2html/src/engine/cv-monochrome-force/html-parts/header-element-start/header-element-start.part.ts @@ -0,0 +1,4 @@ +import ejs from 'ejs'; +import headerElementStartTemplate from './header-element-start.ejs?raw'; + +export const generateHeaderElementStart = (): string => ejs.render(headerElementStartTemplate); diff --git a/packages/manfred2html/src/engine/cv-monochrome-force/html-parts/header-element-start/index.ts b/packages/manfred2html/src/engine/cv-monochrome-force/html-parts/header-element-start/index.ts new file mode 100644 index 00000000..9eca2091 --- /dev/null +++ b/packages/manfred2html/src/engine/cv-monochrome-force/html-parts/header-element-start/index.ts @@ -0,0 +1 @@ +export * from './header-element-start.part'; diff --git a/packages/manfred2html/src/engine/cv-monochrome-force/html-parts/html-document-end/html-document-end.ejs b/packages/manfred2html/src/engine/cv-monochrome-force/html-parts/html-document-end/html-document-end.ejs index aa62be64..41cef49e 100644 --- a/packages/manfred2html/src/engine/cv-monochrome-force/html-parts/html-document-end/html-document-end.ejs +++ b/packages/manfred2html/src/engine/cv-monochrome-force/html-parts/html-document-end/html-document-end.ejs @@ -1,4 +1,4 @@ -