* move the update username route to v3 (#10836)
* Add API Call to retrieve auto-complete options for usernames
* Create links to users profile in chat messages
* Begin adding server-side autocomplete to web client
* Add Test to opt out of username being searchable
* Fix issue with username highlighting
* Correctly update message text when using autocomplete
* remove old autocomplete component
* Improve chat input design
* rewrite mongoose migration to avoid using recursion
* fixes
* select more fields
* use lean and .update
* fix(tests): correct expects
* fix(tests): linting & more expects
Also one more tweak for invite validation responsiveness
* chore(news): Bailey
* chore(i18n): update locales
* 4.70.0
* fix(chat): less intrusive highlight and better margins
* fix(chat): more width tweakage
* feat(content): Oddballs Bundle
Also includes one more tweak to @mention text highlighting
* chore(sprites): compile
* chore(i18n): update locales
* 4.71.0
* groupChatReceived webhook fix (#10802)
* Moved sendGroupChatReceivedWebhooks to group.sendChat function.
* Added test for new functionality.
* Set width on .custom-control-label (#10840)
Set `width: 100%` on the `.custom-control-label`.
Although `overflow-wrap: break-word` is set on the parent `.checklist-item` element, it doesn't seem to take effect unless a width is set on the label.
* Very large Guild member counts overflow the badge #10753 (#10812)
* Update superagent to the latest version 🚀 (#10848)
* fix(package): update superagent to version 4.0.0
* chore(package): update lockfile package-lock.json
* fix(chat): prevent duplicate messages, closes#10823
* Fix for #10814, prevent ParallelSave errors (#10852)
* fix(group leave): prevent ParallelSave errors while leaving a group with multiple group or challenge tasks
* fix typo
* move computed-props to methods - refactor mountItem to use the states inside (#10853)
* feat(content): Frost Hatching Potions
* chore(sprites): compile
* chore(i18n): update locales
* 4.72.0
* fix(stable): remove progress number from petItem
* add two slurs - TRIGGER / CONTENT WARNING: assault, slurs, swearwords, etc
* more checks on the item.klass, also added the specialClass checks (#10859)
* feat(content): Turkey Day 2018
* chore(sprites): compile
* chore(i18n): update locales
* 4.73.0
* chore(i18n): update locales
* 4.73.1
* feat(footer): always show expanded footer (#10862)
* Fixes issue #10857 ("Tags have extra space at the bottom when they should be centered") (#10861)
* Fix for #10857 centered category tag text
* Fixes#10857 and #10856 display tag markdown.
* Attach client to chat messages (#10845)
* Attach client to chat messages
* Word
* Design tweaks
* Fix potential error
* chore(event): end Thanksgiving tweaks
* chore(i18n): update locales
* 4.73.2
* Improve chat input design
* Fix test errors
* Move tier icons import to index
* correctly name event variable
* Debounce autocomplete calls
* optimize mention highlighting
* fix failing tests
* Fix sending private messages
* Cache username autocomplete requests
* optimize autocomplete regex
* Fix lint error
* add optional parameters to limit autocompletion to specific group
* Fix non-profile urls not being usable.
* Correctly handle autocomplete for public and private guilds
* Add check to make sure users don’t search for parties/guilds they are not part of
* fix lint error
* limit autocomplete results to 5
* fix(mentioning): change default, adapt settings control to checkbox
* Improve auto completing
* improve username autocomplete
* Fix merge issue
* remove old code
* Send push notifications on mentions
* Improve handling for sending mention notifications
* Fix lint error
* Update schema.js
* Fix failing test
* Don't send push notification to users who aren't in the party
* Remove tributejs from dependencies
* wip: define items as mixed objects
* add default owned gear
* mark modified
* more mark modified
* more mark modified
* more mark modified
* more mark modified
* fix common tests
* fix common tests
* update mongoose
* add itemsUtils
* use new util function in hall controller
* add tests for items utils
* update website/server to mark all items as modified
* start updating common code
* update login incentives
* update unlock
* remove changes to package-lock.json
* remove changes to package.json
* feat(subscription): promo banner in modal
* feat(subscription): promo banner on main page
* fix(banners): remove extraneous margin adjustment
* fix(banners): various
* feat(promotion): gift 1, get 1
* fix(promo): various
* chore(promo): add Bailey
* fix(promo): use different email template for promo beneficiary
* fix(promo): turns out Winter is meaningful
* fix
Newly subscribed accounts receive erroneous notification that they have Mystery Items
* Added unit test for #10496
* Restored a previous unit test
* - updates a group task - approval is required
- updates a group task with checklist
* add expect to test the new checklist length
* - moves tasks to a specified position out of length
* remove unused line
* website getter tasks tests
* re-add sanitizeUserChallengeTask
* change config.json.example variable to be a string not a boolean
* fix tests - pick the text / up/down props too
* fix test - remove changes on text/up/down - revert sanitize condition - revert sanitization props
* remove commented-out code for purging PMs - no longer needed
https://github.com/HabitRPG/habitica/issues/7940#issuecomment-406489506
* adjust comments
* move cron code when sleeping / resting back into main body of cron code
* rename tests to use consistent terminology for sleeping
* add tests for cron when user is sleeping
* move sleeping tests to same place as non-sleeping test
This matches how the code has sleeping and non-sleeping code mingled.
* replace a broken test with new tests
The deleted test wasn't working correctly. The check that the user's
health hadn't decreased would have worked even if the user wasn't
sleeping because the Daily had been marked completed.
The new tests test both no damage from incomplete Dailies and
that Dailies are reset.
* add tests for Perfect Day buff and rename existing tests for consistent terminology
* remove old test code
* remove duplicate module.exports statement
* remove commented-out footer in Slack slur notification
There's no need for anything to replace this footer.
* swap order of flag actions to put most critical first
This causes moderators to be notified before the flagged message's flagCount is incremented, because if something happens to prevent the flagGroupMessage Promise from resolving, we still want to mods to see the notification.
* limit chat message flagging ability for new players
Players who created accounts less than three days ago can flag posts
but that does not contribute to the posts' flagCount. This prevents
a troll from maliciously hiding innocent messages by creating new
accounts to flag them.
* add tests
* fix other tests
* fixing typos in comments. yes, I am that kind of nerd
* replacing push-notify with node-apn in deps and in pushNotifications.js
* updating calling code and tests to use node-apn
* updating APN configs to new format
* migrating team ID and key ID to config.json
* update code to use env variables and add correct topic