* stash
* wip
* cleanup
* Remove collaborativeEditing toggle, it will always be on in next release.
Flip separateEdit -> seamlessEdit
* Clarify language, hide toggle when collaborative editing is disabled
* Flip boolean to match, easier to reason about
* deps
* diffCompact
* Diffs in email
* test
* fix: Fade deleted images
fix: Don't include empty paragraphs as context
fix: Allow for same image multiple times and refactor
* Remove target _blank
* fix: Table heading incorrect color
* feat: support user preferences
* feat: support team preferences
* fix: update snapshots
* feat: update last visited url by user
* fix: update snapshots
* fix: use path instead of complete url
* fix: do not expose preferences to other users with the exception of admin
* feat: support defaultDocumentStatus as a team preference
* feat: allow edit even when collaborative editing is enabled
* Revert "feat: allow edit even when collaborative editing is enabled"
This reverts commit a22a02a406d01eb418dab32249b8b846bf77c59b.
* Revert "feat: support defaultDocumentStatus as a team preference"
This reverts commit 4928cffe5c682952b1e469a3e50a1a34d05dcc58.
* fix: keep preference as a boolean
* Index emails migration
* feat: Add available teams to auth.info endpoint
* test
* separate presenter
* Include data from sessions cookie, include likely logged in state
* test
* test: Add test for team only in session cookie
* Suggested query change in PR feedback
* tidy
* Add title to HTML export
* fix: Add compatability for documents without collab state
* Add HTML download option to UI
* docs
* fix nodes that required document to render
* Refactor to allow for styling of HTML export
* div>article for easier programatic content extraction
* Allow DocumentHelper to be used with Revisions
* Add revisions.diff endpoint, first version
* Allow arbitrary revisions to be compared
* test
* HTML driven revision viewer
* fix: Dark mode styles for document diffs
* Add revision restore button to header
* test
* Support RTL languages in revision history viewer
* fix: RTL support
Remove unneccessary API requests
* Prefetch revision data
* Animate history sidebar
* fix: Cannot toggle history from timestamp
fix: Animation on each revision click
* Clarify currently editing history item
* tidy
* Add title to HTML export
* fix: Add compatability for documents without collab state
* Add HTML download option to UI
* docs
* fix nodes that required document to render
* Refactor to allow for styling of HTML export
* div>article for easier programatic content extraction
* feat: add needed columns for throttling notifs
* feat: update model
* feat: deliver only one notif in a 12 hour window
* fix: address review comments
* prevent retry if notification update fails
* fix type compatibility instead of circumventing it
* add index for emailedAt
* fix: add metadata attr to EmailProps
* chore: decouple metadata from EmailProps
* chore: add test
* chore: revert sending metadata in props
* Improve types
* More types, fix default permission for viewers added to collection
* fix change of default role for CollectionGroup
* Restore policy
* test
* tests
* wip
* stash
* fix: make authenticationId nullable fk
* fix: apply generics to resolve compile time type errors
* fix: loosen integration settings
* chore: refactor into functional component
* feat: pass integrations all the way to embeds
* perf: avoid re-fetching integrations
* fix: change attr name to avoid type overlap
* feat: use hostname from embed settings in matcher
* Revert "feat: use hostname from embed settings in matcher"
This reverts commit e7485d9cda4dcf45104e460465ca104a56c67ddc.
* feat: refactor into a class
* chore: refactor url regex formation as a util
* fix: escape regex special chars
* fix: remove in-house escapeRegExp in favor of lodash's
* fix: sanitize url
* perf: memoize embeds
* fix: rename hostname to url and allow spreading entire settings instead of just url
* fix: replace diagrams with drawio
* fix: rename
* fix: support self-hosted and saas both
* fix: assert on settings url
* fix: move embed integrations loading to hook
* fix: address review comments
* fix: use observer in favor of explicit state setters
* fix: refactor useEmbedIntegrations into useEmbeds
* fix: use translations for toasts
Co-authored-by: Tom Moor <tom.moor@gmail.com>
* Add `emails.export_completed` notification to settings menu
Signed-off-by: AKP <tom@tdpain.net>
* Don't send email when export_completed notifications are disabled
Signed-off-by: AKP <tom@tdpain.net>
* Automatically subscribe new users to `export_completed` notifications
Signed-off-by: AKP <tom@tdpain.net>
* Alter secondary text on export page to mention optional notifications
Signed-off-by: AKP <tom@tdpain.net>
* Alter toast text on collection export for optional notifications
Signed-off-by: AKP <tom@tdpain.net>
* Only subscribe new admins to export notifs
Signed-off-by: AKP <tom@tdpain.net>
* Move `export_completed` notification decision into `beforeSend`
Signed-off-by: AKP <tom@tdpain.net>
* Update server/emails/templates/ExportFailureEmail.tsx
Co-authored-by: Tom Moor <tom.moor@gmail.com>
* Update server/emails/templates/ExportSuccessEmail.tsx
Co-authored-by: Tom Moor <tom.moor@gmail.com>
Signed-off-by: AKP <tom@tdpain.net>
Co-authored-by: Tom Moor <tom.moor@gmail.com>
* fix: Long collection description prevents import
fix: Parallelize attachment upload during import
* fix: Improve Notion image import matching
* chore: Bump JSZIP (perf)
* fix: Allow redirect from /doc/<id> to canonical url
* fix: Importing document with only title duplicates title in body
* chore: Updating all model validations before the white-hatters get to it ;)
* test
* Remove isUrl validation, thinking about it need to account for minio and other weird urls here
* chore: Async user avatar upload processor
* chore: Async team avatar upload
* Refactor to task for retries
* Docs
Include avatarUrl in task props to prevent race condition
Remove transaction around upload fetch request