diff --git a/frontend/src/locales/en.ts b/frontend/src/locales/en.ts
index 2e3d4e3..a64f25e 100644
--- a/frontend/src/locales/en.ts
+++ b/frontend/src/locales/en.ts
@@ -326,6 +326,7 @@
statusTitle: 'Status',
changeStatus: 'Change status',
takeWork: 'Take on',
+ finishWork: 'Done',
mentallyHard: {
set: "Don't want to do it",
unset: 'Remove “mentally hard”',
diff --git a/frontend/src/locales/ru.ts b/frontend/src/locales/ru.ts
index 4f218a8..42dc104 100644
--- a/frontend/src/locales/ru.ts
+++ b/frontend/src/locales/ru.ts
@@ -326,6 +326,7 @@
statusTitle: 'Статус',
changeStatus: 'Изменить статус',
takeWork: 'Взять в работу',
+ finishWork: 'Завершено',
mentallyHard: {
set: 'Не хочется делать',
unset: 'Снять «ментально сложная»',
diff --git a/frontend/src/locales/uk.ts b/frontend/src/locales/uk.ts
index 6a57a19..0fe5258 100644
--- a/frontend/src/locales/uk.ts
+++ b/frontend/src/locales/uk.ts
@@ -326,6 +326,7 @@
statusTitle: 'Статус',
changeStatus: 'Змінити статус',
takeWork: 'Взяти в роботу',
+ finishWork: 'Завершено',
mentallyHard: {
set: 'Не хочеться робити',
unset: 'Зняти «ментально складне»',
diff --git a/frontend/src/views/TaskView.vue b/frontend/src/views/TaskView.vue
index a637732..fdc0b14 100644
--- a/frontend/src/views/TaskView.vue
+++ b/frontend/src/views/TaskView.vue
@@ -448,6 +448,20 @@
}
}
+// «Завершено» — быстрое закрытие без дропдауна (пока задача в работе)
+async function finishWork() {
+ const current = task.value
+ if (!current) return
+ error.value = ''
+ try {
+ await api.updateTask(current.id, { status: 'done' })
+ celebrateEarned()
+ await load()
+ } catch (e) {
+ error.value = String(e)
+ }
+}
+
// Переключатель «не хочется делать»: метку можно ставить и снимать до закрытия
async function toggleMentallyHard() {
const task0 = task.value
@@ -815,10 +829,22 @@
>
{{ t('task.takeWork') }}
-
+
+ {{ t('task.finishWork') }}
+
+
+