Commit Graph

4310 Commits

Author SHA1 Message Date
Hafiz 17caa2159d missed add new line 2025-08-19 15:00:51 -05:00
Hafiz 315a942c69 remove redundant disabled styles in task modals
The .disabled class conflicting with existing disabled state implementations
2025-08-19 14:48:26 -05:00
Hafiz 9a1fb18959 Merge remote-tracking branch 'origin/develop' into qa/bat 2025-08-12 09:46:07 -05:00
Phillip Thelen 12773d539e Add interface to block ip-addresses or clients due to abuse (#15484)
* Read IP blocks from database

* begin building general blocking solution

* 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

* improve test coverage

* Improve blocker UI

* add blocker to block emails from registration

* lint fix

* fix

* lint fixes

* fix import

* add new permission for managing blockers

* improve permission check

* fix managing permissions from admin

* improve navbar display for non fullAccess admin

* update block error strings

* lint fix

* add option to errorHandler to skip logging

* validate blocker value during input

* improve blocker form display

* chore(subproj): reconcile habitica-images

* fix(scripts): use same Mongo version for dev/test

* fix(whitespace): eof

* documentation improvements

* remove nconf import

* remove old test

---------

Co-authored-by: Kalista Payne <kalista@habitica.com>
Co-authored-by: Kalista Payne <sabrecat@gmail.com>
2025-08-06 15:08:07 -05:00
Fiz ae4130b108 Add backend support for Hydra mount (#15482)
* chore: update time travelers shop to display seasonal backgrounds

* chore: update time travelers banner (note CSS borken rn)

* chore: fix borken CSS and update logic in shop

* chore: added isSubscribed function, not working

* chore: isSubscribed working but no bg for subscribers

* chore: logic and css updates

* chore: update habitica-images

* chore: add check for trinket

* chore: more time traveler shop logicking

* Add backend support for Hydra mount

- Add Dragon-Hydra to special mounts in stable.js
  - Configure as contributor level 7 reward with canFind: true
  - Add GIF format support for mount sprites
  - Enable admin panel granting capability

* Fix Vue template errors in timeTravelers component

* Fix duplicate template block in timeTravelers component

* add CSS for Hydra mount GIF sprites

Added CSS rules for Mount_Head_Dragon-Hydra and Mount_Body_Dragon-Hydra GIF sprites

* Remove the separate Hydra mount dimension declaration

---------

Co-authored-by: CuriousMagpie <eilatan@gmail.com>
2025-08-05 15:12:44 -05:00
Phillip Thelen 2ea0b64603 improve blocker form display 2025-08-05 14:57:25 +02:00
Phillip Thelen bd1aa1e417 validate blocker value during input 2025-08-05 14:45:23 +02:00
Phillip Thelen 1ee172139d lint fix 2025-08-04 16:32:40 +02:00
Phillip Thelen 6447b9ab4b update block error strings 2025-08-04 16:03:55 +02:00
Phillip Thelen 5c414099d9 improve navbar display for non fullAccess admin 2025-08-04 14:46:05 +02:00
Phillip Thelen 5e8e1179aa fix managing permissions from admin 2025-08-04 14:45:47 +02:00
Phillip Thelen 7e86a62624 improve permission check 2025-08-04 14:33:09 +02:00
Phillip Thelen 1ba9dda0ed add new permission for managing blockers 2025-08-04 14:21:36 +02:00
Phillip Thelen 227e5ceaa8 fix import 2025-07-30 11:26:55 +02:00
Phillip Thelen f77ab5a3ab lint fixes 2025-07-30 11:26:55 +02:00
Phillip Thelen 1916faf647 fix 2025-07-30 11:26:55 +02:00
Phillip Thelen 78330c975a Improve blocker UI 2025-07-30 11:26:55 +02:00
Phillip Thelen e9b2c1b51a restructure admin pages 2025-07-30 11:26:54 +02:00
Phillip Thelen 2a2bea07ab Add UI for managing blockers 2025-07-30 11:26:54 +02:00
Phillip Thelen ea60ddbf4c Tweak wording 2025-07-30 11:25:51 +02:00
Phillip Thelen 1c2ca0e478 correctly reset local data after creating blocker 2025-07-30 11:25:51 +02:00
Phillip Thelen ef2b7eb928 Add UI for managing blockers 2025-07-30 11:25:51 +02:00
Phillip Thelen 3d16387a61 add new frontend files 2025-07-30 11:25:41 +02:00
Phillip Thelen 93b7770eaa begin building general blocking solution 2025-07-30 11:25:41 +02:00
Natalie d1a18c121d August 2025 Content Build (#15460)
* chore: 2025-08 content build

* chore: fix typos

* fix(string): degender the news

---------

Co-authored-by: Kalista Payne <sabrecat@gmail.com>
2025-07-21 17:59:40 -05:00
Fiz 068640311e Reload window after changing password (#15474)
* Reload window after changing password

* Shows password change success message

Displays a success snackbar after a user successfully changes their password. This provides visual confirmation to the user that the password update was successful.
The success message is displayed only once after the page reloads.

* lint fix trailing spaces
2025-07-16 13:07:28 -05:00
Fiz f26d2a59ae add InvalidCredentialsError with language-agnostic code (#15472)
* add InvalidCredentialsError with language-agnostic code and update backend & web logout logic

* error.code in API error responses

Updated the error handler to serialize responseErr.code as the JSON error field, falling back to responseErr.name when no code is set.

* fix(lint): whitespace and missing def

* fix(lint): missed one

* add InvalidCredentialsError case for bad token

Add test verifying that auth middleware throws InvalidCredentialsError with code "invalid_credentials" and correct translated message when the API token is invalid.

* fix(test): user fields implicitly required

---------

Co-authored-by: Kalista Payne <sabrecat@gmail.com>
2025-07-15 09:49:11 -05:00
Phillip Thelen 03c7e9172e fix double submit for pw reset (#15473) 2025-07-14 16:14:20 -05:00
negue 6fdc072ec3 reset the ApiToken on password changes/resets (#15433)
* reset the ApiToken on password changes/resets

* fix/add tests

* fix(typo): test grammar

* update new API Token Strings, removed unused one

---------

Co-authored-by: Kalista Payne <sabrecat@gmail.com>
2025-07-01 12:30:34 -05:00
Natalie ba6940eb81 chore: update time travelers shop to display seasonal backgrounds (#15445)
* chore: update time travelers shop to display seasonal backgrounds

* chore: update time travelers banner (note CSS borken rn)

* chore: fix borken CSS and update logic in shop

* chore: added isSubscribed function, not working

* chore: isSubscribed working but no bg for subscribers

* chore: logic and css updates

* chore: add check for trinket

* chore: more time traveler shop logicking

* chore(git): heckin habitica-images

* refactor(style): indents/readability

* refactor(style): one more line break

* refactor(style): still more indents

* refactor(style): I wonder if lint can help with this stuff

* refactor(style): tighten up

---------

Co-authored-by: Kalista Payne <sabrecat@gmail.com>
2025-06-25 15:12:23 -05:00
Phillip Thelen 2727da6f6c Correctly define components (#15458) 2025-06-25 14:56:29 -05:00
Natalie 823b339d27 chore: July 2025 content build (#15449)
* chore: July 2025 content build

* chore: add release dates to armoire

* fix(sprites): correct Cryptid typo

* fix(grammar): missing comma

---------

Co-authored-by: Kalista Payne <sabrecat@gmail.com>
2025-06-17 13:34:57 -05:00
Phillip Thelen bce07ec357 wait for vue router to be ready (#15456)
* wait for vue router to be ready

* fix(lint): whitespace

---------

Co-authored-by: Kalista Payne <sabrecat@gmail.com>
2025-06-16 11:48:37 -05:00
Kalista Payne 836807aa1e Update static features pages (#15451)
* update images on static features page

* small layout changes

* Update feature texts

* layout tweaks

* refactor(client): move to Vite by @phillipthelen

* update images on static features page

* make text more comfortable to read

* update capitalization

* fix(whitespace): add EOF CR

---------

Co-authored-by: Phillip Thelen <phillip@habitica.com>
2025-06-12 13:11:16 -05:00
Phillip Thelen ebbcbef6d5 Fix deploying static files to S3 (#15450)
* upload all image types to s3

* fix __dirname not existing
2025-06-12 10:24:24 -05:00
Kalista Payne ccc6c9867f refactor(client): move to Vite by @phillipthelen 2025-06-11 19:20:11 -05:00
Natalie 20d31ed8c8 fix: pw reset screen logo color (#15442)
* fix: pw reset screen logo color

* fix: habitica logo svg color on password reset page
2025-05-29 14:55:57 -05:00
dependabot[bot] 972f23e235 chore(deps): bump http-proxy-middleware in /website/client (#15427)
Bumps [http-proxy-middleware](https://github.com/chimurai/http-proxy-middleware) from 2.0.6 to 2.0.9.
- [Release notes](https://github.com/chimurai/http-proxy-middleware/releases)
- [Changelog](https://github.com/chimurai/http-proxy-middleware/blob/v2.0.9/CHANGELOG.md)
- [Commits](https://github.com/chimurai/http-proxy-middleware/compare/v2.0.6...v2.0.9)

---
updated-dependencies:
- dependency-name: http-proxy-middleware
  dependency-version: 2.0.9
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-20 16:01:41 -04:00
dependabot[bot] b937c2df0b chore(deps): bump @babel/helpers in /website/client (#15407)
Bumps [@babel/helpers](https://github.com/babel/babel/tree/HEAD/packages/babel-helpers) from 7.23.6 to 7.26.10.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.26.10/packages/babel-helpers)

---
updated-dependencies:
- dependency-name: "@babel/helpers"
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-20 15:56:47 -04:00
dependabot[bot] 9c4396027a chore(deps): bump @babel/runtime-corejs2 in /website/client (#15406)
Bumps [@babel/runtime-corejs2](https://github.com/babel/babel/tree/HEAD/packages/babel-runtime-corejs2) from 7.23.6 to 7.26.10.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.26.10/packages/babel-runtime-corejs2)

---
updated-dependencies:
- dependency-name: "@babel/runtime-corejs2"
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-20 15:56:11 -04:00
dependabot[bot] b65d23d535 chore(deps): bump serialize-javascript in /website/client (#15395)
Bumps [serialize-javascript](https://github.com/yahoo/serialize-javascript) from 6.0.1 to 6.0.2.
- [Release notes](https://github.com/yahoo/serialize-javascript/releases)
- [Commits](https://github.com/yahoo/serialize-javascript/compare/v6.0.1...v6.0.2)

---
updated-dependencies:
- dependency-name: serialize-javascript
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-20 15:55:20 -04:00
Kalista Payne 126b382da1 fix(logging): don't spam empty error events 2025-05-19 17:07:42 -05:00
Natalie 9bfb2afd9c June 2025 content build (#15437)
* chore: June 2025 content build

* chore: typo fixing

* chore: corrections to summer 2025 mage armor, spritesheet

* fix(css): rebuild spritesmith-main

---------

Co-authored-by: Kalista Payne <sabrecat@gmail.com>
2025-05-13 16:10:25 -05:00
Phillip Thelen 29892ff5e3 Allow an email to be passed to forgot-password page (#15436) 2025-05-07 11:46:47 -05:00
Natalie 9456477953 fix: correct party modal sort dropdown display (#15432) 2025-05-06 12:05:36 -05:00
Kalista Payne 6ce3f84458 fix(css): add missing Cryptid references 2025-04-30 10:35:54 -05:00
Phillip Thelen 553aa01c25 fix sprite alignment in mount raised modal 2025-04-28 09:39:54 -05:00
Natalie 8d1b10e458 May 2025 Content Build (#15422)
* chore: May 2025 subscriber gear, background, and armoire gear

* chore: May 2025 pet and hatching potion quests, stylesheet update

* fix: add space to pet quest rage description

* Update backgrounds.json

fix(typo): missing fullstop

---------

Co-authored-by: Kalista Payne <sabrecat@gmail.com>
2025-04-18 13:05:03 -05:00
Phillip Thelen 0eaee9b1e4 Use stable sprites (#15421) 2025-04-17 16:38:22 -05:00
Natalie d48e4a664f Upgraded Inventory Search (#15417)
* fix: add search descriptions capability to items and equipment

* pet search working for mismatched pairs; mount still in progress

* added some comments about current issue to relevant portion of code

* search working on pet and mount names (except flying carpet)

* update comment text

* remove console.log(animals)

* add eggkey back in

* add mountName as property to animal object, amend filter function
2025-04-10 12:37:44 -05:00