Philipinho
e4a6305f39
Merge branch 'main' into sandboxed
2026-09-07 14:46:04 +01:00
Philipinho
1121253a43
sync
2026-09-07 06:59:22 +01:00
Philipinho
8fc30344a3
chore(ee): update submodule for Confluence link remapping and layout fixes
2026-09-07 05:03:28 +01:00
Philipinho
84aea058f3
fix(editor): guard unresolved page mentions and bare anchor links
...
A page mention without a slug rendered as a link ending in -null; it now
renders as plain text. A link whose href is a bare #fragment scrolls to
the target on the current page instead of opening about:blank.
2026-09-07 05:03:28 +01:00
Philip Okugbe
89e27a1a07
fix(editor): allow gap cursors between top-level blocks ( #2477 )
2026-09-06 19:22:28 +01:00
Philip Okugbe
27fa9af959
fix: public page print ( #2476 )
...
* fix pdf-print for public pages
* fix print in dark mode
2026-09-05 17:28:45 +01:00
Philip Okugbe
6ff8c7cdfe
refactor(favorites): move favorite filtering into the repository query ( #2475 )
...
* refactor(favorites): move favorite filtering into the repository query
* perf: resolve cleanup targets by primary key
2026-09-05 14:40:10 +01:00
Philip Okugbe
ac7935eff9
chore: package updates ( #2474 )
2026-09-05 12:42:55 +01:00
Philip Okugbe
876f3da1b2
feat(beta): public spaces ( #2473 )
2026-09-05 11:52:10 +01:00
Philipinho
f4796c982e
sync
2026-09-04 14:56:08 +01:00
Philip Okugbe
0d69d48c52
feat(ee): SIEM ( #2471 )
2026-09-04 14:53:14 +01:00
Philipinho
5b85464561
sync
2026-08-28 00:07:10 +01:00
Philip Okugbe
622d085530
New Crowdin updates ( #2435 )
2026-08-27 12:43:19 +01:00
Philip Okugbe
d92716d82f
feat: search group members ( #2445 )
2026-08-27 12:43:08 +01:00
Philip Okugbe
579e22a45e
fix: use ACL username and decode credentials in Redis URL parsing ( #2434 )
...
* fix: use ACL username and decode credentials in Redis URL parsing
* fix: pass family and TLS options to the collab app module
2026-08-26 14:16:18 +01:00
Philip Okugbe
c3d9a19545
New Crowdin updates ( #2332 )
2026-08-26 14:08:10 +01:00
Philipinho
214a73b6a0
refactor: rename MCP oauth-only setting to enforceMcpOauth
2026-08-26 13:45:28 +01:00
Philipinho
278d318771
sync
2026-08-26 12:56:15 +01:00
Philip Okugbe
e56de8eb6c
feat(ee): MCP OAuth ( #2432 )
...
* feat: mcp oauth
* fix: small refactor
* fix: cleanup consent
2026-08-26 12:55:30 +01:00
Philip Okugbe
b29e130f26
fix: enhance lightbox ( #2429 )
...
* fix: close on click outside; smaller icon size
* fix: make ALT more visible
2026-08-26 02:24:02 +01:00
Philip Okugbe
56474e5b70
fix: remove client compression script ( #2428 )
2026-08-25 17:31:49 +01:00
Philipinho
83d7ee4460
chore: pnpm minor version
2026-08-25 04:34:11 +01:00
Philipinho
fc90fbd8c0
chore: update pnpm
2026-08-25 04:31:23 +01:00
Philip Okugbe
a0ec93506c
chore: compress and lazy load client code ( #2425 )
2026-08-25 03:29:56 +01:00
Philipinho
a415b86193
fix: clean up unaccent usage in index
2026-08-25 03:28:59 +01:00
Philipinho
702f8b7a41
fix: local editor cache
2026-08-25 02:54:38 +01:00
Philip Okugbe
cd597f0161
chore: remove unused npm modules in Docke build ( #2422 )
2026-08-24 20:32:50 +01:00
Philip Okugbe
b7f0b063dc
feat(ee): add enterprise ai chat controls ( #2421 )
...
* feat(ee): add enterprise ai chat controls
* feat: add comment listing tool to ai chat
* fix: scope comment endpoints to workspace and skip trashed pages
2026-08-24 20:29:21 +01:00
Philip Okugbe
549cf7c005
fix: skip pgvector table check when enabling AI search on turbopuffer ( #2416 )
2026-08-22 13:20:35 +01:00
Philip Okugbe
e14f499f3d
fix: pass tls to redis in throttle module ( #2415 )
2026-08-22 03:46:00 +01:00
Philipinho
66b424a3b8
fix: preserve hash in vimeo embed url
2026-08-20 22:25:45 +01:00
Philipinho
caf049a181
Merge branch 'main' into sandboxed
2026-08-19 22:14:50 +01:00
Philipinho
ab43031375
fix race issue
2026-08-19 21:46:01 +01:00
Philip Okugbe
8913d20aa0
chore: package updates ( #2412 )
2026-08-19 19:59:00 +01:00
Philip Okugbe
232beda471
feat(ee): turbopuffer ai vector search driver ( #2402 )
...
* feat(ai): add AI_VECTOR_DRIVER and turbopuffer configuration
* feat(ai): carry workspace and target space ids on vector lifecycle events
* feat(ai): add vector driver interface and turbopuffer request helpers
* feat(ai): add pgvector driver behind the vector driver interface
* refactor(ai): route vector reads and writes through the vector driver
* feat(ai): add turbopuffer vector driver
* feat(ai): rebuild turbopuffer namespaces when the embedding model changes
* feat(ai): warm the vector namespace cache on session start
* fix(ai): harden turbopuffer misconfiguration and reset failure paths
* fix(ai): collapse blank-line runs in extracted page text
* fix(ai): skip full re-embed when ai search is re-enabled within the delete grace window
* sync
* fix(ai): store real embedding dimensions instead of serialized vector length
* fix(ai): filter search hits by the page's current space at query time
* fix(ai): retry the page moved-to-space vector patch job
* sync
* feat(ai): pre-warm the vector namespace
* fix(ai): pass AI_VECTOR_DRIVER through the client build config
2026-08-17 21:18:16 +01:00
Philip Okugbe
911c1057d6
feat(server): add global encryption module (AES-256-GCM) ( #2400 )
...
Provides an injectable EncryptionService that encrypts/decrypts strings
with AES-256-GCM using a key derived from APP_SECRET with domain
separation.
2026-08-16 12:35:37 +01:00
Philipinho
d136864ef1
sync
2026-08-16 11:46:50 +01:00
Philipinho
4ac1c43c0c
sync
2026-08-16 02:19:33 +01:00
Philipinho
db16bd3015
fix: hide import in cloud
2026-08-14 14:55:17 +01:00
Philipinho
09cb50246e
synced
2026-08-14 13:48:49 +01:00
Philipinho
0f0ebdd0bf
Merge branch 'main' into sandboxed
2026-08-14 02:10:49 +01:00
Philip Okugbe
c093c18bf3
fix(client): keep space switcher dropdown inside its popover ( #2392 )
2026-08-14 02:08:28 +01:00
Philipinho
8ba4792e25
fix text color and highlight
2026-08-14 01:27:04 +01:00
Philip Okugbe
ea59912c7e
feat(editor): auto-detect text direction for RTL support ( #2389 )
2026-08-12 23:48:03 +01:00
Philipinho
06d7e24676
chore(import): silence sandbox boot preamble in production
2026-08-12 22:09:20 +01:00
Philipinho
3219bd7160
chore(import): label sandbox worker boot logs
2026-08-12 21:56:40 +01:00
Philipinho
8b73343b6c
feat(import): run confluence api import in sandboxed worker
2026-08-12 21:30:42 +01:00
Philipinho
809f6eb3be
fix(queue): expose queue producers through a global module
2026-08-12 21:17:07 +01:00
Philipinho
5d8e9fde8b
feat(queue): add dedicated confluence import queue name
2026-08-12 20:48:41 +01:00
Philipinho
dacaaf5629
refactor(page): move next page position query into page repo
2026-08-12 20:47:58 +01:00
Philipinho
1dd7d79453
refactor(import): move file task processor into app-only module
2026-08-12 20:46:52 +01:00
Philipinho
ecc6b974b5
refactor(queue): extract shared bull config and queue registrations
2026-08-12 20:46:04 +01:00
Philipinho
db3ff54da1
fix base node
2026-08-12 16:47:32 +01:00
Philipinho
defc1f4ba5
Merge branch 'main' into confluence-importer
2026-08-12 15:06:08 +01:00
Philip Okugbe
9414a38215
feat: page attachments endpoint and modal ( #2386 )
...
* feat: page attachments endpoint
* feat: attachments modal
2026-08-12 14:04:33 +01:00
Philipinho
089286f6cf
fix: delete pnpm cache
2026-08-12 12:33:34 +01:00
Philip Okugbe
737cd67965
feat: compare two page versions ( #2385 )
2026-08-12 12:31:02 +01:00
Philip Okugbe
a0b2ac6ae3
feat: footnotes ( #2384 )
...
* feat: footnotes
* feat: proper DOCX support
2026-08-12 12:30:30 +01:00
Philipinho
50e81ade57
sync
2026-08-11 14:59:58 +01:00
Philipinho
228fe14cd8
fix: arbitrary colors in dark mode
2026-08-11 14:32:28 +01:00
Philipinho
2fe13daa09
Merge branch 'main' into confluence-importer
2026-08-10 18:10:54 +01:00
Philip Okugbe
7439da2f6e
chore: package updates ( #2383 )
...
* update
* update versions
* package updates
2026-08-10 17:56:12 +01:00
Philip Okugbe
305fd40686
fix: browser tab showing url instead of page title ( #2382 )
2026-08-10 17:38:03 +01:00
Philipinho
4bd51d7404
fix: self-reference parent page
2026-08-10 17:37:12 +01:00
Philipinho
44086cbb01
sync
2026-08-10 16:54:11 +01:00
Philip Okugbe
89378ee766
chore: package updates ( #2378 )
...
* chore: package updates
* remove stale overrides
2026-08-06 23:41:36 +01:00
Philipinho
a81e5c42ec
sync
2026-08-03 23:05:28 +01:00
Philipinho
65af1cc2a4
sync
2026-08-03 16:25:50 +01:00
Philipinho
231f0deeb0
fix highlight color
2026-08-03 02:13:45 +01:00
Philipinho
b9d8612ecd
Merge branch 'main' into confluence-importer
2026-08-02 22:30:06 +01:00
Philip Okugbe
56ac42767a
fix: stale placeholder decorations on empty paragraphs ( #2374 )
2026-08-02 21:07:50 +01:00
Philipinho
38380211a5
fix: dedupe duplicate packages
2026-08-01 11:57:05 +01:00
Philip Okugbe
cd34594b5d
fix: placeholder bug ( #2373 )
...
* fix placeholder check
* tiptap v3.29.2
* add s3 max socket env
2026-08-01 11:45:25 +01:00
Philip Okugbe
70d2ff8685
fix: increase s3 client max socket limit ( #2355 )
2026-07-21 22:59:25 +01:00
Philipinho
0ba2d78660
chore: update pnpm and axios
2026-07-20 20:46:02 +01:00
Philip Okugbe
3ed505d2be
fix: toolbar flicker on navigation ( #2352 )
2026-07-20 20:36:03 +01:00
Philip Okugbe
a55057db37
feat: collab hocuspocus v4 upgrade ( #2351 )
...
* WIP 1
* complete v4 migration
* add flushDelay
* feat: multiplexing
* fix: survive hocuspocus v4 message timeout
* fix: searchTerm type error
2026-07-20 20:34:09 +01:00
Philip Okugbe
ce8fbb86ff
chore: upgrade to node 26 and pnpm 11 ( #2342 )
...
* chore: pnpm 11
* chore: set minimum age and allowedBuilds
* Node 26; pnpm 11
* prod package overrides
* dev package overides
* cleanup
2026-07-20 19:44:51 +01:00
Philipinho
e76c138e4c
sync
2026-07-09 21:39:17 +01:00
Philipinho
e146cfd075
fix: supported comment nodes
2026-07-09 21:33:40 +01:00
Philipinho
e28df6ad88
fix
2026-07-04 14:11:44 +01:00
Philipinho
efcca2e4fd
sync
2026-07-03 21:20:31 +01:00
Philipinho
3b57ce7c89
fix: comment error boundary
2026-07-03 21:12:09 +01:00
Philipinho
86687d2bf2
add image and table node to comment editor
...
* fix react error
2026-07-03 20:10:07 +01:00
Philipinho
15f893184e
Merge branch 'main' into confluence-importer
2026-07-03 16:21:19 +01:00
Philip Okugbe
4132dd597c
New Crowdin updates ( #2323 )
2026-07-03 11:57:07 +01:00
Philip Okugbe
8a2c457ab9
feat: kanban group editing ( #2322 )
...
* feat: support opening property menu directly on options panel
* refactor: expose group-by property from useKanbanColumns
* feat: rename kanban group by clicking column name
* feat: edit group-by property from kanban column menu
* fix: license-gate base and kanban inserts
* fix: add missing bases strings to en-US translation file
2026-07-03 11:35:26 +01:00
Philipinho
dc3f7b0be4
Merge branch 'main' into confluence-importer
2026-07-01 23:05:52 +01:00
Philipinho
88e057c76e
fix: don't auto embed pdf
2026-06-30 02:48:10 +01:00
Philipinho
6ff7f69137
fix: file import page title
2026-06-30 02:45:07 +01:00
Philipinho
481aae5507
sync
2026-06-30 02:36:52 +01:00
Philipinho
12d68765d9
v0.95.0
2026-06-30 01:33:34 +01:00
Philipinho
27a80b57f8
sync
2026-06-30 01:32:19 +01:00
Philip Okugbe
15bdf680d9
feat: workspace default edit preference ( #2319 )
2026-06-30 01:10:51 +01:00
Philipinho
96faff7175
fix: reactive subpage list
2026-06-29 19:58:22 +01:00
Philipinho
2959504470
fix tree merge
2026-06-29 19:02:21 +01:00
Philip Okugbe
37a88d171a
New Crowdin updates ( #2318 )
2026-06-29 19:01:02 +01:00
Philip Okugbe
c86d556888
fix: templates ui fixes ( #2316 )
...
* fix: editor menus
* fix: templates creation UI gating
2026-06-29 12:32:09 +01:00
Philipinho
e8efef235c
fix: tooltip on focus
2026-06-29 00:22:59 +01:00
Philipinho
04110884b4
better zip handling
2026-06-28 23:45:38 +01:00