* refactor: attaching emoji in tree node is unnecessary
* refactor: pass depth and hasChildren as separate props
* refactor: move tree impl into a separate hook
* refactor: separate out as DocumentExplorer for reuse
* fix: separate search and node
* fix: review comments
* fix: tsc
* GA integration settings
* trackingId -> measurementId
Hook up script
* Public page GA tracking
Correct layout of settings
* Remove multiple codepaths for loading GA measurementID, add missing db index
* Remove unneccessary changes, tsc
* test
* Store import<->document relationship
* Update 20221112152649-import-document-relationship.js
* Store importId on collection, UI tweaks on import screen
* fix: Allow viewers to upload avatar
* DeleteAttachmentTask
* fix: Previous avatar should be deleted on change, if possible
* fix: Also cleanup team logo on change
* feat(server): allow document to be created without collectionId
* fix(server): policies for a draft doc without collection
* fix(app): hide share button for drafts
* feat(server): permissions around publishing a draft
* fix(server): return drafts without collection
* fix(server): handle draft deletion
* fix(server): show drafts in deleted docs
* fix(server): allow drafts without collection to be restored
* feat(server): return drafts in search results
* fix: use buildDraftDocument for drafts
* fix: remove isDraftWithoutCollection
* fix: do not return drafts for team
* fix: put invariants
* fix: query clause
* fix: check only for undefined
* fix: restore includeDrafts clause as it was before
* 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
* 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
* 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>