* chore: Adds name to Redis connections for debugging, minor associated refactoring
* Upgrade bull, ioredis
* Add pid to redis connection name in development
* Add support for Grist embeds.
* Change Grist integration to only support SaaS
* Update Regex
* Update shared/editor/embeds/index.tsx
Co-authored-by: Apoorv Mishra <apoorvmishra101092@gmail.com>
* Change Grist embed to use function based API
* Convert standard URL into embed url
* Update shared/editor/embeds/Grist.tsx
Co-authored-by: Apoorv Mishra <apoorvmishra101092@gmail.com>
* Update shared/editor/embeds/Grist.tsx
Co-authored-by: Apoorv Mishra <apoorvmishra101092@gmail.com>
* Update shared/editor/embeds/Grist.tsx
Co-authored-by: Apoorv Mishra <apoorvmishra101092@gmail.com>
* Lint and test updates
Co-authored-by: Apoorv Mishra <apoorvmishra101092@gmail.com>
Co-authored-by: Tom Moor <tom.moor@gmail.com>
* chore: refactor server test setup
* Close dangling redis connections instead of mocking rate limiter
specific modules
* Segregate pre and post env test setup
* fix: remove mock file
* 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: Upgrade markdown-it to fix text collapse bug
* tsc. Need to overwrite the types for now until all Prosemirror modules are updated, they have recently been converted to Typescript and the types conflict
* feat: Put request rate limit at application server
This PR contains implementation for a blanket rate limiter at
application server level. Currently the allowed throughput is set high
only to be changed later as per the actual data gathered.
* Simplify implementation
1. Remove shutdown handler to purge rate limiter keys
2. Have separate keys for default and custom(route-based) rate limiters
3. Do not kill default rate limiter because it is not needed anymore due
to (2) above
* Set 60s as default for rate limiting window
* Fix env types