Commit Graph
100 Commits
Author SHA1 Message Date
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