diff --git a/packages/views/locales/en/squads.json b/packages/views/locales/en/squads.json
index 6ce069627..e8c67a48b 100644
--- a/packages/views/locales/en/squads.json
+++ b/packages/views/locales/en/squads.json
@@ -9,6 +9,13 @@
"details_section": "Details",
"archive_button": "Archive"
},
+ "archive_dialog": {
+ "title": "Archive this squad?",
+ "description": "\"{{name}}\" will be archived. Issues currently assigned to this squad will be transferred to its leader. This can't be undone — create a new squad if you need the routing back.",
+ "cancel": "Cancel",
+ "confirm": "Archive",
+ "archiving": "Archiving…"
+ },
"name_editor": {
"cancel": "Cancel"
},
diff --git a/packages/views/locales/zh-Hans/squads.json b/packages/views/locales/zh-Hans/squads.json
index c4b0c0c4c..33db9e629 100644
--- a/packages/views/locales/zh-Hans/squads.json
+++ b/packages/views/locales/zh-Hans/squads.json
@@ -9,6 +9,13 @@
"details_section": "详情",
"archive_button": "归档"
},
+ "archive_dialog": {
+ "title": "归档这个小队?",
+ "description": "“{{name}}” 将被归档,该小队当前承接的 issue 会转交给小队负责人。此操作无法撤销,如需恢复路由请新建小队。",
+ "cancel": "取消",
+ "confirm": "归档",
+ "archiving": "归档中…"
+ },
"name_editor": {
"cancel": "取消"
},
diff --git a/packages/views/squads/components/squad-detail-page.tsx b/packages/views/squads/components/squad-detail-page.tsx
index 8445c85f0..743daa2d6 100644
--- a/packages/views/squads/components/squad-detail-page.tsx
+++ b/packages/views/squads/components/squad-detail-page.tsx
@@ -116,6 +116,7 @@ export function SquadDetailPage() {
const [showAddMember, setShowAddMember] = useState(false);
const [showCreateAgent, setShowCreateAgent] = useState(false);
+ const [confirmArchive, setConfirmArchive] = useState(false);
const updateSquadMut = useMutation({
mutationFn: (data: { name?: string; description?: string; instructions?: string; avatar_url?: string; leader_id?: string }) => api.updateSquad(squadId, data),
@@ -225,7 +226,7 @@ export function SquadDetailPage() {