-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathcomponent---src-pages-cv-tsx-87dd92a7caf42e501482.js.map
1 lines (1 loc) · 14 KB
/
component---src-pages-cv-tsx-87dd92a7caf42e501482.js.map
1
{"version":3,"file":"component---src-pages-cv-tsx-87dd92a7caf42e501482.js","mappings":"6IAgCA,IApBsCA,IAAAA,IAAC,SAAEC,EAAQ,KAAEC,GAAM,SACvDC,EAAAA,cAAAA,MAAAA,CAAKC,UAAU,eACbD,EAAAA,cAACE,EAAAA,EAAM,CACLC,MAAOJ,EAAKK,KACZC,KAAM,CACJ,CACED,KAAM,cACNE,QAASP,EAAKQ,SAEhB,CAAEH,KAAM,WAAYE,QAAS,gCAGjCN,EAAAA,cAAAA,OAAAA,CACEQ,IAAI,aACJC,KAAK,wEAEPT,EAAAA,cAAAA,MAAAA,KAAMF,GACF,C,kFCaR,MArB4CD,IAAoB,IAAnB,UAAEa,GAAW,EACxD,MAAMC,EAAoBD,EAAUE,KAAI,CAACC,EAAQC,IAC/Cd,EAAAA,cAAAA,MAAAA,CAAKe,IAAKD,GACRd,EAAAA,cAAAA,KAAAA,CAAIC,UAAU,aAAaY,EAAOG,KAAKC,aACvCjB,EAAAA,cAAAA,IAAAA,CAAGC,UAAU,gBACVY,EAAOG,KAAKE,UAAU,MAAIL,EAAOG,KAAKG,SAEzCnB,EAAAA,cAAAA,IAAAA,KACGa,EAAOG,KAAKI,UAAU,OAAKP,EAAOG,KAAKK,SAK9C,OACErB,EAAAA,cAAAA,MAAAA,KACEA,EAAAA,cAAAA,KAAAA,CAAIC,UAAU,qCAAoC,aACjDU,EACG,ECwBV,MArCoCd,IAAiB,IAAhB,OAAEyB,GAAQ,EAC7C,MAAMC,EAAWD,EAAOC,SAASX,KAAI,CAACY,EAASV,KAC7C,MAAMW,EAAMD,EAAQC,IAAMzB,EAAAA,cAAAA,IAAAA,CAAGS,KAAMe,EAAQC,KAAMD,EAAQE,UAAgBF,EAAQE,SACjF,OACE1B,EAAAA,cAAAA,MAAAA,CAAKe,IAAKD,GACPU,EAAQG,SAAW3B,EAAAA,cAAAA,SAAAA,KAASwB,EAAQG,QAAQ,MAC5CF,EACG,IAIV,OACEzB,EAAAA,cAAAA,MAAAA,KACEA,EAAAA,cAAAA,MAAAA,CAAKC,UAAU,uBACbD,EAAAA,cAAAA,MAAAA,CAAK4B,IAAKN,EAAOO,QAAS5B,UAAU,eAAe6B,IAAKR,EAAOlB,QAEjEJ,EAAAA,cAAAA,KAAAA,CAAIC,UAAU,aAAaqB,EAAOlB,MAClCJ,EAAAA,cAAAA,IAAAA,CAAGC,UAAU,wBAAwBqB,EAAOS,OAE5C/B,EAAAA,cAAAA,KAAAA,CAAIC,UAAU,qCAAoC,WAClDD,EAAAA,cAAAA,MAAAA,KACEA,EAAAA,cAAAA,SAAAA,KAAQ,WACRA,EAAAA,cAAAA,IAAAA,CAAGS,KAAO,UAASa,EAAOU,SAAUV,EAAOU,QAE7ChC,EAAAA,cAAAA,MAAAA,KACEA,EAAAA,cAAAA,SAAAA,KAAQ,WACPsB,EAAOW,OAEVjC,EAAAA,cAAAA,MAAAA,KACEA,EAAAA,cAAAA,SAAAA,KAAQ,aACPsB,EAAOY,SAETX,EACG,ECvBV,MAlBsC1B,IAAiB,IAAhB,OAAEsC,GAAQ,EAC/C,MAAMC,EAAWD,EAAOvB,KAAI,CAACyB,EAAOvB,IAClCd,EAAAA,cAAAA,MAAAA,CACEe,IAAKD,EACLb,UAAU,uFAEToC,EAAMrB,KAAKZ,QAIhB,OACEJ,EAAAA,cAAAA,MAAAA,KACEA,EAAAA,cAAAA,KAAAA,CAAIC,UAAU,qCAAoC,UACjDmC,EACG,EC8BV,MAjCkCvC,IAAe,IAAd,KAAEyC,GAAM,EACzC,MAAMC,EAASD,EAAK1B,KAAI,CAAC0B,EAAMxB,KAC7B,MAAMW,EAAMa,EAAKtB,KAAKkB,QACpBlC,EAAAA,cAAAA,IAAAA,CAAGS,KAAM6B,EAAKtB,KAAKkB,SAAUI,EAAKtB,KAAKwB,SACrC,KAEEC,EAAaH,EAAKtB,KAAKyB,WAAW7B,KAAI,CAAC8B,EAAW5B,IACtDd,EAAAA,cAAAA,KAAAA,CAAIe,IAAKD,EAAGb,UAAU,aACnByC,KAIL,OACE1C,EAAAA,cAAAA,MAAAA,CAAKe,IAAKD,GACRd,EAAAA,cAAAA,KAAAA,CAAIC,UAAU,sBAAsBwB,GACpCzB,EAAAA,cAAAA,KAAAA,CAAIC,UAAU,sBAAsBqC,EAAKtB,KAAK2B,UAC9C3C,EAAAA,cAAAA,IAAAA,CAAGC,UAAU,6BACVqC,EAAKtB,KAAKE,UAAU,MAAIoB,EAAKtB,KAAKG,SAAW,WAEhDnB,EAAAA,cAAAA,IAAAA,KAAIsC,EAAKtB,KAAKT,SACdP,EAAAA,cAAAA,KAAAA,CAAIC,UAAU,+BAA+BwC,GACzC,IAIV,OACEzC,EAAAA,cAAAA,MAAAA,KACEA,EAAAA,cAAAA,KAAAA,CAAIC,UAAU,qCAAoC,mBACjDsC,EACG,E,UCwDV,MAhC8B1C,IAAc,IAAb,KAAEE,GAAM,EACrC,OACEC,EAAAA,cAAC4C,EAAAA,EAAM,CAAC7C,KAAMA,EAAK8C,MAAMC,OACvB9C,EAAAA,cAAAA,MAAAA,CAAKC,UAAU,6CACbD,EAAAA,cAAAA,MAAAA,CAAKC,UAAU,kCACbD,EAAAA,cAAAA,MAAAA,KACEA,EAAAA,cAAC+C,EAAK,CAACzB,OAAQvB,EAAK8C,MAAMC,QAC1B9C,EAAAA,cAAAA,KAAAA,CAAIC,UAAU,yBACdD,EAAAA,cAACgD,EAAM,CAACb,OAAQpC,EAAKkD,SAASC,QAC9BlD,EAAAA,cAAAA,KAAAA,CAAIC,UAAU,yBACdD,EAAAA,cAACmD,EAAS,CAACzC,UAAWX,EAAKqD,aAAaF,QACxClD,EAAAA,cAAAA,KAAAA,CAAIC,UAAU,yBACdD,EAAAA,cAAAA,MAAAA,CAAKC,UAAU,QACbD,EAAAA,cAAAA,IAAAA,CACES,KAAK,8CACLD,IAAI,aACJ6C,OAAO,SACPpD,UAAU,0CAEVD,EAAAA,cAAAA,IAAAA,CAAGC,UAAU,mBAAqB,sBAIxCD,EAAAA,cAAAA,MAAAA,CAAKC,UAAU,QACbD,EAAAA,cAACsD,EAAI,CAAChB,KAAMvC,EAAKwD,QAAQL,WAIxB,C","sources":["webpack://my-gatsby-site/./src/layouts/index.tsx","webpack://my-gatsby-site/./src/components/cv/education.tsx","webpack://my-gatsby-site/./src/components/cv/intro.tsx","webpack://my-gatsby-site/./src/components/cv/skills.tsx","webpack://my-gatsby-site/./src/components/cv/work.tsx","webpack://my-gatsby-site/./src/pages/cv.tsx"],"sourcesContent":["import React from \"react\";\r\nimport Helmet from \"react-helmet\";\r\n\r\n// Define types for the props\r\ninterface LayoutProps {\r\n children: React.ReactNode;\r\n data: {\r\n name: string;\r\n summary: string;\r\n };\r\n}\r\n\r\nconst Layout: React.FC<LayoutProps> = ({ children, data }) => (\r\n <div className=\"bg-gray-300\">\r\n <Helmet\r\n title={data.name}\r\n meta={[\r\n {\r\n name: \"description\",\r\n content: data.summary,\r\n },\r\n { name: \"keywords\", content: \"frontend dev, react, blog\" },\r\n ]}\r\n />\r\n <link\r\n rel=\"stylesheet\"\r\n href=\"https://fonts.googleapis.com/css?family=Fira+Sans:400,400i,600,600i\"\r\n />\r\n <div>{children}</div>\r\n </div>\r\n);\r\n\r\nexport default Layout;\r\n","import React from \"react\";\r\n\r\n// Define types for education node\r\ninterface EducationNode {\r\n institution: string;\r\n startDate: string;\r\n endDate: string;\r\n studyType: string;\r\n area: string;\r\n}\r\n\r\n// Define the structure of education edges\r\ninterface EducationEdge {\r\n node: EducationNode;\r\n}\r\n\r\n// Define the props for the Education component\r\ninterface EducationProps {\r\n education: EducationEdge[];\r\n}\r\n\r\nconst Education: React.FC<EducationProps> = ({ education }) => {\r\n const educationElements = education.map((school, i) => (\r\n <div key={i}>\r\n <h2 className=\"font-bold\">{school.node.institution}</h2>\r\n <p className=\"italics mb-2\">\r\n {school.node.startDate} — {school.node.endDate}\r\n </p>\r\n <p>\r\n {school.node.studyType} in {school.node.area}\r\n </p>\r\n </div>\r\n ));\r\n\r\n return (\r\n <div>\r\n <h1 className=\"font-bold font-mono my-4 text-2xl\">Education</h1>\r\n {educationElements}\r\n </div>\r\n );\r\n};\r\n\r\nexport default Education;\r\n","import React from \"react\";\r\n\r\n// Define the structure of a profile\r\ninterface Profile {\r\n network?: string;\r\n username?: string;\r\n url?: string;\r\n}\r\n\r\n// Define the structure of the basics prop\r\ninterface Basics {\r\n picture: string;\r\n name: string;\r\n label: string;\r\n email: string;\r\n phone: string;\r\n website: string;\r\n profiles: Profile[];\r\n}\r\n\r\n// Define the props for the Intro component\r\ninterface IntroProps {\r\n basics: Basics;\r\n}\r\n\r\nconst Intro: React.FC<IntroProps> = ({ basics }) => {\r\n const profiles = basics.profiles.map((profile, i) => {\r\n const url = profile.url ? <a href={profile.url}>{profile.username}</a> : profile.username;\r\n return (\r\n <div key={i}>\r\n {profile.network && <strong>{profile.network}: </strong>}\r\n {url}\r\n </div>\r\n );\r\n });\r\n\r\n return (\r\n <div>\r\n <div className=\"flex justify-center\">\r\n <img src={basics.picture} className=\"rounded-full\" alt={basics.name} />\r\n </div>\r\n <h1 className=\"font-bold\">{basics.name}</h1>\r\n <p className=\"italic mb-4 text-2xl\">{basics.label}</p>\r\n\r\n <h1 className=\"font-bold font-mono my-4 text-2xl\">Contact</h1>\r\n <div>\r\n <strong>Email: </strong>\r\n <a href={`mailto:${basics.email}`}>{basics.email}</a>\r\n </div>\r\n <div>\r\n <strong>Phone: </strong>\r\n {basics.phone}\r\n </div>\r\n <div>\r\n <strong>Website: </strong>\r\n {basics.website}\r\n </div>\r\n {profiles}\r\n </div>\r\n );\r\n};\r\n\r\nexport default Intro;\r\n","import React from \"react\";\r\n\r\n// Define the structure of each skill item\r\ninterface SkillNode {\r\n name: string;\r\n}\r\n\r\n// Define the structure of the skills prop\r\ninterface SkillEdge {\r\n node: SkillNode;\r\n}\r\n\r\n// Define the props for the Skills component\r\ninterface SkillsProps {\r\n skills: SkillEdge[];\r\n}\r\n\r\nconst Skills: React.FC<SkillsProps> = ({ skills }) => {\r\n const skillsEl = skills.map((skill, i) => (\r\n <div\r\n key={i}\r\n className=\"rounded-full inline-block h-10 text-white px-3 pt-2 mb-1 mr-1 font-bold bg-gray-800\"\r\n >\r\n {skill.node.name}\r\n </div>\r\n ));\r\n\r\n return (\r\n <div>\r\n <h1 className=\"font-bold font-mono my-4 text-2xl\">Skills</h1>\r\n {skillsEl}\r\n </div>\r\n );\r\n};\r\n\r\nexport default Skills;\r\n","import React from \"react\";\r\n\r\n// Define the structure of each highlight\r\ninterface WorkHighlight {\r\n [index: number]: string; // Since highlights is an array of strings\r\n}\r\n\r\n// Define the structure of each work node\r\ninterface WorkNode {\r\n company: string;\r\n website?: string;\r\n position: string;\r\n startDate: string;\r\n endDate?: string;\r\n summary: string;\r\n highlights: WorkHighlight;\r\n}\r\n\r\n// Define the structure of the work prop\r\ninterface WorkEdge {\r\n node: WorkNode;\r\n}\r\n\r\n// Define the props for the Work component\r\ninterface WorkProps {\r\n work: WorkEdge[];\r\n}\r\n\r\nconst Work: React.FC<WorkProps> = ({ work }) => {\r\n const workEl = work.map((work, i) => {\r\n const url = work.node.website ? (\r\n <a href={work.node.website}>{work.node.company}</a>\r\n ) : null;\r\n\r\n const highlights = work.node.highlights.map((highlight, i) => (\r\n <li key={i} className=\"list-disc\">\r\n {highlight}\r\n </li>\r\n ));\r\n\r\n return (\r\n <div key={i}>\r\n <h1 className=\"font-bold text-2xl\">{url}</h1>\r\n <h4 className=\"mt-4 text-gray-700\">{work.node.position}</h4>\r\n <p className=\"italic mb-2 text-gray-700\">\r\n {work.node.startDate} — {work.node.endDate || \"present\"}\r\n </p>\r\n <p>{work.node.summary}</p>\r\n <ul className=\"text-md font-mono pl-8 py-4\">{highlights}</ul>\r\n </div>\r\n );\r\n });\r\n\r\n return (\r\n <div>\r\n <h1 className=\"font-bold font-mono my-4 text-2xl\">Work Experience</h1>\r\n {workEl}\r\n </div>\r\n );\r\n};\r\n\r\nexport default Work;\r\n","import React from \"react\";\r\nimport { graphql, PageProps } from \"gatsby\";\r\nimport Education from \"../components/cv/education\";\r\nimport Intro from \"../components/cv/intro\";\r\nimport Skills from \"../components/cv/skills\";\r\nimport Work from \"../components/cv/work\";\r\nimport Layout from \"../layouts\";\r\n\r\n// Define types for GraphQL data\r\ninterface Profile {\r\n network: string;\r\n username: string;\r\n url: string;\r\n}\r\n\r\ninterface BasicData {\r\n profiles: Profile[];\r\n email: string;\r\n headline: string;\r\n label: string;\r\n name: string;\r\n phone: string;\r\n picture: string;\r\n region: string;\r\n summary: string;\r\n username: string;\r\n website: string;\r\n yearsOfExperience: number;\r\n}\r\n\r\ninterface SkillNode {\r\n name: string;\r\n level: string;\r\n rating: number;\r\n yearsOfExperience: number;\r\n}\r\n\r\ninterface EducationNode {\r\n institution: string;\r\n startDate: string;\r\n endDate: string;\r\n studyType: string;\r\n area: string;\r\n}\r\n\r\ninterface WorkNode {\r\n name: string;\r\n company: string;\r\n website: string;\r\n highlights: string[];\r\n position: string;\r\n summary: string;\r\n startDate: string;\r\n endDate: string;\r\n}\r\n\r\ninterface CvDataProps {\r\n basic: {\r\n id: string;\r\n value: BasicData;\r\n };\r\n allSkill: {\r\n edges: {\r\n node: SkillNode;\r\n }[];\r\n };\r\n allEducation: {\r\n edges: {\r\n node: EducationNode;\r\n }[];\r\n };\r\n allWork: {\r\n edges: {\r\n node: WorkNode;\r\n }[];\r\n };\r\n}\r\n\r\n// Define the component props type\r\ntype CVProps = PageProps<CvDataProps>;\r\n\r\nconst CV: React.FC<CVProps> = ({ data }) => {\r\n return (\r\n <Layout data={data.basic.value}>\r\n <div className=\"container mx-auto min-h-screen pt-8 pb-20\">\r\n <div className=\"grid grid-cols-side gap-2 pl-4\">\r\n <div>\r\n <Intro basics={data.basic.value} />\r\n <hr className=\"border-t-2 h-px mt-4\" />\r\n <Skills skills={data.allSkill.edges} />\r\n <hr className=\"border-t-2 h-px mt-4\" />\r\n <Education education={data.allEducation.edges} />\r\n <hr className=\"border-t-2 h-px my-4\" />\r\n <div className=\"my-4\">\r\n <a\r\n href=\"https://gitconnected.com/rycastaneda/resume\"\r\n rel=\"noreferrer\"\r\n target=\"_blank\"\r\n className=\"bg-gray-800 text-white py-2 px-4 mb-12\"\r\n >\r\n <i className=\"bi bi-download\"></i> Download as PDF\r\n </a>\r\n </div>\r\n </div>\r\n <div className=\"ml-8\">\r\n <Work work={data.allWork.edges} />\r\n </div>\r\n </div>\r\n </div>\r\n </Layout>\r\n );\r\n};\r\n\r\nexport default CV;\r\n\r\nexport const query = graphql`\r\n query CvData {\r\n basic {\r\n id\r\n value {\r\n profiles {\r\n network\r\n username\r\n url\r\n }\r\n email\r\n headline\r\n label\r\n name\r\n phone\r\n picture\r\n region\r\n summary\r\n username\r\n website\r\n yearsOfExperience\r\n }\r\n }\r\n allSkill {\r\n edges {\r\n node {\r\n name\r\n level\r\n rating\r\n yearsOfExperience\r\n }\r\n }\r\n }\r\n allEducation {\r\n edges {\r\n node {\r\n institution\r\n startDate\r\n endDate\r\n studyType\r\n area\r\n }\r\n }\r\n }\r\n allWork {\r\n edges {\r\n node {\r\n name\r\n company\r\n website\r\n highlights\r\n position\r\n summary\r\n startDate\r\n endDate\r\n }\r\n }\r\n }\r\n }\r\n`;\r\n"],"names":["_ref","children","data","React","className","Helmet","title","name","meta","content","summary","rel","href","education","educationElements","map","school","i","key","node","institution","startDate","endDate","studyType","area","basics","profiles","profile","url","username","network","src","picture","alt","label","email","phone","website","skills","skillsEl","skill","work","workEl","company","highlights","highlight","position","Layout","basic","value","Intro","Skills","allSkill","edges","Education","allEducation","target","Work","allWork"],"sourceRoot":""}