* Added webpack alias for @crayons.
* Added @crayons to eslint import/no-unresolved rule ignore list.
* Added path mappings for VS Code for webpack aliases.
* Rename find_broadcast to find_auth_broadcast
* Fix broken div rendering on /notifications tab
* Allow customize notification to be enqueued
* Add specs for customize welcome notification
Also clean up existing specs to match!
* Rename customization notification method for clarity
* Remove some redundant assertions in generator spec
* Improve onboarding UI and UX (P1)
- Introduce Crayons variables
- Remove unnecessary CSS files to have just one CSS file
* Add new onboarding tests
* Update onboarding yarn test to reflect updated class names
* Fix delete button with correct form_with options
* Use correct path for edit button
* Add test for edit and delete response templates
* Use old pattern to accept alert
* Check for text instead b/c weird timing issue with backend
* throttle requests made to search endpoints
* stub elasticsearch requests in rack attack specs and disable for running specs unless tagged
* use original client IP from fastly to throttle requests to search endpoints
* check that bodyClass is present before checking what it includes
* refaactor method to return early if bodyClass if not present
* back to simple if statements
* Renamed designSystem to crayons.
* Restructured how Storybook stories are laid out in Storybook's sidebar.
* wip
* More folder restructuring for Storybook sidebar.
* Fixed Dropdown description story.
* There no longer is a Dropdown for no padding. Just add additional utility classes.
* Showing dropdowns by default in Storybook as they are hidden by default.
* crayons-btn-group + crayons-btn--icon-alone
* typos
* better padding on outlined buttons
* make ooutlined button border a variable
* hey, pawel - how about not being an idiot??
Before this change the example curl command returns 400 bad request with an appropriate API key and article ID.
After this change the example curl command does not return error 400 bad request.
* create index for reactions and their reactables, set up serializer
* use respond_to instead of checking type
* remove rubocop change
* add last_indexed_at to reactions index
* Add audit logging for negative reactions
This change saves requests that create negative reactions to the audit
log. We need to be monitoring admin and moderator actions throughout the
app to increase visiblity on how our tools are being used and identify
abuse.
Additionally, this will help east concerns about giving elevated users
more powerful tools.
* Add a basic UI for moderator audit logs
* Log experience level ratings
* Log tag adjustments
* UI tweaks for moderator actions log
* Add logging to internal reactions controller
* Add logging for admin actions on users and articles
* Add searching to the moderator actions table
* Move audit instrumentation out of concern
We are able to use a PORO here instead of using a Rails concern. Moving
this also makes syntax to audit something quite a bit more explicit and
obvious to future developers
* Change moderator logs pagination page length
* Move auditing to after action filters
* Add moderator actions to the internal navbar
* Add request spec for internal moderator actions
* Use request params to populate AuditLog slug