1
0
forked from baron/baron-sso

i18n 누락 키 추가 및 로케일 템플릿 동기화

This commit is contained in:
2026-03-19 17:28:04 +09:00
parent 691d9e5dd6
commit 4aa2c441c6
8 changed files with 62 additions and 33 deletions

View File

@@ -8,7 +8,7 @@ import { t } from "../../lib/i18n";
export default function ProfileTenantSwitcher() {
const queryClient = useQueryClient();
const { data: tenants, isLoading } = useQuery({
queryKey: ["myTenants"],
queryFn: fetchMyTenants,
@@ -20,7 +20,7 @@ export default function ProfileTenantSwitcher() {
const handleSave = () => {
window.localStorage.setItem("dev_tenant_id", selectedTenantId);
// Invalidate queries to refresh data with new tenant context
queryClient.invalidateQueries({
predicate: (query) =>
@@ -42,10 +42,15 @@ export default function ProfileTenantSwitcher() {
<div className="flex flex-col gap-4 mt-6 p-4 rounded-lg border border-border bg-card">
<div className="flex items-center gap-2 mb-2">
<Building2 className="h-5 w-5 text-primary" />
<h3 className="font-semibold">{t("ui.dev.tenant.workspace", "작업 테넌트 (컨텍스트)")}</h3>
<h3 className="font-semibold">
{t("ui.dev.tenant.workspace", "작업 테넌트 (컨텍스트)")}
</h3>
</div>
<p className="text-sm text-muted-foreground -mt-2 mb-2">
{t("ui.dev.tenant.workspace_desc", "현재 작업 중인 테넌트를 선택하고 저장하여 API 요청 컨텍스트를 변경합니다.")}
{t(
"ui.dev.tenant.workspace_desc",
"현재 작업 중인 테넌트를 선택하고 저장하여 API 요청 컨텍스트를 변경합니다.",
)}
</p>
<div className="flex items-center gap-3">
@@ -62,10 +67,10 @@ export default function ProfileTenantSwitcher() {
</option>
))}
</select>
<Button
type="button"
onClick={handleSave}
<Button
type="button"
onClick={handleSave}
disabled={isSingleTenant}
className="gap-2"
>
@@ -73,10 +78,13 @@ export default function ProfileTenantSwitcher() {
{t("ui.common.save", "저장")}
</Button>
</div>
{isSingleTenant && (
<p className="text-xs text-muted-foreground mt-1">
{t("ui.dev.tenant.single_notice", "단일 테넌트에 소속되어 전환할 필요가 없습니다.")}
{t(
"ui.dev.tenant.single_notice",
"단일 테넌트에 소속되어 전환할 필요가 없습니다.",
)}
</p>
)}
</div>