Skip to content

Commit 20967f3

Browse files
addign validation for categories
1 parent f3be570 commit 20967f3

File tree

1 file changed

+35
-25
lines changed

1 file changed

+35
-25
lines changed

src/components/profile/profileHeader.astro

Lines changed: 35 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,10 @@ import DropdownMenuVerticalDots from "../ui/dropdownMenuVerticalDots.astro";
77
88
const { profile } = Astro.props;
99
10-
let profileIconsSizeClasses = "md:w-5 md:h-5 w-6 h-6"
11-
let profileIconsPaddingClasses= "p-2"
10+
let profileIconsSizeClasses = "md:w-5 md:h-5 w-6 h-6";
11+
let profileIconsPaddingClasses = "p-2";
1212
---
13+
1314
<div
1415
class="bg-white border md:mx-auto mb-5 -mt-6 md:mt-12 lg:max-w-[58rem] border-gray-200 rounded-lg dark:bg-gray-800 dark:border-gray-700 dark:text-gray-100 w-full"
1516
>
@@ -61,8 +62,8 @@ let profileIconsPaddingClasses= "p-2"
6162
text="Web"
6263
target="_blank"
6364
id="profile-web"
64-
size={ profileIconsSizeClasses }
65-
padding={ profileIconsPaddingClasses }
65+
size={profileIconsSizeClasses}
66+
padding={profileIconsPaddingClasses}
6667
/>
6768
)
6869
}
@@ -75,8 +76,8 @@ let profileIconsPaddingClasses= "p-2"
7576
text="Email"
7677
target="_blank"
7778
id="profile-email"
78-
size={ profileIconsSizeClasses }
79-
padding={ profileIconsPaddingClasses }
79+
size={profileIconsSizeClasses}
80+
padding={profileIconsPaddingClasses}
8081
/>
8182
)
8283
}
@@ -88,8 +89,8 @@ let profileIconsPaddingClasses= "p-2"
8889
text="Twitter"
8990
target="_blank"
9091
id="profile-twitter"
91-
size={ profileIconsSizeClasses }
92-
padding={ profileIconsPaddingClasses }
92+
size={profileIconsSizeClasses}
93+
padding={profileIconsPaddingClasses}
9394
/>
9495
)
9596
}
@@ -101,8 +102,8 @@ let profileIconsPaddingClasses= "p-2"
101102
text="Telegram"
102103
target="_blank"
103104
id="profile-telegram"
104-
size={ profileIconsSizeClasses }
105-
padding={ profileIconsPaddingClasses }
105+
size={profileIconsSizeClasses}
106+
padding={profileIconsPaddingClasses}
106107
/>
107108
)
108109
}
@@ -114,8 +115,8 @@ let profileIconsPaddingClasses= "p-2"
114115
text="Linkedin"
115116
target="_blank"
116117
id="profile-linkedin"
117-
size={ profileIconsSizeClasses }
118-
padding={ profileIconsPaddingClasses }
118+
size={profileIconsSizeClasses}
119+
padding={profileIconsPaddingClasses}
119120
/>
120121
)
121122
}
@@ -127,12 +128,12 @@ let profileIconsPaddingClasses= "p-2"
127128
text="GitHub"
128129
target="_blank"
129130
id="profile-github"
130-
size={ profileIconsSizeClasses }
131-
padding={ profileIconsPaddingClasses }
131+
size={profileIconsSizeClasses}
132+
padding={profileIconsPaddingClasses}
132133
/>
133134
)
134135
}
135-
<DropdownMenuVerticalDots/>
136+
<DropdownMenuVerticalDots />
136137
</div>
137138
</div>
138139
<div
@@ -143,15 +144,21 @@ let profileIconsPaddingClasses= "p-2"
143144
{
144145
profile.location && (
145146
<div class="flex items-center md:mr-5 mr-3">
146-
<img src="/assets/img/icons/map.svg" class="w-5 h-5 inline dark:invert dark:saturate-0 dark:contrast-200" />
147+
<img
148+
src="/assets/img/icons/map.svg"
149+
class="w-5 h-5 inline dark:invert dark:saturate-0 dark:contrast-200"
150+
/>
147151
<spam class="ml-1">{profile.location}</spam>
148152
</div>
149153
)
150154
}
151155
{
152156
profile.company && (
153157
<div class="flex items-center md:mr-5 mr-3">
154-
<img src="/assets/img/icons/company.svg" class="w-5 h-5 inline dark:invert dark:saturate-0 dark:contrast-200" />
158+
<img
159+
src="/assets/img/icons/company.svg"
160+
class="w-5 h-5 inline dark:invert dark:saturate-0 dark:contrast-200"
161+
/>
155162
<spam class="ml-1">{profile.company}</spam>
156163
</div>
157164
)
@@ -160,14 +167,17 @@ let profileIconsPaddingClasses= "p-2"
160167
<div class="text-sm mb-3 font-normal text-center md:text-left text-gray-900 dark:text-gray-100">{profile.bio}</div>
161168
<div class="flex flex-wrap justify-center md:justify-start">
162169
{
163-
profile.categories.map((role) => (
164-
<a
165-
href={"/directorio/" + categories[role].slug}
166-
class="inline rounded-md bg-gray-50 dark:bg-gray-700 dark:hover:bg-gray-600 text-gray-800 dark:text-gray-100 my-1 font-normal text-sm py-1 px-2 mr-3 "
167-
>
168-
{categories[role].text}
169-
</a>
170-
))
170+
profile.categories.map(
171+
(role) =>
172+
categories[role] && (
173+
<a
174+
href={"/directorio/" + categories[role].slug}
175+
class="inline rounded-md bg-gray-50 dark:bg-gray-700 dark:hover:bg-gray-600 text-gray-800 dark:text-gray-100 my-1 font-normal text-sm py-1 px-2 mr-3 "
176+
>
177+
{categories[role].text}
178+
</a>
179+
)
180+
)
171181
}
172182
</div>
173183
</div>

0 commit comments

Comments
 (0)