Commit graph

935 commits

Author SHA1 Message Date
Philip Okugbe
53132acb0a
fix: redirect to original page after re-authentication (#1959)
* fix: redirect to original page after re-authentication

When a session expires, the current URL is now preserved as a query
parameter on the login page. After successful login (including MFA
flows), the user is redirected back to their original page instead of
always landing on /home.

* secure

---------

Co-authored-by: Julien Fontanet <julien.fontanet@isonoe.net>
2026-02-21 00:02:23 +00:00
b4sh2
d6472f0876
Merge commit from fork
Co-authored-by: b4sh2 <b4sh2@users.noreply.github.com>
2026-02-20 16:59:44 +00:00
Philipinho
873c963043 fix db types duplication 2026-02-19 22:34:07 +00:00
Julien Fontanet
03a70d768a
fix: allow deleting last character in headings (#1954)
The copy-link decoration widget (contentEditable="false") injected
inside headings prevented browsers from deleting the last remaining
character via Backspace or Delete keys. Only show the widget when the
heading has more than one character of content.
2026-02-18 13:48:15 +00:00
Philip Okugbe
0aeaa43112
feat: replace sharp with client-side icon resize (#1951) 2026-02-16 19:48:19 +00:00
Philip Okugbe
92d5d0b237
New Crowdin updates (#1950)
* New translations
2026-02-16 04:22:40 +00:00
Philipinho
0ce74d34de env validation 2026-02-16 04:11:19 +00:00
Philipinho
00b5328676 fix page error boundary 2026-02-16 04:06:41 +00:00
Philipinho
2ebdc2baea empty states 2026-02-16 00:33:16 +00:00
Philip Okugbe
621ef4f0cf
New Crowdin updates (#1948)
* New translations
2026-02-15 23:10:32 +00:00
Philipinho
26b9338da5 sync 2026-02-15 23:04:18 +00:00
Philipinho
618f56577d turn into callout option 2026-02-15 22:51:23 +00:00
Philipinho
0a05ce6133 enhance editor bubble menu 2026-02-15 22:39:42 +00:00
Philipinho
cb9d6be3b9 sync 2026-02-15 17:07:27 +00:00
Arek Nawo
b76f5adaad
feat(ee): AI menu (#1912)
* feat(ee): AI menu

* - Add insert below and copy option

* prebuild @editor-ext

* sanitize output

* clear existing output

* switch to menu component

* refactor directory

* separator

* refactor directory

* support more languages

* pass markdown to model

* fix: close AI menu on page change

* enhance text input and preview styling

* fix: Use absolute positioning for the AI menu

* make preview scrollable

* activation controls

* enhance bubble menu

* sync

* set width

* fix line break

* switch terminologies

* cloud

* buffer

---------

Co-authored-by: Philipinho <16838612+Philipinho@users.noreply.github.com>
2026-02-14 20:58:08 -08:00
Philipinho
41fa77b29d sync 2026-02-14 20:03:35 -08:00
Philip Okugbe
05b3c65b0f
feat: notifications (#1947)
* feat: notifications
* feat: watchers

* improvements

* handle page move for watchers

* make watchers non-blocking

* more
2026-02-14 20:00:38 -08:00
Philipinho
e0ab9d9b5e override package 2026-02-14 10:37:11 -08:00
Philipinho
55280db672 dark color theme tweaks 2026-02-14 10:35:03 -08:00
Philipinho
32bbc6911f override qs 2026-02-12 11:46:28 -08:00
Philipinho
5814542128 update lock file 2026-02-12 11:41:24 -08:00
Philip Okugbe
18b5781522
feat(API): page content update and retrieval (#1937)
* feat: page content update and retrieval output

* import module

* refactor naming
* support prepend

* rename contentOperation -> operation

* dry

* add yjs utils
2026-02-12 11:13:47 -08:00
Philipinho
49ab9875ba fix tiptap version conflicts 2026-02-11 22:47:25 -08:00
Philipinho
25f4b8c2b4 fix 2026-02-11 17:47:30 -08:00
Philipinho
4d43f86c51 update deps 2026-02-11 17:43:13 -08:00
Philip Okugbe
f170ede8da
fix(deps): override packages (#1936)
* override packages
2026-02-11 16:48:26 -08:00
Philipinho
7861b5b186 fix: add RedisModule to CollabAppModule 2026-02-09 18:50:31 -08:00
Philipinho
3a9bdfbb06 fix(deps): update vite and nx 2026-02-09 18:32:09 -08:00
Philipinho
ab7999a946 v0.25.3 2026-02-09 18:27:55 -08:00
Philip Okugbe
0f02261ee6
feat: page version history improvements (#1925)
* Refactor: use queue for page history

* feat: save multiple version contributors

* display contributor avatars in history list

* fix interval
2026-02-09 18:25:35 -08:00
Philip Okugbe
aff8dba2cb
fix: diagrams SVG content length (#1928) 2026-02-09 18:20:09 -08:00
Olivier Lambert
f6a8247c48
fix: cursor jumps to end of text when editing a comment (#1924)
* fix: cursor jumps to end of text when editing a comment

When editing a comment mid-text, the cursor would jump to the end after
every keystroke, making it impossible to insert text at any position
other than the end.

Root cause: on each keystroke, the comment editor's onUpdate callback
updated parent state (setContent), which changed the defaultContent prop
passed back to CommentEditor. A useEffect watching defaultContent then
called commentEditor.commands.setContent(), which reset the entire
editor content and moved the cursor to the end.

Fix:
- Store in-progress edits in a ref instead of state to avoid triggering
  React re-renders and the prop->effect->setContent cascade
- Read from the ref when saving the comment
- Sync the ref back into state after a successful save so the read-only
  view updates immediately
- Guard the setContent useEffect to only run for read-only editors, so
  websocket-driven updates from other browsers still work

Fixes #1791

Functionally tested on Firefox and Chrome: mid-text editing, saving,
cross-browser live updates via websocket.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* fix stale content on edit cancel

---------

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
Co-authored-by: Philipinho <16838612+Philipinho@users.noreply.github.com>
2026-02-09 15:16:40 -08:00
Philip Okugbe
7879e1f600
fix: add execCommand fallback for clipboard (#1927)
* fix: add execCommand fallback for clipboard
2026-02-09 14:44:27 -08:00
Philip Okugbe
3cb70f0696
New translations translation.json (German) (#1915) 2026-02-06 11:37:33 -08:00
Philipinho
fbb44df548 v0.25.2 2026-02-06 11:32:00 -08:00
Philip Okugbe
bc3ce893c4
New Crowdin updates (#1914)
* New translations translation.json (Japanese)

* New translations translation.json (French)

* New translations translation.json (Spanish)

* New translations translation.json (German)

* New translations translation.json (Italian)

* New translations translation.json (Korean)

* New translations translation.json (Dutch)

* New translations translation.json (Russian)

* New translations translation.json (Ukrainian)

* New translations translation.json (Chinese Simplified)

* New translations translation.json (Portuguese, Brazilian)

* New translations translation.json (Japanese)

* New translations translation.json (French)

* New translations translation.json (Spanish)

* New translations translation.json (German)

* New translations translation.json (Italian)

* New translations translation.json (Korean)

* New translations translation.json (Dutch)

* New translations translation.json (Russian)

* New translations translation.json (Ukrainian)

* New translations translation.json (Chinese Simplified)

* New translations translation.json (Portuguese, Brazilian)
2026-02-06 11:31:12 -08:00
Philipinho
ae96352189 sync 2026-02-06 10:37:51 -08:00
Philip Okugbe
1ad53c2581
feat(ee): public sharing controls (#1910)
* feat(ee): public sharing controls
* lint
2026-02-06 10:35:36 -08:00
Philip Okugbe
2f97a3debc
feat: DOCX import (#1913) 2026-02-06 10:34:51 -08:00
Philipinho
40b5346f9e cleanup redundant param 2026-02-06 10:28:52 -08:00
Philipinho
d6b4573b79 update compose services versions 2026-02-06 10:27:34 -08:00
Philip Okugbe
4878850b25
fix: attachment bugs in safari(#1908)
* use widely available arrayBuffer
* fix stream fails in safari
* fix hasFocus bug
* fix safari upload bug
* feat: add HTTP range request support for file serving
2026-02-05 07:47:03 -08:00
Philip Okugbe
5c3942c159
fix safari print (#1907) 2026-02-04 08:26:03 -08:00
Philipinho
e0809e7104 v0.25.1 2026-02-04 07:10:13 -08:00
Philipinho
da6793ac87 downgrade tiptap version (fix menu) 2026-02-04 07:09:48 -08:00
Philip Okugbe
08e94eb3c1
update dependencies (#1902) 2026-02-03 15:15:23 -08:00
Philipinho
5a14186f1c fix global diff css 2026-02-03 13:47:56 -08:00
Philipinho
6a0bb8d4cb v0.25.0 2026-02-03 13:18:03 -08:00
Philip Okugbe
fba9f4cb2b
New Crowdin updates (#1896)
* New translations translation.json (Japanese)

* New translations translation.json (French)

* New translations translation.json (Spanish)

* New translations translation.json (German)

* New translations translation.json (Italian)

* New translations translation.json (Korean)

* New translations translation.json (Dutch)

* New translations translation.json (Russian)

* New translations translation.json (Ukrainian)

* New translations translation.json (Chinese Simplified)

* New translations translation.json (Portuguese, Brazilian)

* New translations translation.json (Japanese)

* New translations translation.json (French)

* New translations translation.json (Spanish)

* New translations translation.json (German)

* New translations translation.json (Italian)

* New translations translation.json (Korean)

* New translations translation.json (Dutch)

* New translations translation.json (Russian)

* New translations translation.json (Ukrainian)

* New translations translation.json (Chinese Simplified)

* New translations translation.json (English)

* New translations translation.json (Portuguese, Brazilian)

* New translations translation.json (Japanese)

* New translations translation.json (French)

* New translations translation.json (Spanish)

* New translations translation.json (German)

* New translations translation.json (Italian)

* New translations translation.json (Korean)

* New translations translation.json (Dutch)

* New translations translation.json (Russian)

* New translations translation.json (Ukrainian)

* New translations translation.json (Chinese Simplified)

* New translations translation.json (English)

* New translations translation.json (Portuguese, Brazilian)

* New translations translation.json (Japanese)

* New translations translation.json (French)

* New translations translation.json (Spanish)

* New translations translation.json (German)

* New translations translation.json (Italian)

* New translations translation.json (Korean)

* New translations translation.json (Dutch)

* New translations translation.json (Russian)

* New translations translation.json (Ukrainian)

* New translations translation.json (Chinese Simplified)

* New translations translation.json (Portuguese, Brazilian)
2026-02-03 13:16:27 -08:00
Philipinho
d8f7c4a822 cleanup 2026-02-03 13:12:39 -08:00