paginate app operations and refine runtime settings layout
ci/woodpecker/push/woodpecker Pipeline failed

This commit is contained in:
2026-07-07 15:32:56 +09:00
parent 1de085790d
commit 9cb82249d7
14 changed files with 805 additions and 214 deletions
@@ -244,6 +244,15 @@ export function RepositoryManagementPage() {
[giteaRepos, selectedAppRepoKeys]
);
const handleRepoNameChange = (value: string) => {
const normalized = value
.trimStart()
.replace(new RegExp(`^${giteaAppOrg.replace(/[.*+?^${}()|[\]\\]/g, '\\$&')}/`, 'i'), '')
.replace(/^\/+/, '')
.replace(/\.git$/i, '');
setRepoName(normalized);
};
return (
<>
<PageTitle
@@ -373,11 +382,17 @@ export function RepositoryManagementPage() {
<div className="space-y-4 px-5 py-5">
<label className="block">
<span className="text-xs font-medium text-muted-foreground">저장소명</span>
<input
value={repoName}
onChange={(event) => setRepoName(event.target.value)}
className="mt-2 h-9 w-full rounded-md border border-border bg-background px-3 text-sm outline-none focus:border-primary"
/>
<div className="mt-2 flex h-9 overflow-hidden rounded-md border border-border bg-background focus-within:border-primary">
<span className="flex h-full shrink-0 items-center border-r border-border bg-muted px-3 text-xs font-semibold text-muted-foreground">
{giteaAppOrg}/
</span>
<input
value={repoName}
onChange={(event) => handleRepoNameChange(event.target.value)}
placeholder="lms-fe"
className="h-full min-w-0 flex-1 bg-transparent px-3 text-sm outline-none placeholder:text-muted-foreground"
/>
</div>
</label>
<label className="block">
<span className="text-xs font-medium text-muted-foreground">설명</span>