37e418b408
New translations translation.json (Dutch)
2025-10-07 21:19:04 +01:00
cfa9800720
New translations translation.json (Korean)
2025-10-07 21:19:02 +01:00
5dc0f01a22
New translations translation.json (Japanese)
2025-10-07 21:19:01 +01:00
00aaa5849a
New translations translation.json (Italian)
2025-10-07 21:19:00 +01:00
be6f72e48e
New translations translation.json (Spanish)
2025-10-07 21:18:59 +01:00
eaa00ae9ec
New translations translation.json (French)
2025-10-07 21:18:57 +01:00
29e86a2a81
New translations translation.json (German)
2025-10-07 21:18:56 +01:00
cea14282d0
New translations translation.json (German)
2025-09-25 14:01:28 +01:00
1e60899d05
New translations translation.json (German)
2025-09-24 15:20:25 +01:00
a494992625
New translations translation.json (Russian)
2025-09-18 07:57:18 +01:00
385ef63f4e
New translations translation.json (Portuguese, Brazilian)
2025-09-15 21:39:44 +01:00
0505cac352
New translations translation.json (English)
2025-09-15 21:39:43 +01:00
559d5074cb
New translations translation.json (Chinese Simplified)
2025-09-15 21:39:41 +01:00
82d12a2406
New translations translation.json (Ukrainian)
2025-09-15 21:39:40 +01:00
389d747eb7
New translations translation.json (Russian)
2025-09-15 21:39:39 +01:00
864e01ac28
New translations translation.json (Dutch)
2025-09-15 21:39:38 +01:00
d1efa37e1b
New translations translation.json (Korean)
2025-09-15 21:39:37 +01:00
44407d8e08
New translations translation.json (Japanese)
2025-09-15 21:39:36 +01:00
4e1df3431c
New translations translation.json (Italian)
2025-09-15 21:39:35 +01:00
683497a8d7
New translations translation.json (German)
2025-09-15 21:39:34 +01:00
9a3ef526f2
New translations translation.json (Spanish)
2025-09-15 21:39:33 +01:00
2b0a483fec
New translations translation.json (French)
2025-09-15 21:39:32 +01:00
e05966a702
New translations translation.json (Dutch)
2025-09-08 11:47:52 +01:00
db55de9406
feat: progressive web app ( #614 )
...
* feat: progressive web app
* replace icons
---------
Co-authored-by: Philipinho <16838612+Philipinho@users.noreply.github.com >
2025-09-04 01:33:52 +01:00
1919eba340
New Crowdin updates ( #1522 )
...
* 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)
2025-09-03 13:17:08 -07:00
7951b2e0c6
New Crowdin updates ( #1509 )
...
* 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)
2025-09-03 18:28:30 +01:00
73b78f625d
more translations
2025-09-03 10:11:19 -07:00
73ee6ee8c3
feat: subpages (child pages) list node ( #1462 )
...
* feat: subpages list node
* disable user-select
* support subpages node list in public pages
2025-08-31 18:54:52 +01:00
a3d058042f
New Crowdin updates ( #1342 )
...
* New translations translation.json (German)
* New translations translation.json (Spanish)
* New translations translation.json (Russian)
* New translations translation.json (Spanish)
* New translations translation.json (Russian)
* New translations translation.json (French)
* 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 (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 (Russian)
* New translations translation.json (French)
* 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 (Ukrainian)
* New translations translation.json (Chinese Simplified)
* New translations translation.json (Portuguese, Brazilian)
2025-07-29 21:53:16 +01:00
ca9558b246
feat(EE): resolve comments ( #1420 )
...
* feat: resolve comment (EE)
* Add resolve to comment mark in editor (EE)
* comment ui permissions
* sticky comment state tabs (EE)
* cleanup
* feat: add space_id to comments and allow space admins to delete any comment
- Add space_id column to comments table with data migration from pages
- Add last_edited_by_id, resolved_by_id, and updated_at columns to comments
- Update comment deletion permissions to allow space admins to delete any comment
- Backfill space_id on old comments
* fix foreign keys
2025-07-29 21:36:48 +01:00
ec12e80423
feat: trash for deleted pages in space ( #325 )
...
* initial commit
* added recycle bin modal, updated api routes
* updated page service & controller, recycle bin modal
* updated page-query.ts, use-tree-mutation.ts, recycled-pages.ts
* removed quotes from openRestorePageModal prompt
* Updated page.repo.ts
* move button to space menu
* fix react issues
* opted to reload to enact changes in the client
* lint
* hide deleted pages in recents, handle restore child page
* fix null check
* WIP
* WIP
* feat: implement dedicated trash page
- Replace modal-based trash view with dedicated route `/s/:spaceSlug/trash`
- Add pagination support for deleted pages
- Other improvements
* fix translation
* trash cleanup cron
* cleanup
---------
Co-authored-by: Philipinho <16838612+Philipinho@users.noreply.github.com >
2025-07-29 21:20:49 +01:00
b30bf61dc4
feat: home space list ( #1400 )
2025-07-25 00:21:40 +01:00
662460252f
feat(EE): MFA implementation ( #1381 )
...
* feat(EE): MFA implementation for enterprise edition
- Add TOTP-based two-factor authentication
- Add backup codes support
- Add MFA enforcement at workspace level
- Add MFA setup and challenge UI pages
- Support MFA for login and password reset flows
- Add MFA validation for secure pages
* fix types
* remove unused object
* sync
* remove unused type
* sync
* refactor: rename MFA enabled field to is_enabled
* sync
2025-07-25 00:18:53 +01:00
8522844673
feat: duplicate page in same space ( #1394 )
...
* fix internal links in copies pages
* feat: duplicate page in same space
* fix children
2025-07-21 21:39:57 +01:00
29388636bf
feat: find and replace in editor ( #689 )
...
* feat: page find and replace
* * Refactor search and replace directory
* bugfix scroll
* Fix search and replace functionality for macOS and improve UX
- Fixed cmd+f shortcut to work on macOS (using 'Mod' key instead of 'Control')
- Added search functionality to title editor
- Fixed "Not found" message showing when search term is empty
- Fixed tooltip error when clicking replace button
- Changed replace button from icon to text for consistency
- Reduced width of search input fields for better UI
- Fixed result index after replace operation to prevent out-of-bounds error
- Added missing translation strings for search and replace dialog
- Updated tooltip to show platform-specific shortcuts (⌘F on Mac, Ctrl-F on others)
* Hide replace functionality for users with view-only permissions
- Added editable prop to SearchAndReplaceDialog component
- Pass editable state from PageEditor to SearchAndReplaceDialog
- Conditionally render replace button based on edit permissions
- Hide replace input section for view-only users
- Disable Alt+R shortcut when user lacks edit permissions
* Fix search dialog not closing properly when navigating away
- Clear all state (search text, replace text) when closing dialog
- Reset replace button visibility state on close
- Clear editor search term to remove highlights
- Ensure dialog closes properly when route changes
* fix: preserve text marks (comments, etc.) when replacing text in search and replace
- Collect all marks that span the text being replaced using nodesBetween
- Apply collected marks to the replacement text to maintain formatting
- Fixes issue where comment marks were being removed during text replacement
* ignore type error
---------
Co-authored-by: Philipinho <16838612+Philipinho@users.noreply.github.com >
2025-07-10 04:40:07 +01:00
d1dc6977ab
feat: edit mode preference ( #666 )
...
* lock/unlock pages
* remove using isLocked column - add default page edit state preference
* * Move state management to editors (avoids flickers on edit mode switch)
* Rename variables
* Add strings to translation file
* Memoize components in page component
* Fix title editor sending update request on editable state change
* fixed errors merging main
* Fix embed view in read-only mode
* remove unused line
* sync
* fix responsiveness on mobile
---------
Co-authored-by: Philipinho <16838612+Philipinho@users.noreply.github.com >
2025-06-18 00:11:47 +01:00
f39d48d6ee
New Crowdin updates ( #1063 )
...
* New translations translation.json
2025-06-11 23:21:01 +01:00
de7982fe30
feat: copy page to different space ( #1118 )
...
* Add copy page to space endpoint
* copy storage function
* copy function
* feat: copy attachments too
* Copy page - WIP
* fix type
* sync
* cleanup
2025-04-30 14:43:16 +01:00
00d92a3690
New Crowdin updates ( #1008 )
...
* New translations translation.json (Russian)
* New translations translation.json (Russian)
* New translations translation.json (Chinese Simplified)
* New translations translation.json (Spanish)
* 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 (Chinese Simplified)
* New translations translation.json (English)
* New translations translation.json (Portuguese, Brazilian)
2025-04-22 20:57:07 +01:00
6c422011ac
feat: public page sharing ( #1012 )
...
* Share - WIP
* - public attachment links
- WIP
* WIP
* WIP
* Share - WIP
* WIP
* WIP
* include userRole in space object
* WIP
* Server render shared page meta tags
* disable user select
* Close Navbar on outside click on mobile
* update shared page spaceId
* WIP
* fix
* close sidebar on click
* close sidebar
* defaults
* update copy
* Store share key in lowercase
* refactor page breadcrumbs
* Change copy
* add link ref
* open link button
* add meta og:title
* add twitter tags
* WIP
* make shares/info endpoint public
* fix
* * add /p/ segment to share urls
* minore fixes
* change mobile breadcrumb icon
2025-04-22 20:37:32 +01:00
a9f370660b
New Crowdin updates ( #1005 )
...
* 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 (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 (Chinese Simplified)
* New translations translation.json (Portuguese, Brazilian)
2025-04-08 17:28:33 +01:00
117c7049ff
fix
2025-04-08 17:15:09 +01:00
cd10365f71
new translations
2025-04-08 17:10:48 +01:00
ee30d9d0f2
New Crowdin updates ( #1003 )
...
* New translations translation.json (French)
* New translations translation.json (Italian)
* New translations translation.json (Japanese)
* New translations translation.json (Korean)
* New translations translation.json (Russian)
* New translations translation.json (Chinese Simplified)
* New translations translation.json (English)
* New translations translation.json (Portuguese, Brazilian)
2025-04-08 17:10:08 +01:00
276ececbf2
cleanup
2025-04-08 17:06:32 +01:00
fa194a497c
cleanup
2025-04-08 17:04:43 +01:00
7431804a46
feat: delete workspace member ( #987 )
...
* add delete user endpoint (server)
* delete user (UI)
* prevent token generation
* more checks
2025-04-07 19:26:03 +01:00
233536314f
feat: add Table of contents ( #981 )
...
* chore: add table of contents module
* refactor
* lint
* null check
---------
Co-authored-by: Philipinho <16838612+Philipinho@users.noreply.github.com >
2025-04-05 19:03:42 +01:00
17ce3bab8a
feat: move page between spaces ( #988 )
...
* feat: Move the page to another space
- The ability to move a page to another space has been added
* feat: Move the page to another space
* feat: Move the page to another space
- Correction of the visibility attribute of elements that extend beyond the boundaries of the space selection modal window
* feat: Move the page to another space
- Added removal of query keys when moving pages
* feat: Move the page to another space
- Fix locales
* feat: Move the page to another space
* feat: Move the page to another space
- Fix docker compose
* feat: Move the page to another space
* feat: Move the page to another space
- Some refactor
* feat: Move the page to another space
- Attachments update
* feat: Move the page to another space
- The function of searching for attachments by page ID and updating attachments has been combined
* feat: Move the page to another space
- Fix variable name
* feat: Move the page to another space
- Move current space to parameter of component SpaceSelectionModal
* refactor ui
---------
Co-authored-by: plekhanov <astecom@mail.ru >
2025-04-04 23:44:18 +01:00
f8ce160906
feat: add version check ( #922 )
...
* Add version endpoint
* version indicator
* refetch
* * Translate strings
* Handle error
2025-03-22 15:29:10 +00:00