diff --git a/web/e2e/smoke.spec.js b/web/e2e/smoke.spec.js index a91fb81..b8c717a 100644 --- a/web/e2e/smoke.spec.js +++ b/web/e2e/smoke.spec.js @@ -937,7 +937,7 @@ test('en rolle kan rettes uden at fjerne personen', async ({ browser, page }) => await page.keyboard.press('Escape'); const row = page.locator('.row').filter({ hasText: 'brænde kaffe' }); - await expect(row.getByTitle('Ansvarlig: andreas')).toBeVisible(); + await expect(row.getByTitle('Uddelegeret til andreas')).toBeVisible(); // And not on a task that is nobody's. await page.getByLabel('Ny opgave').fill('min egen'); await page.getByLabel('Ny opgave').press('Enter'); diff --git a/web/src/lib/components/TaskRow.svelte b/web/src/lib/components/TaskRow.svelte index ceca249..10d1c52 100644 --- a/web/src/lib/components/TaskRow.svelte +++ b/web/src/lib/components/TaskRow.svelte @@ -113,8 +113,14 @@ {#if assignee} - + yours. The hand-off arrow marks it as delegated — out of your + hands and into theirs — so a list reads at a glance as which are + yours to do and which you are waiting on. --> + + {assignee.name[0]?.toUpperCase() ?? '?'} @@ -358,8 +364,25 @@ .assignee { display: inline-flex; align-items: center; - gap: var(--s1); + gap: 4px; color: var(--ink-muted); + background: var(--surface-raised); + border: 1px solid var(--line); + border-radius: var(--radius-full); + padding: 1px var(--s2) 1px 4px; + } + + /* The delegation mark: an arrow leaving, in the accent so the chip reads as + handed-off rather than as just another name. */ + .handoff { + width: 12px; + height: 12px; + fill: none; + stroke: var(--accent); + stroke-width: 2; + stroke-linecap: round; + stroke-linejoin: round; + flex: none; } .face { diff --git a/web/src/lib/locales/da.js b/web/src/lib/locales/da.js index 579d933..a15519d 100644 --- a/web/src/lib/locales/da.js +++ b/web/src/lib/locales/da.js @@ -188,6 +188,7 @@ export const da = { 'repeat.everyN.month': 'hver {n}. måned', 'repeat.everyN.year': 'hvert {n}. år', 'task.assignee': 'Ansvarlig: {name}', + 'task.delegatedTo': 'Uddelegeret til {name}', 'task.subtasks': '{done} af {total} undertasks er lukket', 'task.attachments': '{n} vedhæftet', 'task.priority': 'Prioritet {n}', diff --git a/web/src/lib/locales/en.js b/web/src/lib/locales/en.js index 62ca65a..d04aea9 100644 --- a/web/src/lib/locales/en.js +++ b/web/src/lib/locales/en.js @@ -184,6 +184,7 @@ export const en = { 'repeat.everyN.month': 'every {n} months', 'repeat.everyN.year': 'every {n} years', 'task.assignee': 'Assigned to {name}', + 'task.delegatedTo': 'Delegated to {name}', 'task.subtasks': '{done} of {total} sub-tasks are done', 'task.attachments': '{n} attached', 'task.priority': 'Priority {n}',