1{{ define "title" }}{{ or .UserHandle .UserDid }}{{ end }}
2
3{{ define "content" }}
4 <div class="flex ">
5 <h1 class="pb-1">
6 {{ didOrHandle .UserDid .UserHandle }}
7 </h1>
8 {{ if ne .FollowStatus.String "IsSelf" }}
9 <button id="followBtn"
10 class="btn mt-2"
11 {{ if eq .FollowStatus.String "IsNotFollowing" }}
12 hx-post="/follow?subject={{.UserDid}}"
13 {{ else }}
14 hx-delete="/follow?subject={{.UserDid}}"
15 {{ end }}
16 hx-trigger="click"
17 hx-target="#followBtn"
18 hx-swap="outerHTML"
19 >
20 {{ if eq .FollowStatus.String "IsNotFollowing" }}Follow{{ else }}Unfollow{{ end }}
21 </button>
22 {{ end }}
23 </div>
24 <div class="text-sm mb-4">
25 <span>{{ .ProfileStats.Followers }} followers</span>
26 <div class="inline-block px-1 select-none after:content-['·']"></div>
27 <span>{{ .ProfileStats.Following }} following</span>
28 </div>
29 <p class="text-xs font-bold py-2">REPOS</p>
30 <div id="repos" class="grid grid-cols-1 md:grid-cols-2 gap-4 mb-6">
31 {{ range .Repos }}
32 <div
33 id="repo-card"
34 class="border border-black p-4 shadow-sm bg-white"
35 >
36 <div id="repo-card-name" class="font-medium">
37 <a href="/@{{ or $.UserHandle $.UserDid }}/{{ .Name }}"
38 >{{ .Name }}</a
39 >
40 </div>
41 <div
42 id="repo-knot-name"
43 class="text-gray-600 text-sm font-mono"
44 >
45 {{ .Knot }}
46 </div>
47 </div>
48 {{ else }}
49 <p>This user does not have any repos yet.</p>
50 {{ end }}
51 </div>
52 <p class="text-xs font-bold py-2">COLLABORATING ON</p>
53 <div id="collaborating" class="grid grid-cols-1 md:grid-cols-2 gap-4 mb-6">
54 {{ range .CollaboratingRepos }}
55 <div
56 id="repo-card"
57 class="border border-black p-4 shadow-sm bg-white"
58 >
59 <div id="repo-card-name" class="font-medium">
60 <a href="/{{ .Did }}/{{ .Name }}">
61 @{{ .Did }}/{{ .Name }}
62 </a>
63 </div>
64 <div
65 id="repo-knot-name"
66 class="text-gray-600 text-sm font-mono"
67 >
68 {{ .Knot }}
69 </div>
70 </div>
71 {{ else }}
72 <p>This user is not collaborating.</p>
73 {{ end }}
74 </div>
75{{ end }}