@@ -123,9 +123,16 @@ defmodule AlgoraWeb.Admin.DevsLive do
123
123
defp match_card ( assigns ) do
124
124
~H"""
125
125
< div class = "h-full relative border ring-1 ring-transparent hover:ring-border transition-all bg-card group rounded-xl text-card-foreground shadow p-6 " >
126
- < div class = "w-full truncate " >
126
+ <%= if @ user . provider_meta [ "hireable" ] do %>
127
+ < div class = "absolute top-0 right-0 " >
128
+ < . badge variant = "success " >
129
+ Hireable
130
+ </ . badge >
131
+ </ div >
132
+ <% end %>
133
+ < div class = "w-full " >
127
134
< div class = "flex flex-col sm:flex-row sm:items-center sm:justify-between gap-4 " >
128
- < div class = "flex items-center gap-4 " >
135
+ < div class = "flex gap-4 truncate " >
129
136
< . link navigate = { User . url ( @ user ) } >
130
137
< . avatar class = "h-12 w-12 rounded-full " >
131
138
< . avatar_image src = { @ user . avatar_url } alt = { @ user . name } />
@@ -135,7 +142,7 @@ defmodule AlgoraWeb.Admin.DevsLive do
135
142
</ . avatar >
136
143
</ . link >
137
144
138
- < div >
145
+ < div class = " truncate w-full " >
139
146
< div class = "flex items-center gap-1 text-base text-foreground " >
140
147
< . link navigate = { User . url ( @ user ) } class = "font-semibold hover:underline " >
141
148
{ @ user . name }
@@ -144,9 +151,15 @@ defmodule AlgoraWeb.Admin.DevsLive do
144
151
</ span >
145
152
</ . link >
146
153
</ div >
154
+ < div
155
+ :if = { @ user . provider_meta [ "company" ] }
156
+ class = "flex group-hover:hidden items-center gap-1 font-semibold text-sm text-muted-foreground "
157
+ >
158
+ { @ user . provider_meta [ "company" ] |> String . trim_leading ( "https://" ) }
159
+ </ div >
147
160
< div
148
161
:if = { @ user . provider_meta }
149
- class = "pt-0.5 flex items-center gap-x-2 gap-y-1 text-xs text-muted-foreground max-w-[250px] 2xl:max-w-none truncate "
162
+ class = "hidden group-hover:flex pt-0.5 items-center gap-x-2 gap-y-2 text-xs text-muted-foreground truncate "
150
163
>
151
164
< . link
152
165
:if = { @ user . provider_login }
@@ -155,55 +168,26 @@ defmodule AlgoraWeb.Admin.DevsLive do
155
168
class = "flex items-center gap-1 hover:underline "
156
169
>
157
170
< . icon name = "github " class = "shrink-0 h-4 w-4 " />
158
- < span class = "line-clamp-1 " > { @ user . provider_login } </ span >
159
171
</ . link >
160
172
< . link
161
- :if = { @ user . provider_meta [ "twitter_handle " ] }
162
- href = { "https://x.com/#{ @ user . provider_meta [ "twitter_handle " ] } " }
173
+ :if = { @ user . provider_meta [ "twitter_username " ] }
174
+ href = { "https://x.com/#{ @ user . provider_meta [ "twitter_username " ] } " }
163
175
target = "_blank "
164
176
class = "flex items-center gap-1 hover:underline "
165
177
>
166
178
< . icon name = "tabler-brand-x " class = "shrink-0 h-4 w-4 " />
167
- < span class = "line-clamp-1 " >
168
- { @ user . provider_meta [ "twitter_handle" ] }
169
- </ span >
170
179
</ . link >
180
+ < div :if = { @ user . provider_meta [ "location" ] } class = "flex items-center gap-1 truncate " >
181
+ < . icon name = "tabler-map-pin " class = "shrink-0 h-4 w-4 " />
182
+ < span class = "truncate " >
183
+ { @ user . provider_meta [ "location" ] }
184
+ </ span >
185
+ </ div >
171
186
</ div >
172
187
</ div >
173
188
</ div >
174
189
</ div >
175
190
176
- < div class = "pt-2 flex items-center justify-center gap-2 " >
177
- < . button
178
- phx-click = "share_opportunity "
179
- phx-value-user_id = { @ user . id }
180
- phx-value-type = "bounty "
181
- variant = "outline "
182
- size = "sm "
183
- >
184
- Bounty
185
- </ . button >
186
- < . button
187
- phx-click = "share_opportunity "
188
- phx-value-user_id = { @ user . id }
189
- phx-value-type = "tip "
190
- variant = "outline "
191
- size = "sm "
192
- >
193
- Interview
194
- </ . button >
195
- < . button
196
- phx-click = "share_opportunity "
197
- phx-value-user_id = { @ user . id }
198
- phx-value-type = "contract "
199
- phx-value-contract_type = { @ contract_type }
200
- variant = "outline "
201
- size = "sm "
202
- >
203
- Contract
204
- </ . button >
205
- </ div >
206
-
207
191
< div :if = { @ contributions != [ ] } class = "mt-4 " >
208
192
< p class = "text-xs text-muted-foreground uppercase font-semibold " >
209
193
Top contributions
@@ -255,6 +239,13 @@ defmodule AlgoraWeb.Admin.DevsLive do
255
239
<% end %>
256
240
</ div >
257
241
</ div >
242
+
243
+ < div
244
+ :if = { @ user . provider_meta [ "bio" ] }
245
+ class = "mt-4 font-medium text-sm text-muted-foreground line-clamp-3 "
246
+ >
247
+ { @ user . provider_meta [ "bio" ] }
248
+ </ div >
258
249
</ div >
259
250
</ div >
260
251
"""
0 commit comments