bravo68web-portfolio-nextjs/components/skills.jsx

58 lines
1.9 KiB
React
Raw Normal View History

2022-01-18 09:50:39 +00:00
import React, { useEffect, useState } from "react";
import Skill from "./skillCard";
import SkillsStyle from "./skills.style";
2022-04-01 16:45:30 +00:00
import axios from "handlers/axios";
import { APISDK } from "handlers/sdk";
2022-04-02 23:42:08 +00:00
import GitHubSkillCard from "./skillComponents/github_user";
import OsuUserSkillCard from "./skillComponents/osu_user";
2022-01-18 09:50:39 +00:00
function Skills() {
2022-03-30 14:37:11 +00:00
const [skills, setSkills] = useState({});
2022-04-01 16:45:30 +00:00
const [loading, setLoading] = useState(true);
2022-04-02 19:52:51 +00:00
console.log(skills);
2022-04-01 16:45:30 +00:00
2022-04-02 19:52:51 +00:00
async function requestAPIS() {
await APISDK.req();
2022-04-02 23:42:08 +00:00
APISDK.data.logo = {
osu: `https://www.pngkit.com/png/full/345-3451155_osu-logo.png`,
github: `https://www.freepnglogos.com/uploads/512x512-logo/512x512-transparent-logo-github-logo-24.png`,
spotify: `https://www.freepnglogos.com/uploads/spotify-logo-png/spotify-icon-marilyn-scott-0.png`,
hashnode: `https://cdn.hashnode.com/res/hashnode/image/upload/v1611902473383/CDyAuTy75.png?auto=compress`,
discord: `https://www.freepnglogos.com/uploads/discord-logo-png/anthrocon-twitter-quot-discord-user-wanna-21.png`,
wakatime: `https://brandeps.com/logo-download/W/WakaTime-logo-vector-01.svg`,
};
2022-04-02 19:52:51 +00:00
setSkills(APISDK.data);
setLoading(false);
}
2022-04-01 16:45:30 +00:00
2022-04-02 19:52:51 +00:00
useEffect(() => {
requestAPIS();
2022-04-01 16:45:30 +00:00
}, [loading, APISDK]);
2022-03-30 14:37:11 +00:00
return (
2022-04-01 16:45:30 +00:00
<>
{!loading && (
<SkillsStyle>
<div className="skills">
2022-04-02 23:42:08 +00:00
<GitHubSkillCard
2022-04-02 19:52:51 +00:00
title={skills?.gh_user?.data?.login}
description={skills?.gh_user?.data?.bio}
2022-04-02 23:42:08 +00:00
image={skills?.logo?.github}
/>
<OsuUserSkillCard
title={skills?.osu_user?.data[0]?.username}
image={skills?.logo?.osu}
description1={skills?.osu_user?.data[0]?.accuracy}
description2={skills?.osu_user?.data[0]?.country}
2022-04-01 16:45:30 +00:00
/>
<Skill />
<Skill />
<Skill />
</div>
</SkillsStyle>
)}
</>
2022-03-30 14:37:11 +00:00
);
2022-01-18 09:50:39 +00:00
}
export default Skills;