* add new frontend files
* Add UI for managing blockers
* correctly reset local data after creating blocker
* Tweak wording
* Add UI for managing blockers
* restructure admin pages
* add blocker to block emails from registration
* lint fixes
* Await genericPurchase completion before page reload to prevent request cancellation.
Also adds defensive check for undefined error.response in axios interceptor to prevent "t.response undefined" errors.
* Fix shop tabs overflow off screen at certain zoom levels
Fix quest cards get cut off on small screens
Fix pop-up windows extend past screen edges on mobile
* Update ToS error message
- Updated account suspension message from "This account, User ID..." to "Your account @[username] has been
blocked..."
- Modified server auth middleware to pass username parameter when throwing account suspended error
-Modified auth utils loginRes function to include username in suspended account error
- Updated client bannedAccountModal component to pass username (empty string if unavailable)
- Updated login test to expect username in account suspended message
* lint fix
* Responsive Layout for Equipment Containers
- Added responsive CSS for mobile (<768px) and tablet (769px-1024px)
- Implemented flex-wrap layout that automatically stacks items in rows of 4 on smaller
* remove redundant disabled styles in task modals
The .disabled class conflicting with existing disabled state implementations
* Revert "Merge branch 'fiz/item-container-scaling' into qa/bat"
This reverts commit 4f28bfaad4, reversing
changes made to 477dd6328a.
* fix(blockers): duplicated code from rebase
* fix(admin): revert accidental change from rebase
* move !error.response to correct level
!error.response before any attempt to access error.response.status
* chore(github): split responsiveness to #15514
* Group string updates & removals
Removed the "Couple sharing tasks" and "Coworkers sharing tasks" strings:
- Removed from all language locale files
- Removed from both Vue components that used them in dropdowns:
- groupPlanCreationModal.vue
- successModal.vue
* Remove some Group strings
Remove the "groupParentChildren", "groupFriends", "groupManager", and "groupTeacher" strings from all languages (except default)
---------
Co-authored-by: Phillip Thelen <phillip@habitica.com>
Co-authored-by: Kalista Payne <kalista@habitica.com>
* initial commit: based on group-tracking-modal branch
* chore: merge group-tracking-modal
* update: create functions for each success condition
* chore: merge develop
* chore: work on successModal.vue & remove redundant code on groupPlan.vue
* update: remove `giftSubscriptionText4` from footer
* fix: correct groupPlan.vue file
* update: add messaging placeholder, clean up logic in a few places, update/add strings
* update: rearrange modal in order of display & test existence of 'gift-subscription' paymentType
* update: added props for receiverName so 'gift-subscription' works
* update: add close.svg & function
style: refactor CSS
* update: work on gift messaging
* update: work on gift messaging
* update: work on gift messaging
* update: let's make messages GO
* update: messages are a GO, we have LIFT OFF!
* fix: remove console log (oops)
Co-authored-by: SabreCat <sabe@habitica.com>
* content: add gems blocks
* gemsBlocks: include ios and android identifiers
* wip: promo code
* split common constants into multiple files
* add second promo part
* geCurrentEvent, refactor promo
* fix lint
* fix exports, use world state api
* start adding world state tests
* remove console.log
* use gems block for purchases
* remove comments
* fix most unit tests
* restore comment
* fix lint
* prevent apple/google gift tests from breaking other tests when stub is not reset
* fix unit tests, clarify tests names
* iap: use gift object when gifting gems
* allow gift object with less data
* fix iap tests, remove findById stubs
* iap: require less data from the mobile apps
* apply discounts
* add missing worldState file
* fix lint
* add test event
* start removing 20 gems option for web
* start adding support for all gems packages on web
* fix unit tests for apple, stripe and google
* amazon: support all gems blocks
* paypal: support all gems blocks
* fix payments unit tests, add tests for getGemsBlock
* web: add gems plans with discounts, update stripe
* fix amazon and paypal clients, payments success modals
* amazon pay: disabled state
* update icons, start abstracting payments buttons
* begin redesign
* redesign gems modal
* fix buttons
* fix hover color for gems modal close icon
* add key to world state current event
* extend test event length
* implement gems modals designs
* early test fall2020
* fix header banner position
* add missing files
* use iso 8601 for dates, minor ui fixes
* fix time zones
* events: fix ISO8601 format
* fix css indentation
* start abstracting banners
* refactor payments buttons
* test spooky, fix group plans box
* implement gems promo banners, refactor banners, fixes
* fix lint
* fix dates
* remove unused i18n strings
* fix stripe integration test
* fix world state integration tests
* the current active event
* add missing unit tests
* add storybook story for payments buttons component
* fix typo
* fix(stripe): correct label when gifting subscriptions
* wip
* refactor world state
* allow resource to be reloaded when the server is updated
* fix#9242
* fix event listeners
* remove un-needed code
* add tests for asyncResourceFactory reloadOnAppVersionChange
* fix double cron notifications and party members showing up in the header after a party invitation is accepted
* remove console.log
* do not send vm info to loggly due to circular dependency + fix typo
* fix#12181
* do not load invites multiple times in members modal
* add hover to challenge member count
* groups: load members only on demand
* minor ui fixes
* choose class: fix vue duplicate key warning
* minor ui fixes
* challanges: load members on demand
* add loading spinner
* change loading mechanism
* fix loading gryphon issues
* reduce code duplication