Commit Graph

771 Commits

Author SHA1 Message Date
Philipinho beb7120b00 feat(bases): reorder kanban columns via drag, persisting choiceOrder 2026-05-24 15:48:51 +01:00
Philipinho 83d52fc324 fix(bases): suppress kanban column-body drop when a card target also matched 2026-05-24 15:45:24 +01:00
Philipinho d97d8108d2 feat(bases): drop cards onto empty kanban columns / below last card 2026-05-24 15:38:34 +01:00
Philipinho bdfd0413b4 feat(bases): card-to-card kanban drag with edge slotting 2026-05-24 15:34:40 +01:00
Philipinho a9c6051d12 feat(bases): add per-column '+ New' button to kanban 2026-05-24 13:51:20 +01:00
Philipinho 76ca68bec6 feat(bases): surface group-by picker in toolbar for kanban views 2026-05-24 13:46:41 +01:00
Philipinho c350308c03 feat(bases): add kanban empty state with group-by picker 2026-05-24 13:42:35 +01:00
Philipinho f36df26d75 feat(bases): dispatch kanban view through ViewRenderer 2026-05-24 13:38:11 +01:00
Philipinho ee4bf73c92 refactor(bases): rename KanbanColumn helper type to KanbanColumnData; clsx + font vars 2026-05-24 13:36:12 +01:00
Philipinho 68cdcd970c feat(bases): scaffold kanban renderer (no DnD yet) 2026-05-24 13:27:25 +01:00
Philipinho dfd6d3aee0 test(bases): pin resolveCardDrop catch-fallback behavior + fix comment 2026-05-24 13:24:36 +01:00
Philipinho ad0e65371b feat(bases): add resolveCardDrop helper for kanban drag mutations 2026-05-24 13:20:31 +01:00
Philipinho fd6f6a9341 fix(bases): always render kanban NO_VALUE column unless explicitly hidden 2026-05-24 13:13:12 +01:00
Philipinho a60de83e57 feat(bases): add useKanbanGroups partitioning hook 2026-05-24 13:09:26 +01:00
Philipinho f75779951e refactor(bases): split BaseTable into BaseView shell + ViewRenderer 2026-05-24 13:00:20 +01:00
Philipinho 46c5960e99 feat(base): clearer warning copy for url/email type conversions 2026-05-24 12:37:56 +01:00
Philipinho 9cec9b64c6 feat(bases): allow updateRow to set position atomically 2026-05-24 12:31:36 +01:00
Philipinho b9ab95af4e Revert "fix(base): isolate inline-embed drags from prosemirror dropcursor"
This reverts commit 3c62331826.
2026-05-24 12:28:16 +01:00
Philipinho a60febc92f feat(bases): add kanban view config fields to schema 2026-05-24 12:26:36 +01:00
Philipinho 3c62331826 fix(base): isolate inline-embed drags from prosemirror dropcursor 2026-05-24 02:50:49 +01:00
Philipinho b83b92bea6 fix(base): invalidate row cache on base:schema:bumped 2026-05-24 02:43:16 +01:00
Philipinho 651f799e3a chore(client): drop unused @dnd-kit packages 2026-05-24 02:41:43 +01:00
Philipinho 5f845ab4c3 feat(base): add i18n keys for property type-change UI 2026-05-24 02:37:28 +01:00
Philipinho d607e858d5 refactor(base): migrate choice editor reorder from dnd-kit to pragmatic-drag-and-drop 2026-05-24 02:35:34 +01:00
Philipinho 909b6a8f9c feat(base): show Converting badge in column header during type change 2026-05-24 02:35:22 +01:00
Philipinho 23ea060e54 feat(base): restore property type change with confirmation panel 2026-05-24 02:32:43 +01:00
Philipinho 73e626e3bc refactor(base): stabilize column-reorder dnd effect against WS-driven refetches 2026-05-24 02:31:52 +01:00
Philipinho c2dac69e70 feat(base): add conversion-warning lookup with unit tests 2026-05-24 02:29:52 +01:00
Philipinho e1f862967a feat(base): wire type field through UpdatePropertyInput + restore row invalidation 2026-05-24 02:27:37 +01:00
Philipinho a66d31178a fix(base): sync client SYSTEM_PROPERTY_TYPES with server (add formula) 2026-05-24 02:26:13 +01:00
Philipinho eeb84e97c9 refactor(base): migrate column reorder from dnd-kit to pragmatic-drag-and-drop 2026-05-24 02:24:54 +01:00
Philipinho 218b5755a9 feat(base): add drop-edge indicator component for pragmatic-dnd 2026-05-24 02:18:31 +01:00
Philipinho 911bf53924 Merge branch 'main' into base-formula 2026-05-24 01:47:59 +01:00
Philipinho d7c4f0551e fix: strip html styles on paste 2026-05-22 19:00:30 +01:00
Philipinho f010f6a83a fix: internal links 2026-05-21 17:01:20 +01:00
Philipinho 0402420fbc fix visibility 2026-05-20 18:20:52 +01:00
Philip Okugbe 2be5e0d4ee New Crowdin updates (#2220) 2026-05-20 18:20:02 +01:00
Philipinho adb1f27767 v0.90.0 2026-05-20 16:55:23 +01:00
Philip Okugbe 92c0e36e46 fix(a11y): WCAG 2.1 AA fixes (#2219) 2026-05-20 16:47:25 +01:00
Olivier Lambert 1c166c4736 feat(editor): add alt text support for images (#2097)
* feat(editor): add alt text support for images
* feat:  extend alt text support to videos and diagrams

---------
Co-authored-by: Philipinho <16838612+Philipinho@users.noreply.github.com>
2026-05-20 16:45:59 +01:00
Philip Okugbe 66a754c9eb Revert "fix: prevent browser tab fallback in editor (#2123)" (#2216)
This reverts commit 1d2486455f.
2026-05-19 14:07:07 +01:00
Philip Okugbe 6cf8101ab3 feat(ee): templates (#2215)
* feat(ee): templates
* fix tree
* fix
2026-05-19 02:41:52 +01:00
Philip Okugbe b7b99cb3b2 fix: code splitting and editor fixes (#2211)
* fix table

* fix code splitting

* fix: editor ready check

* fix codeblock/mermaid gap cursor

* fix callout
2026-05-15 02:46:54 +01:00
Philipinho e41518a93d fix type 2026-05-14 14:49:02 +01:00
Peter Tripp 932c1ad5b7 Better trash (#2190)
* Better trash

I recently lost a bunch of time editing and searching for pages that were actually in the Trash. Docmost intentionally tries to not link to Trashed pages, but the url of that Trashed page and any inbound links still work.  This makes it clearer when a page you are interacting with is in the Trash.

- /trash
  - Refactored banner into `trash-banner.tsx`
  - Refactored "Restore" modal into `use-restore-page-modal.tsx`
- Page (when isDeleted)
  - Add: `trash-banner.tsx`
  - Add breadcrumbs: `Parent / Child / Page (Deleted)`
  - Change: Deleted Pages are read-only
  - Replace "Move to Trash" with "Restore" in page menu (invokes `use-restore-page-modal`)

I tried very hard to keep this simple and re-use existing translation strings wherever possible.

* cleanup

---------

Co-authored-by: Philipinho <16838612+Philipinho@users.noreply.github.com>
2026-05-14 14:41:10 +01:00
Julien Fontanet 82d065669d fix: page mode toggle no longer overwrites default preference (#1996)
The header edit/read toggle now controls only the current session's mode
without saving it as the user's preference. The saved preference (set in
profile settings) is applied once on initial load and sticks across page
navigations within the session, so navigating to a new page no longer
resets the mode mid-session.

Fixes #1693
2026-05-14 13:15:03 +01:00
Philip Okugbe f4af4c3fc0 feat(editor): add page break node (#2202) 2026-05-14 03:48:13 +01:00
Philip Okugbe 299a9ca3c8 fix: bug fixes (#2201)
* fix(editor): hide transclusion borders and reset spacing in read-only mode

* feat(share): add full width toggle for shared pages

* feat(share): support resizing sidebar on shared pages

* fix: auto redirect if there is only one SSO provider.
- fix tighten sso redirect
- fix share tree margin

* sync

* package overrides
2026-05-14 02:54:00 +01:00
Philip Okugbe cea9be7926 feat: table enhancement (#2191) 2026-05-14 00:37:44 +01:00
Philip Okugbe 31ed0df3f7 feat(tree): replace sidebar tree (react-aborist) with custom tree implementation (#2199)
* feat(tree): replace react-arborist with custom tree implementation

* feat(tree): keyboard arrow navigation between rows

* feat(emoji-picker): focus search input on open

* refactor(emoji): switch to @slidoapp/emoji-mart fork for accessibility

* feat(tree): Home/End and typeahead keyboard navigation

* feat(tree): roving tabindex and * to expand sibling subtrees

* feat(tree): Space activation and ARIA refinements

* fix(tree): move treeitem role to focusable row + aria-current
2026-05-13 23:01:04 +01:00