* 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
* 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
.substr() is deprecated so we replace it with .slice() which works similarily but isn't deprecated
Signed-off-by: Tobias Speicher <rootcommander@gmail.com>
This PR moves the entire project to Typescript. Due to the ~1000 ignores this will lead to a messy codebase for a while, but the churn is worth it – all of those ignore comments are places that were never type-safe previously.
closes#1282