You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit 9d2b03d
Browse filesBrowse the repository at this point in the historyBrowse files
feat(portal): Implement Personal Access Token Management UI
The API Tokens modal was a non-functional stub — list/create/revoke/
delete all had commented-out or empty handler bodies, so no button in
the UI actually did anything even though the backend was fully built.
Wires the component up to the real PAT REST endpoints via the
generated UserService (list/create/update/delete/refresh), adds
expiry-in-days and per-project pull/push scope selection to the
create form (auto-computed full-access scope when everything's
selected, explicit empty scope when nothing is), a refresh-secret flow
with its own reveal-once modal, and a delete confirmation dialog (new
ConfirmationTargets.USER_PAT). The create form's submit button is
associated with the form via form="apiTokenForm" so it actually
submits despite living in the modal footer outside the <form> tag,
and both the name/description inputs and scope checkboxes disable
once a secret is on screen so the visible values can't drift from
what was actually created.
Copy-to-clipboard uses navigator.clipboard.writeText with a
document.execCommand fallback for browsers without the Clipboard API,
rather than only the deprecated execCommand path.
Signed-off-by: Ross Golder <ross@golder.org>
0 commit comments