Philipinho
759ce0611d
feat: page verification workflow
2026-04-11 16:21:43 +01:00
Philipinho
fcffa3dfa0
fix media
2026-03-04 12:08:08 +00:00
Philipinho
1980b94825
0.70.1
2026-03-04 11:57:31 +00:00
Philip Okugbe
bea1637519
fix: image fallback regression ( #1989 )
...
* fix: image fallback regression
* fix image preview on upload
* fix image loading
2026-03-04 11:51:43 +00:00
Philipinho
057360c6be
fix: validate import size
2026-03-03 20:00:05 +00:00
Philipinho
f12bfc1ff7
fix menu positioning
2026-03-03 18:28:55 +00:00
Olivier Lambert
f5d794220e
fix: resolve keystroke input being swallowed after link in Firefox ( #1922 )
...
* fix: resolve keystroke input being swallowed after link in Firefox
In Firefox, when the cursor is at the right boundary of a link mark,
contenteditable inserts new text inside the <a> element. ProseMirror
then rejects the DOM mutation because the link mark has inclusive: false,
causing keystrokes to be silently swallowed. Unlike Chrome, Firefox also
does not fire ProseMirror's handleTextInput callback in this state.
This adds a ProseMirror plugin that intercepts printable character
keydowns at link mark boundaries and programmatically inserts the text
without the link mark, bypassing Firefox's native contenteditable
behavior entirely.
Fixes #1773
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
* fix: resolve keystroke input being swallowed before a link in Firefox
Extend the linkBoundaryInput plugin to also handle the left boundary
of links, where the cursor is just before a link (e.g. at the start
of a line). Firefox inserts text inside the <a> element in this case
too, causing ProseMirror to reject the mutation.
Fixes #1748
2026-03-03 17:19:03 +00:00
faruk-agentiqus
a3c1c6cccd
fix(editor): disable slash and emoji menus inside code blocks ( #1897 )
...
The slash command menu (/) and emoji menu (:) were incorrectly
triggering when typing inside code blocks, breaking keyboard
navigation and confusing users who type paths like /work or
symbols like := in their code.
Added an `allow` function to both SlashCommand and EmojiCommand
extensions that checks if the cursor is inside a code block and
disables the menu accordingly.
Closes #1730
2026-03-03 16:51:00 +00:00
MATHEUS LUIS LORSCHEITER
4b105586a9
fix(client): ensure sidebar remains visible on shared subpages ( #1887 )
...
* fix(client): ensure sidebar remains visible on shared subpages
* Apply suggestions from code review
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2026-03-03 16:48:53 +00:00
Philip Okugbe
d2641db895
New Crowdin updates ( #1984 )
...
* New translations translation.json (Spanish)
* New translations translation.json (German)
* New translations translation.json (Italian)
* New translations translation.json (Japanese)
* 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 (French)
* New translations translation.json (Spanish)
* New translations translation.json (German)
* New translations translation.json (Italian)
* New translations translation.json (Japanese)
* 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 (French)
2026-03-03 16:44:49 +00:00
Philipinho
1111df65cd
fix type
2026-03-03 16:22:00 +00:00
Philipinho
e455154b7d
fix
2026-03-03 16:14:35 +00:00
Philipinho
ef24b3c07d
feat: API key restriction
2026-03-03 16:07:08 +00:00
Philipinho
568dd4c321
fix headings
2026-03-03 14:17:51 +00:00
Philip Okugbe
5d2aad3668
New Crowdin updates ( #1978 )
...
* New translations translation.json (Spanish)
* New translations translation.json (German)
* New translations translation.json (Italian)
* New translations translation.json (Japanese)
* 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 (Spanish)
* New translations translation.json (German)
* New translations translation.json (Italian)
* New translations translation.json (Japanese)
* 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 (French)
* New translations translation.json (Spanish)
* New translations translation.json (German)
* New translations translation.json (Italian)
* New translations translation.json (Japanese)
* 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 (French)
* New translations translation.json (Spanish)
* New translations translation.json (German)
* New translations translation.json (Italian)
* New translations translation.json (Japanese)
* 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 (French)
* New translations translation.json (Spanish)
* New translations translation.json (German)
* New translations translation.json (Italian)
* New translations translation.json (Japanese)
* 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 (French)
* New translations translation.json (Spanish)
* New translations translation.json (German)
* New translations translation.json (Italian)
* New translations translation.json (Japanese)
* 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 (French)
* New translations translation.json (Spanish)
* New translations translation.json (German)
* New translations translation.json (Italian)
* New translations translation.json (Japanese)
* 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 (French)
2026-03-03 00:22:51 +00:00
Philipinho
9331ac2df8
v0.70.0
2026-03-03 00:13:01 +00:00
Philipinho
9f4728e279
fix
2026-03-03 00:08:20 +00:00
Philipinho
628b08339a
UI tweaks
2026-03-02 22:56:05 +00:00
Philipinho
68842dbea2
comments view
2026-03-02 22:18:57 +00:00
Philipinho
b1510cd6d7
fix
2026-03-02 22:09:57 +00:00
Philipinho
90c190df78
fix: space members view enhancement
2026-03-02 21:33:15 +00:00
Philipinho
9881c53f00
feat: spaces and groups search
2026-03-02 20:40:38 +00:00
Philipinho
721651e2e2
feat: user deactivation
2026-03-02 19:05:10 +00:00
Philip Okugbe
a3fd79dae8
fix: spreadsheets paste ( #1982 )
2026-03-02 17:37:56 +00:00
Philipinho
ee6b98edaa
* enhance ai menu
...
* remove api prefix from mcp
2026-03-02 03:31:52 +00:00
Philipinho
cf43e2b4fe
feat: enhance embed resizer
2026-03-02 02:45:13 +00:00
Philipinho
614baf153b
fix: show resize handle if node is selected
2026-03-02 01:57:06 +00:00
Philip Okugbe
4f3577f009
feat: enhance comments ( #1980 )
...
* feat: non-inline comments support
* enhance comments
* fix types
2026-03-02 01:42:25 +00:00
Philipinho
d5e4b8bb59
fix ui
2026-03-01 20:58:04 +00:00
Philipinho
1a897faaa2
exclude events
2026-03-01 19:13:56 +00:00
Philip Okugbe
60848ea903
feat(ee): mcp ( #1976 )
...
* feat: MCP
* sync
* sync
2026-03-01 18:37:39 +00:00
Philip Okugbe
2309d1434b
feat: support cross-space page mentions ( #1979 )
2026-03-01 17:14:10 +00:00
Philip Okugbe
69d7532c6c
feat(ee): audit logs ( #1977 )
...
feat: clickhouse driver
* sync
* updates
2026-03-01 01:29:03 +00:00
Philip Okugbe
85ce0d32bf
New Crowdin updates ( #1960 )
...
* New translations translation.json (Russian)
* New translations translation.json (French)
* New translations translation.json (Spanish)
* New translations translation.json (German)
* New translations translation.json (Italian)
* New translations translation.json (Japanese)
* 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 (French)
* New translations translation.json (Spanish)
* New translations translation.json (German)
* New translations translation.json (Italian)
* New translations translation.json (Japanese)
* 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 (French)
* New translations translation.json (Spanish)
* New translations translation.json (German)
* New translations translation.json (Italian)
* New translations translation.json (Japanese)
* 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 (Dutch)
* New translations translation.json (Dutch)
* New translations translation.json (French)
* New translations translation.json (Spanish)
* New translations translation.json (German)
* New translations translation.json (Italian)
* New translations translation.json (Japanese)
* New translations translation.json (Korean)
* New translations translation.json (Russian)
* New translations translation.json (Ukrainian)
* New translations translation.json (Chinese Simplified)
* New translations translation.json (Portuguese, Brazilian)
2026-02-28 01:24:57 +00:00
Philip Okugbe
fc0997fd90
feat: editor attachment paste handling ( #1975 )
...
* reupload attachments if uploaded to a different page
* use image dimensions on paste/DnD
* tooltips withinPortal:false
* isolating attribute
2026-02-28 01:24:19 +00:00
Philipinho
df64de5306
fix focus
2026-02-27 01:38:43 +00:00
Philip Okugbe
ea44468fad
feat: editor inline status node ( #1973 )
...
* inline status node
* fix alignment
* fix
* typed storage
* fix math block popup on select all
2026-02-27 01:34:03 +00:00
Philip Okugbe
59e945562d
feat(ee): page-level access/permissions ( #1971 )
...
* Add page_hierarchy table
* feat(ee): page-level permissions
* pagination
* rename migration
fixes
* fix
* tabs
* fix theme
* cleanup
* sync
* page permissions notification
* other fixes
* sharing disbled
* fix column nodes
* toggle error handling
2026-02-26 19:49:10 +00:00
Philipinho
22f33bab7c
cleanups
2026-02-25 22:41:54 +00:00
Philipinho
e0a8521566
enhance columns
2026-02-25 22:31:01 +00:00
Olivier Lambert
5de1c8e3ed
fix: inline code input rule deletes character before opening backtick ( #1923 )
...
The upstream TipTap Code extension input rule regex /(^|[^`])`([^`]+)`(?!`)$/
uses a capture group (^|[^`]) that includes the character preceding the
opening backtick in the full match. When markInputRule processes this,
it deletes everything from the match start to the code content, which
removes that preceding character along with the backtick delimiters.
For example, typing foo(`bar` would result in foo`bar` (formatted)
instead of the expected foo(`bar` (formatted) — the ( is lost.
Fix: disable the built-in Code extension from StarterKit and register it
separately with a corrected regex that uses a lookbehind assertion
(?:^|(?<=[^`])) instead of a capture group. The lookbehind asserts the
preceding character without including it in the match, so markInputRule
only deletes the backtick delimiters.
Functionally tested on Firefox and Chrome.
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-24 15:51:24 +00:00
Philip Okugbe
ef87210b3d
feat: editor UI refresh and enhancements ( #1968 )
...
* feat: new image menu
* switch to resizable side handles
* use pixels
* refactor excalidraw and drawio menu
* support image resize undo
* video resize
* callout menu refresh
* refresh table menus
* fix color scheme
* fix: patch @tiptap/core ResizableNodeView to prevent resize sticking after mouseup
* feat: columns
* notes callout
* focus on first column
* capture tab key in column
* fix print
* hide columns menu when some nodes are focused
* fix print
* fix columns
* selective placeholder
* fix blockquote
* quote
* fix callout in columns
2026-02-24 15:22:37 +00:00
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
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
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
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