Commit63c60ebunknown_key
fix: add aria-labels to inputs and fix heading hierarchy
fix: add aria-labels to inputs and fix heading hierarchy - Add aria-label to project title, new card title, new column name, and delete item button in projects.tsx - Fix h4 → h2 for Kanban column headers in projects.tsx - Add aria-label to tag protection pattern input in protected-tags.tsx - Add aria-label to pull request title input in pulls.tsx - Add aria-labels to tag, release name, target branch, and previous tag fields in releases.tsx - Add aria-labels to visibility radio buttons and new owner input in repo-settings.tsx - Add aria-label to check name input in required-checks.tsx Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Co-authored-by: ccantynz-alt <251062557+ccantynz-alt@users.noreply.github.com>
6 files changed+16−563c60ebc0e839111fe1f42d826c6bd9d99acf104
6 changed files+16−5
Modifiedsrc/routes/projects.tsx+6−2View fileUnifiedSplit
@@ -159,6 +159,7 @@ projectRoutes.get(
159159 name="title"
160160 placeholder="Title"
161161 required
162 aria-label="Project title"
162163 style="padding: 8px;"
163164 />
164165 <textarea
@@ -309,12 +310,12 @@ projectRoutes.get(
309310 <div class="kanban">
310311 {columns.map((col) => (
311312 <div class="kcol">
312 <h4>
313 <h2>
313314 <span>{col.name}</span>
314315 <span style="color: var(--text-muted); font-size: 13px;">
315316 {(itemsByCol[col.id] || []).length}
316317 </span>
317 </h4>
318 </h2>
318319 {(itemsByCol[col.id] || []).map((it) => (
319320 <div class="kcard">
320321 <div>
@@ -355,6 +356,7 @@ projectRoutes.get(
355356 <button
356357 type="submit"
357358 class="btn"
359 aria-label="Delete item"
358360 style="font-size: 11px; padding: 2px 6px;"
359361 >
360362 ×
@@ -376,6 +378,7 @@ projectRoutes.get(
376378 name="title"
377379 placeholder="New card title"
378380 required
381 aria-label="New card title"
379382 style="padding: 4px; font-size: 12px;"
380383 />
381384 <button
@@ -401,6 +404,7 @@ projectRoutes.get(
401404 name="name"
402405 placeholder="New column"
403406 required
407 aria-label="New column name"
404408 style="padding: 6px;"
405409 />
406410 <button type="submit" class="btn">
Modifiedsrc/routes/protected-tags.tsx+1−0View fileUnifiedSplit
@@ -134,6 +134,7 @@ protectedTagsRoutes.get(
134134 name="pattern"
135135 required
136136 placeholder="v* or release-*"
137 aria-label="Tag protection pattern"
137138 style="font-family:var(--font-mono)"
138139 />
139140 </div>
Modifiedsrc/routes/pulls.tsx+1−0View fileUnifiedSplit
@@ -248,6 +248,7 @@ pulls.get(
248248 required
249249 placeholder="Title"
250250 style="font-size:16px;padding:10px 14px"
251 aria-label="Pull request title"
251252 />
252253 </FormGroup>
253254 <FormGroup>
Modifiedsrc/routes/releases.tsx+4−3View fileUnifiedSplit
@@ -221,11 +221,12 @@ releasesRoute.get("/:owner/:repo/releases/new", requireAuth, requireRepoAccess("
221221 required
222222 placeholder="v1.0.0"
223223 pattern="[A-Za-z0-9._\\-]+"
224 aria-label="Tag"
224225 />
225226 </div>
226227 <div class="form-group">
227228 <label>Target branch / commit</label>
228 <select name="target">
229 <select name="target" aria-label="Target branch">
229230 {branches.map((b) => (
230231 <option value={b} selected={b === repoRow.defaultBranch}>
231232 {b}
@@ -235,11 +236,11 @@ releasesRoute.get("/:owner/:repo/releases/new", requireAuth, requireRepoAccess("
235236 </div>
236237 <div class="form-group">
237238 <label>Release name</label>
238 <input type="text" name="name" required placeholder="v1.0.0 — the big one" />
239 <input type="text" name="name" required placeholder="v1.0.0 — the big one" aria-label="Release name" />
239240 </div>
240241 <div class="form-group">
241242 <label>Previous tag (for AI changelog)</label>
242 <select name="previousTag">
243 <select name="previousTag" aria-label="Previous tag">
243244 <option value="">(auto — last tag)</option>
244245 {tags.map((t) => (
245246 <option value={t.name}>{t.name}</option>
Modifiedsrc/routes/repo-settings.tsx+3−0View fileUnifiedSplit
@@ -117,6 +117,7 @@ repoSettings.get("/:owner/:repo/settings", requireAuth, requireRepoAccess("admin
117117 name="visibility"
118118 value="public"
119119 checked={!repo.isPrivate}
120 aria-label="Public"
120121 />
121122 <div class="vis-label">Public</div>
122123 </label>
@@ -126,6 +127,7 @@ repoSettings.get("/:owner/:repo/settings", requireAuth, requireRepoAccess("admin
126127 name="visibility"
127128 value="private"
128129 checked={repo.isPrivate}
130 aria-label="Private"
129131 />
130132 <div class="vis-label">Private</div>
131133 </label>
@@ -197,6 +199,7 @@ repoSettings.get("/:owner/:repo/settings", requireAuth, requireRepoAccess("admin
197199 name="new_owner"
198200 placeholder="new-owner-username"
199201 required
202 aria-label="New owner username"
200203 style="width:60%"
201204 />{" "}
202205 <button type="submit" class="btn">