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