mirror of
https://github.com/LucasVbr/LucasVbr.git
synced 2026-05-16 17:11:50 +00:00
feat(shields): Use simpleicons to get icon.
This commit is contained in:
+2
-7
@@ -1,4 +1,4 @@
|
||||
from src.shield.shield_builder import ShieldBuilder
|
||||
from src.shield.skill_shield import SkillShield
|
||||
|
||||
|
||||
class Skill:
|
||||
@@ -7,12 +7,7 @@ class Skill:
|
||||
|
||||
def __init__(self, name: str):
|
||||
self.alt = name
|
||||
self.src = (
|
||||
ShieldBuilder()
|
||||
.set_message(name)
|
||||
.set_logo(name)
|
||||
.build()
|
||||
)
|
||||
self.src = SkillShield(name).__str__()
|
||||
|
||||
def __str__(self) -> str:
|
||||
return f""
|
||||
|
||||
+2
-9
@@ -1,4 +1,4 @@
|
||||
from src.shield.shield_builder import ShieldBuilder
|
||||
from src.shield.social_shield import SocialShield
|
||||
|
||||
|
||||
class Social:
|
||||
@@ -7,14 +7,7 @@ class Social:
|
||||
|
||||
def __init__(self, name: str, url: str):
|
||||
self.name = name
|
||||
self.img = (
|
||||
ShieldBuilder()
|
||||
.set_message(name)
|
||||
.set_logo(name)
|
||||
.set_link(url)
|
||||
.set_style("for-the-badge")
|
||||
.build()
|
||||
)
|
||||
self.img = SocialShield(name, url).__str__()
|
||||
|
||||
def __str__(self) -> str:
|
||||
return f""
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
from urllib.parse import urlunsplit, urlencode
|
||||
|
||||
from simpleicons.all import icons
|
||||
|
||||
class ShieldBuilder:
|
||||
BASE_URL = "https://img.shields.io/static/v1"
|
||||
@@ -36,7 +36,7 @@ class ShieldBuilder:
|
||||
return self
|
||||
|
||||
def set_logo(self, logo: str):
|
||||
self.logo = logo
|
||||
self.logo = icons.get(logo).slug if logo in icons else None
|
||||
return self
|
||||
|
||||
def set_logo_color(self, logo_color: str):
|
||||
|
||||
@@ -0,0 +1,33 @@
|
||||
from simpleicons.all import icons
|
||||
|
||||
from src.shield.shield_builder import ShieldBuilder
|
||||
|
||||
|
||||
class SkillShield:
|
||||
|
||||
def __init__(self, name: str = None):
|
||||
self.builder = ShieldBuilder()
|
||||
self.skill = self.set_skill(name) if name is not None else None
|
||||
|
||||
def get_skill(self):
|
||||
return self.skill
|
||||
|
||||
def set_skill(self, name: str):
|
||||
self.skill = icons.get(name)
|
||||
|
||||
if self.skill is not None:
|
||||
(self.builder.set_message(self.skill.title)
|
||||
.set_logo(self.skill.slug)
|
||||
.set_color(self.skill.hex)
|
||||
)
|
||||
else:
|
||||
self.builder.set_message(name)
|
||||
|
||||
def get_builder(self):
|
||||
return self.builder
|
||||
|
||||
def __repr__(self):
|
||||
self.__str__()
|
||||
|
||||
def __str__(self):
|
||||
return self.builder.build()
|
||||
@@ -0,0 +1,37 @@
|
||||
from simpleicons.all import icons
|
||||
|
||||
from src.shield.shield_builder import ShieldBuilder
|
||||
|
||||
|
||||
class SocialShield:
|
||||
|
||||
def __init__(self, name: str = None, url: str = None):
|
||||
self.builder = ShieldBuilder().set_style("for-the-badge")
|
||||
self.name = name
|
||||
self.url = url
|
||||
self.social = self.set_social(name, url) if name is not None and url is not None else None
|
||||
|
||||
def get_social(self):
|
||||
return self.social
|
||||
|
||||
def set_social(self, name: str, url: str):
|
||||
self.social = icons.get(name)
|
||||
|
||||
if self.social is not None:
|
||||
(self.builder.set_message(self.social.title)
|
||||
.set_logo(self.social.slug)
|
||||
.set_color(self.social.hex)
|
||||
)
|
||||
else:
|
||||
self.builder.set_message(name)
|
||||
|
||||
self.builder.set_link(url)
|
||||
|
||||
def get_builder(self):
|
||||
return self.builder
|
||||
|
||||
def __repr__(self):
|
||||
self.__str__()
|
||||
|
||||
def __str__(self):
|
||||
return self.builder.build()
|
||||
Reference in New Issue
Block a user