* fix: Catch and warn of rare error when emoji combinations cause document to be unable to persist changes
closes#3230
* addEventListener -> removeEventListener
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