diff --git a/apps/web/e2e/content.spec.ts b/apps/web/e2e/content.spec.ts index 2c59712..b2dfd93 100644 --- a/apps/web/e2e/content.spec.ts +++ b/apps/web/e2e/content.spec.ts @@ -62,7 +62,10 @@ test('page lifecycle: create via the sidebar, rename, appears in the sidebar', a const page = await context.newPage(); await page.goto(`/p/${pond.slug}`); await page.getByRole('button', { name: /new page|neue seite/i }).click(); - await page.locator('.sidebar').getByLabel(/title|titel/i).fill(title); + await page + .locator('.sidebar') + .getByLabel(/title|titel/i) + .fill(title); await page.getByRole('button', { name: /create|erstellen/i }).click(); await expect(page.locator('.sidebar__page--active')).toHaveText(title); diff --git a/apps/web/e2e/sidebar.spec.ts b/apps/web/e2e/sidebar.spec.ts index 2d4a571..9cae1a2 100644 --- a/apps/web/e2e/sidebar.spec.ts +++ b/apps/web/e2e/sidebar.spec.ts @@ -110,7 +110,10 @@ test('new-page flow: button opens a title prompt and the editor opens on create' await page.goto(`/p/${pond.slug}`); await page.getByRole('button', { name: /new page|neue seite/i }).click(); - await page.locator('.sidebar').getByLabel(/title|titel/i).fill(title); + await page + .locator('.sidebar') + .getByLabel(/title|titel/i) + .fill(title); await page.getByRole('button', { name: /create|erstellen/i }).click(); await expect(page).toHaveURL(new RegExp(`/p/${pond.slug}/.+`)); diff --git a/apps/web/src/editor/nodes/task-item.tsx b/apps/web/src/editor/nodes/task-item.tsx index 64d8886..75535c3 100644 --- a/apps/web/src/editor/nodes/task-item.tsx +++ b/apps/web/src/editor/nodes/task-item.tsx @@ -1,21 +1,29 @@ import { Node } from '@tiptap/core'; import { NodeViewContent, NodeViewWrapper, ReactNodeViewRenderer } from '@tiptap/react'; import type { NodeViewProps } from '@tiptap/react'; +import { useTranslation } from 'react-i18next'; import { attributesFromSpec, nodeSpec } from '../spec-utils'; /** `packages/shared`'s task_item.parseDOM does not read `data-checked` back * (issue #24) — checked state only ever comes from the node's own attrs, set - * here via the checkbox, never re-parsed from HTML. */ + * here via the checkbox, never re-parsed from HTML. + * + * DOM shape (#169): the render host itself is the `
  • ` (see the renderer + * options below) so the `