diff --git a/habitica-images b/habitica-images
index 941bf731d6..fadca5c096 160000
--- a/habitica-images
+++ b/habitica-images
@@ -1 +1 @@
-Subproject commit 941bf731d61b21288e5453705d5718cae02f8af0
+Subproject commit fadca5c09661c51bd5d3c1ec3fd0ad0849f6ef6c
diff --git a/package-lock.json b/package-lock.json
index 822cfbc0f1..a7f50a5842 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1,6 +1,6 @@
{
"name": "habitica",
- "version": "4.249.6",
+ "version": "4.250.0",
"lockfileVersion": 1,
"requires": true,
"dependencies": {
diff --git a/package.json b/package.json
index 7bbd3f011f..9b5ac1ead2 100644
--- a/package.json
+++ b/package.json
@@ -1,7 +1,7 @@
{
"name": "habitica",
"description": "A habit tracker app which treats your goals like a Role Playing Game.",
- "version": "4.249.6",
+ "version": "4.250.0",
"main": "./website/server/index.js",
"dependencies": {
"@babel/core": "^7.19.6",
diff --git a/website/client/src/assets/css/sprites/spritesmith-main.css b/website/client/src/assets/css/sprites/spritesmith-main.css
index 8d02728540..508333b2df 100644
--- a/website/client/src/assets/css/sprites/spritesmith-main.css
+++ b/website/client/src/assets/css/sprites/spritesmith-main.css
@@ -27415,6 +27415,46 @@
width: 114px;
height: 90px;
}
+.broad_armor_mystery_202212 {
+ background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/broad_armor_mystery_202212.png');
+ width: 114px;
+ height: 90px;
+}
+.headAccessory_mystery_202212 {
+ background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/headAccessory_mystery_202212.png');
+ width: 114px;
+ height: 90px;
+}
+.shop_armor_mystery_202212 {
+ background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/shop_armor_mystery_202212.png');
+ width: 68px;
+ height: 68px;
+}
+.shop_headAccessory_mystery_202212 {
+ background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/shop_headAccessory_mystery_202212.png');
+ width: 68px;
+ height: 68px;
+}
+.shop_set_mystery_202212 {
+ background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/shop_set_mystery_202212.png');
+ width: 68px;
+ height: 68px;
+}
+.shop_weapon_mystery_202212 {
+ background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/shop_weapon_mystery_202212.png');
+ width: 68px;
+ height: 68px;
+}
+.slim_armor_mystery_202212 {
+ background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/slim_armor_mystery_202212.png');
+ width: 114px;
+ height: 90px;
+}
+.weapon_mystery_202212 {
+ background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/weapon_mystery_202212.png');
+ width: 114px;
+ height: 90px;
+}
.broad_armor_mystery_301404 {
background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/broad_armor_mystery_301404.png');
width: 90px;
diff --git a/website/client/src/components/shops/buyModal.vue b/website/client/src/components/shops/buyModal.vue
index 013c291d55..66c90b182a 100644
--- a/website/client/src/components/shops/buyModal.vue
+++ b/website/client/src/components/shops/buyModal.vue
@@ -385,7 +385,6 @@ import EquipmentAttributesGrid from '../inventory/equipment/attributesGrid.vue';
import Item from '@/components/inventory/item';
import Avatar from '@/components/avatar';
-import seasonalShopConfig from '@/../../common/script/libs/shops-seasonal.config';
import { drops as dropEggs } from '@/../../common/script/content/eggs';
import { drops as dropPotions } from '@/../../common/script/content/hatching-potions';
@@ -438,7 +437,6 @@ export default {
selectedAmountToBuy: 1,
isPinned: false,
- endDate: seasonalShopConfig.dateRange.end,
};
},
computed: {
@@ -489,6 +487,9 @@ export default {
nonSubscriberHourglasses () {
return (!this.user.purchased.plan.customerId && !this.user.purchased.plan.consecutive.trinkets && this.getPriceClass() === 'hourglasses');
},
+ endDate () {
+ return moment(this.item.event.end);
+ },
},
watch: {
item: function itemChanged () {
diff --git a/website/client/src/components/shops/market/categoryRow.vue b/website/client/src/components/shops/market/categoryRow.vue
index eada1073a0..77610d2ae2 100644
--- a/website/client/src/components/shops/market/categoryRow.vue
+++ b/website/client/src/components/shops/market/categoryRow.vue
@@ -8,16 +8,6 @@
:popover-position="'top'"
@click="itemSelected(item)"
>
-
- {{ $t('maxBuyGems') }}
- {{ item.text }}
-
- {{ limitedString }}
-
-
0 || diffDuration.months() > 0) {
- this.limitedString = this.$t('limitedAvailabilityDays', {
- days: moment(seasonalShopConfig.dateRange.end).diff(moment(), 'days'),
- hours: diffDuration.hours(),
- minutes: diffDuration.minutes(),
- });
- } else if (diffDuration.asMinutes() > 2) {
- this.limitedString = this.$t('limitedAvailabilityHours', {
- hours: diffDuration.hours(),
- minutes: diffDuration.minutes(),
- });
- } else {
- this.limitedString = this.$t('limitedAvailabilityMinutes', {
- minutes: diffDuration.minutes(),
- seconds: diffDuration.seconds(),
- });
- }
- },
- cancelAutoUpdate () {
- clearInterval(this.timer);
- },
},
};
diff --git a/website/client/src/components/shops/quests/buyQuestModal.vue b/website/client/src/components/shops/quests/buyQuestModal.vue
index b384773e17..23c47d7880 100644
--- a/website/client/src/components/shops/quests/buyQuestModal.vue
+++ b/website/client/src/components/shops/quests/buyQuestModal.vue
@@ -263,8 +263,8 @@