* feat: added rudderstack support with events
- Added events for
- Comment Moderated
- Comment Created
- Story Created
- Comment Reaction Created
- User Flagged Comment
* fix: added logging to event tracking
* fix: improved count handler for stories not found
* feat: removed performance-now
* feat: cleaned up processors, exposed counts
* feat: increased verb of schd jobs
* fix: removed dead code
* Fix various Q&A moderation/tagging issues
- Allow Staff members to have their questions
answered and appropriately tagged
- Properly filter answering for only top level
questions (comments)
- Add documentation around various moderation
phases and comment creation steps
- Remove unnecessary status filter when setting
the status for a comment
* fix: abstracted out perspective configs
* fix: reworked tag injection
* Fix sorting/unused imports
Co-authored-by: Wyatt Johnson <accounts+github@wyattjoh.ca>
* feat: initial webhook impl
* feat: added support for key rotation
* feat: harmonized fetcher
* feat: added expired secrets cleaning
* feat: event system refactor
* feat: added story event
* feat: simplfiied webhook handler
* feat: added ref's to locations where user events can be added
* feat: added UI to support webhooks
* fix: renaming some Webhook -> WebhookEndpoint
* fix: review comments to adjuist flow
* feat: added localizations
* fix: linting, updated snapshots
* fix: adapted for new fluent
* fix: rearranged folders
* fix: linting
* feat: added webhooks documentation
* feat: improved toc generation
* feat: added some tests to webhooks
* fix: chain transition hooks
* feat: added tests around webhook ui
* fix: renamed events
* fix: adjusted circle markdown linting
* fix: adjusted doctoc script call
* review: review fixes
* review: review comments
* review: adjusted signing secret confirmation
* review: adjusted styles to harmonize button usage
* fix: updated snapshots and tests
* review: move form out of webhooks
Moved the form out of the webhooks by relocating the layout used for the
route associated with the configure routes.
* fix: fixed bugs and snapshots with tests
* feat: revised slack message format to use block api
* fix: fixed a small text bug
Co-authored-by: Vinh <vinh@vinh.tech>
Co-authored-by: Kim Gardner <kgardnr@gmail.com>
* feat: initial impl
* Create preliminary comment moderation slices
CORL-688
* Move slices logic into stacks
CORL-688
* Create user comment counts
CORL-688
* Create naive mutation that initializes user comment counts
CORL-688
* Use bulk updates in user counts migration
CORL-688
* fix: review
* fix: fixed issue with aggregation
* Migrate creating comment into stacks
CORL-688
* Migrate editing a comment to the stacks
CORL-688
* Break publishing comment status out of updateAllCounts
CORL-688
* review: removed variable scoping in favor of export
* revert: feb8e8196cd448f5cd24f1ca2eb0b91fe9bd43c7
* review: simplification of stacks implementation
This simplifies the stacks implementation to better reuse code related
to count management and event publishing. This can be used to great
effect with the upcomming events PR #2738.
* Consolidate the tenant and common context together
CORL-688
* review: removed variable scoping in favor of export
* revert: feb8e8196cd448f5cd24f1ca2eb0b91fe9bd43c7
* review: simplification of stacks implementation
This simplifies the stacks implementation to better reuse code related
to count management and event publishing. This can be used to great
effect with the upcomming events PR #2738.
* fix: check if authorID is null before update user counts
CORL-688
* Consolidate common/tenant context supporting files
CORL-688
* feat: renamed TenantContext -> GraphContext
Co-authored-by: Wyatt Johnson <accounts+github@wyattjoh.ca>
* feat: improved api for reloading tenants for cli
* fix: cleaned up merge beheviour
* feat: added support for stream/story edge
* feat: support tenant install
* fix: updated snapshot
* fix: fixed tests
* Create preliminary account deletion program flow
Does not validate password as of yet.
Does not submit a mutation to begin deletion scheduling.
CORL-236
* Create preliminary account deletion confirmation form and schema mutation
Hooks up validation and error handling to confirm the user's
password during account deletion.
Scheduling the account deletion is not implemented yet.
CORL-236
* Update requestAccountDeletion to set the user's scheduled deletion date
CORL-236
* Create preliminary cron job for scheduled account deletions
CORL-236
* Show tombstoned comments when the user has deleted their account and comments
CORL-236
* Pull in client locales for date formatting on account deletion steps
CORL-236
* Update more areas due to comment revision being nullable
CORL-236
* Allow users to cancel their account deletion request
CORL-236
* Show account deletion callout at the top of the profile stream tab
CORL-236
* Further comments and edge case handling for deleted comments site wide
CORL-236
* Show account deletion callout in the comments stream tab
CORL-236
* Send out emails during relevant account deletion events
- Confirm deletion requested
- Cancellation of deletion request
- Account deletion completed
CORL-236
* Unset emails when deleting user accounts instead of setting to null
Fixes email index collision error from setting multiple emails to null.
CORL-236
* Show organization email in account deletion steps
CORL-236
* Mark comments as deleted so that we can properly tombstone them in the stream
CORL-236
* Fix improper templating for account deletion completed emails
Sub organization name in where previously we were using the account username.
CORL-236
* Disable user drawer and display deleted flag on users in community
CORL-236
* Check for author before passing inReplyTo in ModerateCardContainer
Sometimes null when user is deleted.
CORL-236
* Tombstone moderate cards when the underlying comment is deleted
CORL-236
* Re-add deleted field to CommentContainer fragment
CORL-236
* Disable commenting or replying when user is scheduled for deletion
CORL-236
* Add snapshot tests around deletion states for comment cards and forms
CORL-236
* Add tests around the account deletion steps
CORL-236
* Set account deletion to run every 30 minutes
CORL-236
* Rename DELETION authorization to PENDING_DELETION
CORL-236
* Change log message for when account deletion tasks finds no more users to delete
CORL-236
* Update snapshots to handle proper deleted flag for scheduled deleting users
CORL-236
* Fix import ordering on various files to match coding standards
CORL-236
* Specify tenantID when querying for user during deletion
CORL-236
* Add back missing clientMutationId on cancelAccountDeletion mutation
CORL-236
* Use $unset to clear the scheduledDeletionDate
CORL-236
* Simplify create of scheduledAccountDeletion CRON function
CORL-236
* Rename and organize scheduledTask creation logic
- Rename startCronJobs to startScheduledTasks
- Return an object of named ScheduledTask items instead of an array of tasks
CORL-236
* Add comment about returning updated user when clearing scheduledDeletionDate
CORL-236
* Remove unnecessary array around tenant.locale in dateTime formatter
CORL-236
* Remove unnecessary non-null enforcement on tenant.id
CORL-236
* Remove string templated React element content
CORL-236
* Move english translated validation error to correct language file
CORL-236
* Simplify rendering of DeletionRequestCallout when deletionDate isn't available
CORL-236
* Use ternary expression instead of multiple {bool && (...)} checks
CORL-236
* Use classes object with line child style to style the step bar
CORL-236
* Update StepBar so that children of Step nodes can be undefined
Allows us to not have to insert empty placeholder strings/elements when
we want to have an empty step node.
CORL-236
* Remove use of luxon from account deletion request callouts for now
We need to decide if the extra 15KB from luxon is worth it in our bundles
before making this change.
CORL-236
* Remove unnecessary embed/deleteAccount endpoint
CORL-236
* Move DeleteAccountModal contents into a separate component
Cleans up the state management when user closes the modal and we
need the modal steps to restart.
CORL-236
* Remove localization around delete account button icon
CORL-236
* Use inline `collection(mongo)` in clearing and setting deletion date
CORL-236
* Simplify form state validation on account deletion confirm page
CORL-236
* Add todo to iterate over tenants in account deletion
CORL-236
* Remove punctuation and add context to logger messages during account deletion
CORL-236
* Break out mongo collection initialization into a shared object
Also adds a try catch error handling around the scheduled deletion
operations. Prevents errors from taking the server down.
CORL-236
* Add TODO to extract out a common formatter for date times
CORL-236
* Update translations for account deletion details
CORL-236
* Update translations for account deletion completion page
CORL-236
* During scheduled deletion, when locking deletion date, return modified user
CORL-236
* Remove un-necessary fragment container around deletion steps component
CORL-236
* Move preventSubmit outside of render function on ConfirmPage
CORL-236
* Convert collections into object of Mongo db collection initializers
Allows us to only initialize the collections we need with our
Mongo instance.
CORL-236
* Remove un-necessary lambda wrapping around collections initializer functions
CORL-236
* feat: enable persisted queries on the client
* fix: use `id` inside websocket message
* feat: initial server support for PQ
* feat: deeper server support
* feat: abstracted persisted query replacing logic
* feat: client implementation of subscriptions and modqueue live counts
* fix: unit tests
* feat: live status update in moderation
* feat: live update of new comments in moderation
* chore: View New instead of View More
* feat: fade in transition for new comments
* chore: turn websocket proxy back on
* feat: initial server impl
* fix: make it work :-)
* fix: add box shadow
* chore: make test subscriptions only support 1 top level field following the spec
* fix: linting
* feat: support clientID
* fix: linting
* feat: support commentStatusUpdated subscription
* fix: disabled styles for approve and reject button
* feat: show moderated by system and update flags
* feat: support metrics recording on websocket connections
* fix: handle when same comment enters but leaves again
* feat: added mutations for removing + scraping stories
- added mutation for removing stories
- added mutation for scraping stories
- renamed all delete* to remove* to avoid reserved keyword collision
* fix: linting
* feat: implemented createStory
* feat: added support for createStory
* feat: improved Story deletion
- Deletes comments on the deleted Story
- Deletes actions of comments that were deleted via new
`root_item_id` parameter for Comment Action's
- Added logging around critical components of the remove
process
* feat: implemented mergeStory
- Added new merge function for root actions
- Added new merge function for story comments
- Added new merge function for comment status counts
- Added new remove stories function
* fix: fixed story creation method
* fix: added action count merging
* fix: removed outdated file
* fix: removed queue that got duplicated via rebase
* fix: prevent error when action counts are empty