this repo has no description
1{{ define "title" }}
2 {{ .Tab }} settings · {{ .RepoInfo.FullName }}
3{{ end }}
4
5{{ define "repoContent" }}
6 <section class="w-full grid grid-cols-1 md:grid-cols-4 gap-2">
7 <div class="col-span-1">
8 {{ template "repo/settings/fragments/sidebar" . }}
9 </div>
10 <div class="col-span-1 md:col-span-3 flex flex-col gap-6 p-2">
11 {{ template "collaboratorSettings" . }}
12 </div>
13 </section>
14{{ end }}
15
16{{ define "collaboratorSettings" }}
17 <div class="grid grid-cols-1 gap-4 items-center">
18 <div class="col-span-1">
19 <h2 class="text-sm pb-2 uppercase font-bold">Collaborators</h2>
20 <p class="text-gray-500 dark:text-gray-400">
21 Any user added as a collaborator will be able to push commits and tags
22 to this repository, upload releases, and workflows.
23 </p>
24 </div>
25 {{ template "collaboratorsGrid" . }}
26 </div>
27{{ end }}
28
29{{ define "collaboratorsGrid" }}
30 <div class="grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-4">
31 {{ if .RepoInfo.Roles.CollaboratorInviteAllowed }}
32 {{ template "addCollaboratorButton" . }}
33 {{ end }}
34 {{ range .Collaborators }}
35 <div class="border border-gray-200 dark:border-gray-700 rounded p-4">
36 <div class="flex items-center gap-3">
37 <img
38 src="{{ fullAvatar .Handle }}"
39 alt="{{ .Handle }}"
40 class="rounded-full h-10 w-10 border border-gray-300 dark:border-gray-600 flex-shrink-0" />
41
42 <div class="flex-1 min-w-0">
43 <a href="/{{ .Handle }}" class="block truncate">
44 {{ didOrHandle .Did .Handle }}
45 </a>
46 <p class="text-sm text-gray-500 dark:text-gray-400">{{ .Role }}</p>
47 </div>
48 </div>
49 </div>
50 {{ end }}
51 </div>
52{{ end }}
53
54{{ define "addCollaboratorButton" }}
55 <button
56 class="btn block rounded p-4"
57 popovertarget="add-collaborator-modal"
58 popovertargetaction="toggle">
59 <div class="flex items-center gap-3">
60 <div
61 class="w-10 h-10 rounded-full bg-gray-100 dark:bg-gray-700 flex items-center justify-center">
62 {{ i "user-plus" "size-4" }}
63 </div>
64
65 <div class="text-left flex-1 min-w-0 block truncate">
66 Add collaborator
67 </div>
68 </div>
69 </button>
70 <div
71 id="add-collaborator-modal"
72 popover
73 class="bg-white w-full md:w-96 dark:bg-gray-800 p-4 rounded border border-gray-200 dark:border-gray-700 drop-shadow dark:text-white backdrop:bg-gray-400/50 dark:backdrop:bg-gray-800/50">
74 {{ template "addCollaboratorModal" . }}
75 </div>
76{{ end }}
77
78{{ define "addCollaboratorModal" }}
79 <form
80 hx-put="/{{ $.RepoInfo.FullName }}/settings/collaborator"
81 hx-indicator="#spinner"
82 hx-swap="none"
83 class="flex flex-col gap-2">
84 <label for="add-collaborator" class="uppercase p-0">ADD COLLABORATOR</label>
85 <p class="text-sm text-gray-500 dark:text-gray-400">
86 Collaborators can push to this repository.
87 </p>
88 <input
89 type="text"
90 id="add-collaborator"
91 name="collaborator"
92 required
93 placeholder="@foo.bsky.social" />
94 <div class="flex gap-2 pt-2">
95 <button
96 type="button"
97 popovertarget="add-collaborator-modal"
98 popovertargetaction="hide"
99 class="btn w-1/2 flex items-center gap-2 text-red-500 hover:text-red-700 dark:text-red-400 dark:hover:text-red-300">
100 {{ i "x" "size-4" }} cancel
101 </button>
102 <button type="submit" class="btn w-1/2 flex items-center">
103 <span class="inline-flex gap-2 items-center">
104 {{ i "user-plus" "size-4" }} add
105 </span>
106 <span id="spinner" class="group">
107 {{ i "loader-circle" "ml-2 w-4 h-4 animate-spin hidden group-[.htmx-request]:inline" }}
108 </span>
109 </button>
110 </div>
111 <div
112 id="add-collaborator-error"
113 class="text-red-500 dark:text-red-400"></div>
114 </form>
115{{ end }}