3 Commits
Author SHA1 Message Date
mats 5c5c34d25a Pin the typecheck to our uniform tiptap set
`tsc --noEmit` (first step of `npm run build`) type-checks the shared
@k6n/cms-editor sources, which resolve tiptap from the backoffice tree:
core 3.30.2 mixed with a nested markdown 3.32.2 whose Extension type no
longer fits the older core's `Extensions`. Our own node_modules holds a
uniform 3.32.2 set, so map @tiptap/* there in tsconfig paths. Vite does
not read tsconfig paths (it aliases @k6n/cms-editor manually), so
bundling and runtime resolution are untouched.

🤖 Generated with Codebuff
Co-Authored-By: Codebuff <noreply@codebuff.com>
2026-11-07 13:49:16 +01:00
matsandClaude Sonnet 5.5 cb7a7a1fab Loader (cms-client.js), submodule-aware editor source path, build:watch
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-11-01 11:02:20 +01:00
matsandClaude Sonnet 5.5 1af9ec3172 Add on-page editor for the go-graph-cms
Injectable React editor that is side-loaded onto the statically rendered
page and edits through the CMS HTTP API (POST /api/edit).

- Shadow-root UI over server HTML; patches morphed in, undo/redo from
  server inverses (reuses @k6n/cms-editor EditClient/morph/markdown editor)
- Sign-in via go-auth device grant as the CMS client (aud matches), token
  refresh + 401 retry; live preview swapped in on load and on tab focus
- Schema-driven property form (arrays, maps, variants, $ref, validation)
- Every string property editable where it is rendered (value-bound inline
  fields and attribute chips), markdown WYSIWYG for marked fields
- Block palette + drag & drop with ghost drop targets, insertion slots,
  sort snapping between siblings (Alt to nest)
- x-style annotations: on-page padding/margin/gap handles, Style panel,
  wrap-in-layout; x-graph label/group for titles and grouping
- Dev workflow: Vite proxy to the live site (token injected server-side)
  or an offline in-memory mock CMS; jsdom test suite

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-31 22:34:48 +01:00