This commit is contained in:
@@ -10,6 +10,7 @@ import {
|
||||
getLauncherSource,
|
||||
listGiteaCommits,
|
||||
listLauncherVersions,
|
||||
listPlatformRepos,
|
||||
listStudioRepos,
|
||||
updateLauncherSource,
|
||||
type GiteaCommit,
|
||||
@@ -31,7 +32,7 @@ const targetLabels: Record<SourceTarget, { title: string; description: string; d
|
||||
'launcher-client': {
|
||||
title: '클라이언트',
|
||||
description: '사용자 PC에 설치되는 Electron .deb 빌드 소스입니다.',
|
||||
defaultOrg: 'studio'
|
||||
defaultOrg: 'platform'
|
||||
},
|
||||
'launcher-backend': {
|
||||
title: '백엔드',
|
||||
@@ -117,6 +118,8 @@ export function LauncherSourcePage() {
|
||||
const { toast } = useToast();
|
||||
const [activeTarget, setActiveTarget] = useState<SourceTarget>('launcher-client');
|
||||
const [versions, setVersions] = useState<LauncherVersion[]>([]);
|
||||
const [platformRepos, setPlatformRepos] = useState<GiteaRepo[]>([]);
|
||||
const [studioRepos, setStudioRepos] = useState<GiteaRepo[]>([]);
|
||||
const [repos, setRepos] = useState<GiteaRepo[]>([]);
|
||||
const [forms, setForms] = useState<Record<SourceTarget, SourceForm>>({
|
||||
'launcher-client': emptyForm(),
|
||||
@@ -146,14 +149,16 @@ export function LauncherSourcePage() {
|
||||
|
||||
const refresh = () => {
|
||||
setLoading(true);
|
||||
Promise.all([listLauncherVersions(), listStudioRepos(), getLauncherSource()])
|
||||
.then(([nextVersions, studioRepos, sourceResult]) => {
|
||||
Promise.all([listLauncherVersions(), listPlatformRepos(), listStudioRepos(), getLauncherSource()])
|
||||
.then(([nextVersions, platformRepos, studioRepos, sourceResult]) => {
|
||||
const nextVersion = nextVersions.find((version) => version.isActive) ?? nextVersions[0];
|
||||
const clientRepository = sourceResult.source.client?.repository ?? sourceResult.source.repository ?? nextVersion?.repository ?? (studioRepos[0] ? repoFullName(studioRepos[0]) : '');
|
||||
const clientRepository = sourceResult.source.client?.repository ?? sourceResult.source.repository ?? nextVersion?.repository ?? (platformRepos[0] ? repoFullName(platformRepos[0]) : '');
|
||||
const backendRepository = sourceResult.source.backend?.repository ?? (studioRepos[0] ? repoFullName(studioRepos[0]) : '');
|
||||
|
||||
setVersions(nextVersions);
|
||||
setRepos(studioRepos);
|
||||
setPlatformRepos(platformRepos);
|
||||
setStudioRepos(studioRepos);
|
||||
setRepos(activeTarget === 'launcher-client' ? platformRepos : studioRepos);
|
||||
setForms({
|
||||
'launcher-client': {
|
||||
repository: clientRepository,
|
||||
@@ -175,6 +180,10 @@ export function LauncherSourcePage() {
|
||||
refresh();
|
||||
}, []);
|
||||
|
||||
useEffect(() => {
|
||||
setRepos(activeTarget === 'launcher-client' ? platformRepos : studioRepos);
|
||||
}, [activeTarget, platformRepos, studioRepos]);
|
||||
|
||||
useEffect(() => {
|
||||
const repository = splitRepository(activeForm.repository, activeTargetMeta.defaultOrg);
|
||||
if (!repository) {
|
||||
|
||||
Reference in New Issue
Block a user