From a24651e395128fd21e86a0425d4a042abb4c92e5 Mon Sep 17 00:00:00 2001 From: SabreCat Date: Tue, 15 Mar 2022 16:08:53 -0500 Subject: [PATCH 01/16] fix(content): bundle ends March not May --- website/common/locales/en/questsContent.json | 2 +- website/common/script/content/bundles.js | 2 +- website/common/script/content/shop-featuredItems.js | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/website/common/locales/en/questsContent.json b/website/common/locales/en/questsContent.json index 45e4249e7d..557be32b92 100644 --- a/website/common/locales/en/questsContent.json +++ b/website/common/locales/en/questsContent.json @@ -699,7 +699,7 @@ "questSquirrelUnlockText": "Unlocks Squirrel Eggs for purchase in the Market", "cuddleBuddiesText": "Cuddle Buddies Quest Bundle", - "cuddleBuddiesNotes": "Contains 'The Killer Bunny', 'The Nefarious Ferret', and 'The Guinea Pig Gang'. Available until May 31.", + "cuddleBuddiesNotes": "Contains 'The Killer Bunny', 'The Nefarious Ferret', and 'The Guinea Pig Gang'. Available until March 31.", "aquaticAmigosText": "Aquatic Amigos Quest Bundle", "aquaticAmigosNotes": "Contains 'The Magical Axolotl', 'The Kraken of Inkomplete', and 'The Call of Octothulu'. Available until August 31.", diff --git a/website/common/script/content/bundles.js b/website/common/script/content/bundles.js index 24239f3f51..bfb7429b5a 100644 --- a/website/common/script/content/bundles.js +++ b/website/common/script/content/bundles.js @@ -114,7 +114,7 @@ const bundles = { 'guineapig', ], canBuy () { - return moment().isBetween('2022-03-15T08:00-04:00', '2022-05-31T20:00-04:00'); + return moment().isBetween('2022-03-15T08:00-04:00', '2022-03-31T20:00-04:00'); }, type: 'quests', value: 7, diff --git a/website/common/script/content/shop-featuredItems.js b/website/common/script/content/shop-featuredItems.js index 6048266118..90df56933e 100644 --- a/website/common/script/content/shop-featuredItems.js +++ b/website/common/script/content/shop-featuredItems.js @@ -44,7 +44,7 @@ const featuredItems = { ]; }, quests () { - if (moment().isBefore('2022-05-31T20:00-04:00')) { + if (moment().isBefore('2022-03-31T20:00-04:00')) { return [ { type: 'bundles', From 5ea82fe87f68f4c03c8a2d41cb6f4673f358df1e Mon Sep 17 00:00:00 2001 From: SabreCat Date: Tue, 15 Mar 2022 16:08:58 -0500 Subject: [PATCH 02/16] 4.224.3 --- package-lock.json | 2 +- package.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/package-lock.json b/package-lock.json index 416126bc61..f639286820 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "habitica", - "version": "4.224.2", + "version": "4.224.3", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/package.json b/package.json index b768d060ef..49a9d09037 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.224.2", + "version": "4.224.3", "main": "./website/server/index.js", "dependencies": { "@babel/core": "^7.16.12", From ea393a245a0107e3dce0c814e2dc04170e2aed3d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 18 Mar 2022 12:37:57 -0400 Subject: [PATCH 03/16] build(deps): bump apidoc from 0.50.4 to 0.50.5 (#13887) Bumps [apidoc](https://github.com/apidoc/apidoc) from 0.50.4 to 0.50.5. - [Release notes](https://github.com/apidoc/apidoc/releases) - [Changelog](https://github.com/apidoc/apidoc/blob/master/CHANGELOG.md) - [Commits](https://github.com/apidoc/apidoc/compare/0.50.4...0.50.5) --- updated-dependencies: - dependency-name: apidoc dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 218 +++++++++++++++++++++++++--------------------- package.json | 2 +- 2 files changed, 120 insertions(+), 100 deletions(-) diff --git a/package-lock.json b/package-lock.json index f3b1d4a0bc..c4d014c37f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1307,9 +1307,9 @@ } }, "@discoveryjs/json-ext": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.6.tgz", - "integrity": "sha512-ws57AidsDvREKrZKYffXddNkyaF14iHNHm8VQnZH6t99E8gczjNN0GpvcGny0imC80yQ0tHz1xVUKk/KFQSUyA==" + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz", + "integrity": "sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==" }, "@google-cloud/common": { "version": "3.8.1", @@ -1657,9 +1657,9 @@ } }, "@types/estree": { - "version": "0.0.50", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.50.tgz", - "integrity": "sha512-C6N5s2ZFtuZRj54k2/zyRhNDjJwwcViAM3Nbm8zjBpbqAdZ00mr0CFxvSKeO8Y/e03WVFLpQMdHYVfUd6SB+Hw==" + "version": "0.0.51", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.51.tgz", + "integrity": "sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ==" }, "@types/express": { "version": "4.17.13", @@ -2135,9 +2135,9 @@ } }, "apidoc": { - "version": "0.50.4", - "resolved": "https://registry.npmjs.org/apidoc/-/apidoc-0.50.4.tgz", - "integrity": "sha512-voAIVzHXRMO/QLh6n/2AVF3j0doLvyFY7cZXwBFuidBOSp5Ft+oJ6aVzMPyp1dUD1HF7YBmqg5O82cWrM5tepA==", + "version": "0.50.5", + "resolved": "https://registry.npmjs.org/apidoc/-/apidoc-0.50.5.tgz", + "integrity": "sha512-bp4nze32IsUgeDoRHcpZY8mdZ/GHMHyMak6ptLQkrzQ1rL6LYf0Mu4mBJmVksA+N6/hOsnOhoPQGeiZp2BVX2w==", "requires": { "bootstrap": "3.4.1", "commander": "^8.3.0", @@ -5397,9 +5397,9 @@ } }, "enhanced-resolve": { - "version": "5.9.0", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.9.0.tgz", - "integrity": "sha512-weDYmzbBygL7HzGGS26M3hGQx68vehdEg6VUmqSOaFzXExFqlnKuSvsEJCVGQHScS8CQMbrAqftT+AzzHNt/YA==", + "version": "5.9.2", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.9.2.tgz", + "integrity": "sha512-GIm3fQfwLJ8YZx2smuHpBKkXC1yOk+OBEmKckVyL0i/ea8mqDEykK3ld5dgH1QYPNyT/lIllxV2LULnxCHaHkA==", "requires": { "graceful-fs": "^4.2.4", "tapable": "^2.2.0" @@ -5509,100 +5509,114 @@ } }, "esbuild": { - "version": "0.14.20", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.14.20.tgz", - "integrity": "sha512-7aRJRnTjHZ6rFEre52tsAYZxatVELSA/QvYGUBf1iOsYKCnSJICE5seugQFFJgV1Gyl0/mngxQPhxBIqgYG2BA==", + "version": "0.14.25", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.14.25.tgz", + "integrity": "sha512-4JHEIOMNFvK09ziiL+iVmldIhLbn49V4NAVo888tcGFKedEZY/Y8YapfStJ6zSE23tzYPKxqKwQBnQoIO0BI/Q==", "requires": { - "esbuild-android-arm64": "0.14.20", - "esbuild-darwin-64": "0.14.20", - "esbuild-darwin-arm64": "0.14.20", - "esbuild-freebsd-64": "0.14.20", - "esbuild-freebsd-arm64": "0.14.20", - "esbuild-linux-32": "0.14.20", - "esbuild-linux-64": "0.14.20", - "esbuild-linux-arm": "0.14.20", - "esbuild-linux-arm64": "0.14.20", - "esbuild-linux-mips64le": "0.14.20", - "esbuild-linux-ppc64le": "0.14.20", - "esbuild-linux-s390x": "0.14.20", - "esbuild-netbsd-64": "0.14.20", - "esbuild-openbsd-64": "0.14.20", - "esbuild-sunos-64": "0.14.20", - "esbuild-windows-32": "0.14.20", - "esbuild-windows-64": "0.14.20", - "esbuild-windows-arm64": "0.14.20" + "esbuild-android-64": "0.14.25", + "esbuild-android-arm64": "0.14.25", + "esbuild-darwin-64": "0.14.25", + "esbuild-darwin-arm64": "0.14.25", + "esbuild-freebsd-64": "0.14.25", + "esbuild-freebsd-arm64": "0.14.25", + "esbuild-linux-32": "0.14.25", + "esbuild-linux-64": "0.14.25", + "esbuild-linux-arm": "0.14.25", + "esbuild-linux-arm64": "0.14.25", + "esbuild-linux-mips64le": "0.14.25", + "esbuild-linux-ppc64le": "0.14.25", + "esbuild-linux-riscv64": "0.14.25", + "esbuild-linux-s390x": "0.14.25", + "esbuild-netbsd-64": "0.14.25", + "esbuild-openbsd-64": "0.14.25", + "esbuild-sunos-64": "0.14.25", + "esbuild-windows-32": "0.14.25", + "esbuild-windows-64": "0.14.25", + "esbuild-windows-arm64": "0.14.25" } }, + "esbuild-android-64": { + "version": "0.14.25", + "resolved": "https://registry.npmjs.org/esbuild-android-64/-/esbuild-android-64-0.14.25.tgz", + "integrity": "sha512-L5vCUk7TzFbBnoESNoXjU3x9+/+7TDIE/1mTfy/erAfvZAqC+S3sp/Qa9wkypFMcFvN9FzvESkTlpeQDolREtQ==", + "optional": true + }, "esbuild-android-arm64": { - "version": "0.14.20", - "resolved": "https://registry.npmjs.org/esbuild-android-arm64/-/esbuild-android-arm64-0.14.20.tgz", - "integrity": "sha512-MPKVDe3TMjGDRB5WmY9XnBaXEsPiiTpkz6GjXgBhBkMFZm27PhvZT4JE0vZ1fsLb5hnGC/fYsfAnp9rsxTZhIg==", + "version": "0.14.25", + "resolved": "https://registry.npmjs.org/esbuild-android-arm64/-/esbuild-android-arm64-0.14.25.tgz", + "integrity": "sha512-4jv5xPjM/qNm27T5j3ZEck0PvjgQtoMHnz4FzwF5zNP56PvY2CT0WStcAIl6jNlsuDdN63rk2HRBIsO6xFbcFw==", "optional": true }, "esbuild-darwin-64": { - "version": "0.14.20", - "resolved": "https://registry.npmjs.org/esbuild-darwin-64/-/esbuild-darwin-64-0.14.20.tgz", - "integrity": "sha512-09PPWejM3rRFsGHvtaTuRlG+KOQlOMwPW4HwwzRlO4TuP+FNV1nTW4x2Nid3dYLzCkcjznJWQ0oylLBQvGTRyQ==", + "version": "0.14.25", + "resolved": "https://registry.npmjs.org/esbuild-darwin-64/-/esbuild-darwin-64-0.14.25.tgz", + "integrity": "sha512-TGp8tuudIxOyWd1+8aYPxQmC1ZQyvij/AfNBa35RubixD0zJ1vkKHVAzo0Zao1zcG6pNqiSyzfPto8vmg0s7oA==", "optional": true }, "esbuild-darwin-arm64": { - "version": "0.14.20", - "resolved": "https://registry.npmjs.org/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.14.20.tgz", - "integrity": "sha512-jYLrSXAwygoFF2lpRJSUAghre+9IThbcPvJQbcZMONBQaaZft9nclNsrN3k4u7zQaC8v+xZDVSHkmw593tQvkg==", + "version": "0.14.25", + "resolved": "https://registry.npmjs.org/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.14.25.tgz", + "integrity": "sha512-oTcDgdm0MDVEmw2DWu8BV68pYuImpFgvWREPErBZmNA4MYKGuBRaCiJqq6jZmBR1x+3y1DWCjez+5uLtuAm6mw==", "optional": true }, "esbuild-freebsd-64": { - "version": "0.14.20", - "resolved": "https://registry.npmjs.org/esbuild-freebsd-64/-/esbuild-freebsd-64-0.14.20.tgz", - "integrity": "sha512-XShznPLW3QsK8/7iCx1euZTowWaWlcrlkq4YTlRqDKXkJRe98FJ6+V2QyoSTwwCoo5koaYwc+h/SYdglF5369A==", + "version": "0.14.25", + "resolved": "https://registry.npmjs.org/esbuild-freebsd-64/-/esbuild-freebsd-64-0.14.25.tgz", + "integrity": "sha512-ueAqbnMZ8arnuLH8tHwTCQYeptnHOUV7vA6px6j4zjjQwDx7TdP7kACPf3TLZLdJQ3CAD1XCvQ2sPhX+8tacvQ==", "optional": true }, "esbuild-freebsd-arm64": { - "version": "0.14.20", - "resolved": "https://registry.npmjs.org/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.14.20.tgz", - "integrity": "sha512-flb3tDd6SScKhBqzWAESVCErpaqrGmMSRrssjx1aC+Ai5ZQrEyhfs5OWL4A9qHuixkhfmXffci7rFD+bNeXmZg==", + "version": "0.14.25", + "resolved": "https://registry.npmjs.org/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.14.25.tgz", + "integrity": "sha512-+ZVWud2HKh+Ob6k/qiJWjBtUg4KmJGGmbvEXXW1SNKS7hW7HU+Zq2ZCcE1akFxOPkVB+EhOty/sSek30tkCYug==", "optional": true }, "esbuild-linux-32": { - "version": "0.14.20", - "resolved": "https://registry.npmjs.org/esbuild-linux-32/-/esbuild-linux-32-0.14.20.tgz", - "integrity": "sha512-Avtxbd0MHFJ2QhNxj/e8VGGm1/VnEJZq9qiHUl3wQZ4S0o2Wf4ReAfhqmgAbOPFTuxuZm070rRDZYiZifWzFGQ==", + "version": "0.14.25", + "resolved": "https://registry.npmjs.org/esbuild-linux-32/-/esbuild-linux-32-0.14.25.tgz", + "integrity": "sha512-3OP/lwV3kCzEz45tobH9nj+uE4ubhGsfx+tn0L26WAGtUbmmcRpqy7XRG/qK7h1mClZ+eguIANcQntYMdYklfw==", "optional": true }, "esbuild-linux-64": { - "version": "0.14.20", - "resolved": "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.14.20.tgz", - "integrity": "sha512-ugisoRA/ajCr9JMszsQnT9hKkpbD7Gr1yl1mWdZhWQnGt6JKGIndGiihMURcrR44IK/2OMkixVe66D4gCHKdPA==", + "version": "0.14.25", + "resolved": "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.14.25.tgz", + "integrity": "sha512-+aKHdHZmX9qwVlQmu5xYXh7GsBFf4TWrePgeJTalhXHOG7NNuUwoHmketGiZEoNsWyyqwH9rE5BC+iwcLY30Ug==", "optional": true }, "esbuild-linux-arm": { - "version": "0.14.20", - "resolved": "https://registry.npmjs.org/esbuild-linux-arm/-/esbuild-linux-arm-0.14.20.tgz", - "integrity": "sha512-uo++Mo31+P2EA38oQgOeSIWgD7GMCMpZkaLfsCqtKJTIIL9fVzQHQYLDRIiFGpLHvs1faWWHDCEcXEFSP1Ou0g==", + "version": "0.14.25", + "resolved": "https://registry.npmjs.org/esbuild-linux-arm/-/esbuild-linux-arm-0.14.25.tgz", + "integrity": "sha512-aTLcE2VBoLydL943REcAcgnDi3bHtmULSXWLbjtBdtykRatJVSxKMjK9YlBXUZC4/YcNQfH7AxwVeQr9fNxPhw==", "optional": true }, "esbuild-linux-arm64": { - "version": "0.14.20", - "resolved": "https://registry.npmjs.org/esbuild-linux-arm64/-/esbuild-linux-arm64-0.14.20.tgz", - "integrity": "sha512-hsrMbNzhh+ud3zUyhONlR41vpYMjINS7BHEzXHbzo4YiCsG9Ht3arbiSuNGrhR/ybLr+8J/0fYVCipiVeAjy3Q==", + "version": "0.14.25", + "resolved": "https://registry.npmjs.org/esbuild-linux-arm64/-/esbuild-linux-arm64-0.14.25.tgz", + "integrity": "sha512-UxfenPx/wSZx55gScCImPtXekvZQLI2GW3qe5dtlmU7luiqhp5GWPzGeQEbD3yN3xg/pHc671m5bma5Ns7lBHw==", "optional": true }, "esbuild-linux-mips64le": { - "version": "0.14.20", - "resolved": "https://registry.npmjs.org/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.14.20.tgz", - "integrity": "sha512-MBUu2Q+pzdTBWclPe7AwmRUMTUL0R99ONa8Hswpb987fXgFUdN4XBNBcEa5zy/l2UrIJK+9FUN1jjedZlxgP2A==", + "version": "0.14.25", + "resolved": "https://registry.npmjs.org/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.14.25.tgz", + "integrity": "sha512-wLWYyqVfYx9Ur6eU5RT92yJVsaBGi5RdkoWqRHOqcJ38Kn60QMlcghsKeWfe9jcYut8LangYZ98xO1LxIoSXrQ==", "optional": true }, "esbuild-linux-ppc64le": { - "version": "0.14.20", - "resolved": "https://registry.npmjs.org/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.14.20.tgz", - "integrity": "sha512-xkYjQtITA6q/b+/5aAf5n2L063pOxLyXUIad+zYT8GpZh0Sa7aSn18BmrFa2fHb0QSGgTEeRfYkTcBGgoPDjBA==", + "version": "0.14.25", + "resolved": "https://registry.npmjs.org/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.14.25.tgz", + "integrity": "sha512-0dR6Csl6Zas3g4p9ULckEl8Mo8IInJh33VCJ3eaV1hj9+MHGdmDOakYMN8MZP9/5nl+NU/0ygpd14cWgy8uqRw==", + "optional": true + }, + "esbuild-linux-riscv64": { + "version": "0.14.25", + "resolved": "https://registry.npmjs.org/esbuild-linux-riscv64/-/esbuild-linux-riscv64-0.14.25.tgz", + "integrity": "sha512-J4d20HDmTrgvhR0bdkDhvvJGaikH3LzXQnNaseo8rcw9Yqby9A90gKUmWpfwqLVNRILvNnAmKLfBjCKU9ajg8w==", "optional": true }, "esbuild-linux-s390x": { - "version": "0.14.20", - "resolved": "https://registry.npmjs.org/esbuild-linux-s390x/-/esbuild-linux-s390x-0.14.20.tgz", - "integrity": "sha512-AAcj3x80TXIedpNVuZgjYNETXr2iciOBQv5pGdNGAy6rv7k6Y6sT6SXQ58l2LH2AHbaeTPQjze+Y6qgX1efzrA==", + "version": "0.14.25", + "resolved": "https://registry.npmjs.org/esbuild-linux-s390x/-/esbuild-linux-s390x-0.14.25.tgz", + "integrity": "sha512-YI2d5V6nTE73ZnhEKQD7MtsPs1EtUZJ3obS21oxQxGbbRw1G+PtJKjNyur+3t6nzHP9oTg6GHQ3S3hOLLmbDIQ==", "optional": true }, "esbuild-loader": { @@ -5619,39 +5633,39 @@ } }, "esbuild-netbsd-64": { - "version": "0.14.20", - "resolved": "https://registry.npmjs.org/esbuild-netbsd-64/-/esbuild-netbsd-64-0.14.20.tgz", - "integrity": "sha512-30GQKCnsID1WddUi6tr5HFUxJD0t7Uitf6tO9Cf1WqF6C44pf8EflwrhyDFmUyvkddlyfb4OrYI6NNLC/G3ajg==", + "version": "0.14.25", + "resolved": "https://registry.npmjs.org/esbuild-netbsd-64/-/esbuild-netbsd-64-0.14.25.tgz", + "integrity": "sha512-TKIVgNWLUOkr+Exrye70XTEE1lJjdQXdM4tAXRzfHE9iBA7LXWcNtVIuSnphTqpanPzTDFarF0yqq4kpbC6miA==", "optional": true }, "esbuild-openbsd-64": { - "version": "0.14.20", - "resolved": "https://registry.npmjs.org/esbuild-openbsd-64/-/esbuild-openbsd-64-0.14.20.tgz", - "integrity": "sha512-zVrf8fY46BK57AkxDdqu2S8TV3p7oLmYIiW707IOHrveI0TwJ2iypAxnwOQuCvowM3UWqVBO2RDBzV7S7t0klg==", + "version": "0.14.25", + "resolved": "https://registry.npmjs.org/esbuild-openbsd-64/-/esbuild-openbsd-64-0.14.25.tgz", + "integrity": "sha512-QgFJ37A15D7NIXBTYEqz29+uw3nNBOIyog+3kFidANn6kjw0GHZ0lEYQn+cwjyzu94WobR+fes7cTl/ZYlHb1A==", "optional": true }, "esbuild-sunos-64": { - "version": "0.14.20", - "resolved": "https://registry.npmjs.org/esbuild-sunos-64/-/esbuild-sunos-64-0.14.20.tgz", - "integrity": "sha512-MYRsS1O7+aBr2T/0aA4OJrju6eMku4rm81fwGF1KLFwmymIpPGmj7n69n5JW3NKyW5j+FBt0GcyDh9nEnUL1FQ==", + "version": "0.14.25", + "resolved": "https://registry.npmjs.org/esbuild-sunos-64/-/esbuild-sunos-64-0.14.25.tgz", + "integrity": "sha512-rmWfjUItYIVlqr5EnTH1+GCxXiBOC42WBZ3w++qh7n2cS9Xo0lO5pGSG2N+huOU2fX5L+6YUuJ78/vOYvefeFw==", "optional": true }, "esbuild-windows-32": { - "version": "0.14.20", - "resolved": "https://registry.npmjs.org/esbuild-windows-32/-/esbuild-windows-32-0.14.20.tgz", - "integrity": "sha512-7VqDITqTU65LQ1Uka/4jx4sUIZc1L8NPlvc7HBRdR15TUyPxmHRQaxMGXd8aakI1FEBcImpJ9SQ4JLmPwRlS1w==", + "version": "0.14.25", + "resolved": "https://registry.npmjs.org/esbuild-windows-32/-/esbuild-windows-32-0.14.25.tgz", + "integrity": "sha512-HGAxVUofl3iUIz9W10Y9XKtD0bNsK9fBXv1D55N/ljNvkrAYcGB8YCm0v7DjlwtyS6ws3dkdQyXadbxkbzaKOA==", "optional": true }, "esbuild-windows-64": { - "version": "0.14.20", - "resolved": "https://registry.npmjs.org/esbuild-windows-64/-/esbuild-windows-64-0.14.20.tgz", - "integrity": "sha512-q4GxY4m5+nXSgqCKx6Cc5pavnhd2g5mHn+K8kNdfCMZsWPDlHLMRjYF5NVQ3/5mJ1M7iR3/Ai4ISjxmsCeGOGA==", + "version": "0.14.25", + "resolved": "https://registry.npmjs.org/esbuild-windows-64/-/esbuild-windows-64-0.14.25.tgz", + "integrity": "sha512-TirEohRkfWU9hXLgoDxzhMQD1g8I2mOqvdQF2RS9E/wbkORTAqJHyh7wqGRCQAwNzdNXdg3JAyhQ9/177AadWA==", "optional": true }, "esbuild-windows-arm64": { - "version": "0.14.20", - "resolved": "https://registry.npmjs.org/esbuild-windows-arm64/-/esbuild-windows-arm64-0.14.20.tgz", - "integrity": "sha512-vOxfU7YwuBMjsUNUygMBhC8T60aCzeYptnHu4k7azqqOVo5EAyoueyWSkFR5GpX6bae5cXyB0vcOV/bfwqRwAg==", + "version": "0.14.25", + "resolved": "https://registry.npmjs.org/esbuild-windows-arm64/-/esbuild-windows-arm64-0.14.25.tgz", + "integrity": "sha512-4ype9ERiI45rSh+R8qUoBtaj6kJvUOI7oVLhKqPEpcF4Pa5PpT3hm/mXAyotJHREkHpM87PAJcA442mLnbtlNA==", "optional": true }, "escalade": { @@ -6974,9 +6988,9 @@ "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==" }, "fs-extra": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.0.0.tgz", - "integrity": "sha512-C5owb14u9eJwizKGdchcDUQeFtlSHHthBk8pbX9Vc1PFZrLombudjDnNns88aYslCyF6IY5SUw3Roz6xShcEIQ==", + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.0.1.tgz", + "integrity": "sha512-NbdoVMZso2Lsrn/QwLXOy6rm0ufY2zEOKCDzJR/0kBsb0E6qed0P3iYK+Ath3BfvXEeu4JhEtXLgILx5psUfag==", "requires": { "graceful-fs": "^4.2.0", "jsonfile": "^6.0.1", @@ -13959,15 +13973,21 @@ "integrity": "sha512-a6sumDlzyHVJWb8+YofY4TW112G6p2FCPEAFk+59gIYHv3XHRhm9ltVQ9kli4hNWeQBwSpe8cRN25x0ROunMOw==" }, "terser": { - "version": "5.10.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.10.0.tgz", - "integrity": "sha512-AMmF99DMfEDiRJfxfY5jj5wNH/bYO09cniSqhfoyxc8sFoYIgkJy86G04UoZU5VjlpnplVu0K6Tx6E9b5+DlHA==", + "version": "5.12.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.12.0.tgz", + "integrity": "sha512-R3AUhNBGWiFc77HXag+1fXpAxTAFRQTJemlJKjAgD9r8xXTpjNKqIXwHM/o7Rh+O0kUJtS3WQVdBeMKFk5sw9A==", "requires": { + "acorn": "^8.5.0", "commander": "^2.20.0", "source-map": "~0.7.2", "source-map-support": "~0.5.20" }, "dependencies": { + "acorn": { + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.7.0.tgz", + "integrity": "sha512-V/LGr1APy+PXIwKebEWrkZPwoeoF+w1jiOBUmuxuiUIaOHtob8Qc9BTrYo7VuI5fR8tqsy+buA2WFooR5olqvQ==" + }, "commander": { "version": "2.20.3", "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", @@ -15111,12 +15131,12 @@ "integrity": "sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE=" }, "webpack": { - "version": "5.68.0", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.68.0.tgz", - "integrity": "sha512-zUcqaUO0772UuuW2bzaES2Zjlm/y3kRBQDVFVCge+s2Y8mwuUTdperGaAv65/NtRL/1zanpSJOq/MD8u61vo6g==", + "version": "5.70.0", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.70.0.tgz", + "integrity": "sha512-ZMWWy8CeuTTjCxbeaQI21xSswseF2oNOwc70QSKNePvmxE7XW36i7vpBMYZFAUHPwQiEbNGCEYIOOlyRbdGmxw==", "requires": { - "@types/eslint-scope": "^3.7.0", - "@types/estree": "^0.0.50", + "@types/eslint-scope": "^3.7.3", + "@types/estree": "^0.0.51", "@webassemblyjs/ast": "1.11.1", "@webassemblyjs/wasm-edit": "1.11.1", "@webassemblyjs/wasm-parser": "1.11.1", @@ -15124,7 +15144,7 @@ "acorn-import-assertions": "^1.7.6", "browserslist": "^4.14.5", "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^5.8.3", + "enhanced-resolve": "^5.9.2", "es-module-lexer": "^0.9.0", "eslint-scope": "5.1.1", "events": "^3.2.0", diff --git a/package.json b/package.json index d9d8695102..1091299429 100644 --- a/package.json +++ b/package.json @@ -13,7 +13,7 @@ "accepts": "^1.3.8", "amazon-payments": "^0.2.9", "amplitude": "^6.0.0", - "apidoc": "^0.50.4", + "apidoc": "^0.50.5", "apple-auth": "^1.0.7", "bcrypt": "^5.0.1", "body-parser": "^1.19.2", From c0d4aa94153e2d85a11bcd84585cf046f6884be4 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 18 Mar 2022 12:38:49 -0400 Subject: [PATCH 04/16] build(deps): bump stripe from 8.207.0 to 8.209.0 (#13888) Bumps [stripe](https://github.com/stripe/stripe-node) from 8.207.0 to 8.209.0. - [Release notes](https://github.com/stripe/stripe-node/releases) - [Changelog](https://github.com/stripe/stripe-node/blob/master/CHANGELOG.md) - [Commits](https://github.com/stripe/stripe-node/compare/v8.207.0...v8.209.0) --- updated-dependencies: - dependency-name: stripe dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 6 +++--- package.json | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/package-lock.json b/package-lock.json index c4d014c37f..51568848de 100644 --- a/package-lock.json +++ b/package-lock.json @@ -13670,9 +13670,9 @@ } }, "stripe": { - "version": "8.207.0", - "resolved": "https://registry.npmjs.org/stripe/-/stripe-8.207.0.tgz", - "integrity": "sha512-ZCjdqN2adGfrC5uAAo0v7IquzaiQ3+pDzB324/iV3Q3Deiot9VO7KMVSNVx/0i6E6ywhgV33ko3FMT7iUgxKYA==", + "version": "8.209.0", + "resolved": "https://registry.npmjs.org/stripe/-/stripe-8.209.0.tgz", + "integrity": "sha512-ozfs8t0fxA/uvCK1DNvitSdEublOHK5CTRsrd2AWWk9LogjXcfkxmtz3KGSSQd+jyA2+rbee9TMzhJ6aabQ5WQ==", "requires": { "@types/node": ">=8.1.0", "qs": "^6.6.0" diff --git a/package.json b/package.json index 1091299429..5031d34500 100644 --- a/package.json +++ b/package.json @@ -67,7 +67,7 @@ "remove-markdown": "^0.3.0", "rimraf": "^3.0.2", "short-uuid": "^4.2.0", - "stripe": "^8.207.0", + "stripe": "^8.209.0", "superagent": "^7.1.1", "universal-analytics": "^0.5.3", "useragent": "^2.1.9", From 7fcdc9f8f13ceecdca663b94b8435a68fc7006b0 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 18 Mar 2022 12:44:45 -0400 Subject: [PATCH 05/16] build(deps-dev): bump axios from 0.26.0 to 0.26.1 (#13890) Bumps [axios](https://github.com/axios/axios) from 0.26.0 to 0.26.1. - [Release notes](https://github.com/axios/axios/releases) - [Changelog](https://github.com/axios/axios/blob/master/CHANGELOG.md) - [Commits](https://github.com/axios/axios/compare/v0.26.0...v0.26.1) --- updated-dependencies: - dependency-name: axios dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package-lock.json | 13 +++---------- package.json | 2 +- 2 files changed, 4 insertions(+), 11 deletions(-) diff --git a/package-lock.json b/package-lock.json index 51568848de..f59b62c164 100644 --- a/package-lock.json +++ b/package-lock.json @@ -2784,18 +2784,11 @@ "integrity": "sha512-3YDiu347mtVtjpyV3u5kVqQLP242c06zwDOgpeRnybmXlYYsLbtTrUBUm8i8srONt+FWobl5aibnU1030PeeuA==" }, "axios": { - "version": "0.26.0", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.26.0.tgz", - "integrity": "sha512-lKoGLMYtHvFrPVt3r+RBMp9nh34N0M8zEfCWqdWZx6phynIEhQqAdydpyBAAG211zlhX9Rgu08cOamy6XjE5Og==", + "version": "0.26.1", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.26.1.tgz", + "integrity": "sha512-fPwcX4EvnSHuInCMItEhAGnaSEXRBjtzh9fOtsE6E1G6p7vl7edEeZe11QHf18+6+9gR5PbKV/sGKNaD8YaMeA==", "requires": { "follow-redirects": "^1.14.8" - }, - "dependencies": { - "follow-redirects": { - "version": "1.14.8", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.8.tgz", - "integrity": "sha512-1x0S9UVJHsQprFcEC/qnNzBLcIxsjAV905f/UkQxbclCsoTWlacCNOpQa/anodLl2uaEKFhfWOvM2Qg77+15zA==" - } } }, "babel-code-frame": { diff --git a/package.json b/package.json index 5031d34500..47ebbfb3eb 100644 --- a/package.json +++ b/package.json @@ -110,7 +110,7 @@ "apidoc": "gulp apidoc" }, "devDependencies": { - "axios": "^0.26.0", + "axios": "^0.26.1", "chai": "^4.3.6", "chai-as-promised": "^7.1.1", "chai-moment": "^0.1.0", From deacd8964fc8cd4b6ddd1c71cc9cebd98d59d188 Mon Sep 17 00:00:00 2001 From: CuriousMagpie Date: Fri, 18 Mar 2022 14:06:37 -0400 Subject: [PATCH 06/16] uploaded spring fling class set images --- habitica-images | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/habitica-images b/habitica-images index 09672b551b..30c7e4a39d 160000 --- a/habitica-images +++ b/habitica-images @@ -1 +1 @@ -Subproject commit 09672b551b40af29c89f293577fa969bd13e0a5a +Subproject commit 30c7e4a39dee61ac8e9eb127dcc1f8d4af6b2313 From c94195129f170609de742280e48a0a0ae3ea829d Mon Sep 17 00:00:00 2001 From: CuriousMagpie Date: Fri, 18 Mar 2022 17:24:05 -0400 Subject: [PATCH 07/16] 2022 Spring Fling Content --- habitica-images | 2 +- website/common/locales/en/gear.json | 32 ++++++++++ website/common/locales/en/limited.json | 4 ++ .../common/script/content/constants/events.js | 11 +++- .../script/content/constants/seasonalSets.js | 7 +++ .../script/content/gear/sets/special/index.js | 61 +++++++++++++++++++ .../script/content/shop-featuredItems.js | 2 +- .../script/libs/shops-seasonal.config.js | 12 ++-- 8 files changed, 121 insertions(+), 10 deletions(-) diff --git a/habitica-images b/habitica-images index 30c7e4a39d..582f729e97 160000 --- a/habitica-images +++ b/habitica-images @@ -1 +1 @@ -Subproject commit 30c7e4a39dee61ac8e9eb127dcc1f8d4af6b2313 +Subproject commit 582f729e97ea420953ee2740be9467253fd07c30 diff --git a/website/common/locales/en/gear.json b/website/common/locales/en/gear.json index a736cd6b83..068aa1b217 100644 --- a/website/common/locales/en/gear.json +++ b/website/common/locales/en/gear.json @@ -428,6 +428,15 @@ "headSpecialNye2021Text": "Preposterous Party Hat", "headSpecialNye2021Notes": "You've received a Preposterous Party Hat! Wear it with pride while ringing in the New Year! Confers no benefit.", + "weaponSpecialSpring2022RogueText": "Giant Earring Stud", + "weaponSpecialSpring2022RogueNotes": "A shiny! It’s so shiny and gleaming and pretty and nice and all yours! Increases Strength by <%= str %>. Limited Edition 2022 Spring Gear.", + "weaponSpecialSpring2022WarriorText": "Inside-Out Umbrella", + "weaponSpecialSpring2022WarriorNotes": "Yikes! Guess that wind was a little stronger than you thought, huh? Increases Strength by <%= str %>, Limited Edition 2022 Spring Gear.", + "weaponSpecialSpring2022MageText": "Forsythia Staff", + "weaponSpecialSpring2022MageNotes": "These bright yellow bells are ready to channel your powerful springtime magic. Increases Intelligence by <%= int %> and Perception by <%= per %>. Limited Edition 2022 Spring Gear.", + "weaponSpecialSpring2022HealerText": "Peridot Wand", + "weaponSpecialSpring2022HealerNotes": "Use this wand to tap into peridot’s healing properties, whether it be to bring calm, positivity, or kindheartedness. Increases Intelligence by <%= int %>. Limited Edition 2022 Spring Gear.", + "weaponMystery201411Text": "Pitchfork of Feasting", "weaponMystery201411Notes": "Stab your enemies or dig in to your favorite foods - this versatile pitchfork does it all! Confers no benefit. November 2014 Subscriber Item.", "weaponMystery201502Text": "Shimmery Winged Staff of Love and Also Truth", @@ -1026,6 +1035,15 @@ "armorSpecialWinter2022HealerText": "Crystalline Ice Armor", "armorSpecialWinter2022HealerNotes": "Glide as if skating, just above the ground, a glittering ethereal figure come to bring cool and calm. Increases Constitution by <%= con %>. Limited Edition 2021-2022 Winter Gear.", + "armorSpecialSpring2022RogueText": "Magpie Costume", + "armorSpecialSpring2022RogueNotes": "With iridescent metallic blue-gray and lighter patches on your feathers, you will be the finest flying friend at the spring fling! Increases Perception by <%= per %>. Limited Edition 2022 Spring Gear.", + "armorSpecialSpring2022WarriorText": "Rain Slicker", + "armorSpecialSpring2022WarriorNotes": "This slicker and boots are so formidable you could sing in the rain or jump in every puddle but still be warm and dry! Increases Constitution by <%= con %>. Limited Edition 2022 Spring Gear.", + "armorSpecialSpring2022MageText": "Forsythia Robe", + "armorSpecialSpring2022MageNotes": "Show you’re ready to spring forward into the season with this robe adorned with forsythia flower petals. Intelligence by <%= int %>.Limited Edition 2022 Spring Gear.", + "armorSpecialSpring2022HealerText": "Peridot Armor", + "armorSpecialSpring2022HealerNotes": " Drive away fears and nightmares simply by wearing this green gem garment. Increases Constitution by <%= con %>. Limited Edition 2022 Spring Gear.", + "armorMystery201402Text": "Messenger Robes", "armorMystery201402Notes": "Shimmering and strong, these robes have many pockets to carry letters. Confers no benefit. February 2014 Subscriber Item.", "armorMystery201403Text": "Forest Walker Armor", @@ -1708,6 +1726,15 @@ "headSpecialWinter2022HealerText": "Crystalline Ice Crown", "headSpecialWinter2022HealerNotes": "Minute imperfections and impurities send the arms of this headdress branching out in unpredictable directions. It's symbolic! And also very, very pretty. Increases Intelligence by <%= int %>. Limited Edition 2021-2022 Winter Gear.", + "headSpecialSpring2022RogueText": "Magpie Mask", + "headSpecialSpring2022RogueNotes": "Be as clever as a magpie when wearing this mask. Maybe you’ll even be able to whistle, trill, and mimic as well as one, too. Increases Perception by <%= per %>. Limited Edition 2022 Spring Gear.", + "headSpecialSpring2022WarriorText": "Rain Slicker Hood", + "headSpecialSpring2022WarriorNotes": "Tut tut, it looks like rain! Stand tall and pull up your hood to stay dry. Increases Strength by <%= str %>. Limited Edition 2022 Spring Gear.", + "headSpecialSpring2022MageText": "Forsythia Helmet", + "headSpecialSpring2022MageNotes": "Stay dry during a rainstorm with this protective helmet of downturned petals.Increases Perception by <%= per %>. Limited Edition 2022 Spring Gear.", + "headSpecialSpring2022HealerText": "Peridot Helmet", + "headSpecialSpring2022HealerNotes": "This mysterious helmet preserves your privacy as you tackle your tasks. Increases Intelligence by <%= int %>. Limited Edition 2022 Spring Gear.", + "headSpecialGaymerxText": "Rainbow Warrior Helm", "headSpecialGaymerxNotes": "In celebration of the GaymerX Conference, this special helmet is decorated with a radiant, colorful rainbow pattern! GaymerX is a game convention celebrating LGTBQ and gaming and is open to everyone.", @@ -2237,6 +2264,11 @@ "shieldSpecialWinter2022HealerText": "Enduring Ice Crystal", "shieldSpecialWinter2022HealerNotes": "Though it melts in your hand, the power of elemental ice replenishes it from within. Increases Constitution by <%= con %>. Limited Edition 2021-2022 Winter Gear.", + "shieldSpecialSpring2022WarriorText": "Raincloud", + "shieldSpecialSpring2022WarriorNotes": "Ever had one of those days when it seems like a raincloud is following you around? Well, consider yourself lucky, because the prettiest flowers will soon be growing at your feet! Increases Constitution by <%= con %>. Limited Edition 2022 Spring Gear.", + "shieldSpecialSpring2022HealerText": "Peridot Shield", + "shieldSpecialSpring2022HealerNotes": "Formed by molten rock of the upper mantle, this shield can withstand any hit that comes its way. Increases Constitution by <%= con %>. Limited Edition 2022 Spring Gear.", + "shieldMystery201601Text": "Resolution Slayer", "shieldMystery201601Notes": "This blade can be used to parry away all distractions. Confers no benefit. January 2016 Subscriber Item.", "shieldMystery201701Text": "Time-Freezer Shield", diff --git a/website/common/locales/en/limited.json b/website/common/locales/en/limited.json index addb64411f..2992083589 100644 --- a/website/common/locales/en/limited.json +++ b/website/common/locales/en/limited.json @@ -179,6 +179,10 @@ "winter2022StockingWarriorSet": "Stocking (Warrior)", "winter2022PomegranateMageSet": "Pomegranate (Mage)", "winter2022IceCrystalHealerSet": "Ice Crystal (Healer)", + "spring2022MagpieRogueSet": "Magpie (Rogue)", + "spring2022RainstormWarriorSet": "Rainstorm (Warrior)", + "spring2022ForsythiaMageSet": "Forsythia (Mage)", + "spring2022PeridotHealerSet": "Peridot (Healer)", "eventAvailability": "Available for purchase until <%= date(locale) %>.", "eventAvailabilityReturning": "Available for purchase until <%= availableDate(locale) %>. This potion was last available in <%= previousDate(locale) %>.", "dateEndMarch": "April 30", diff --git a/website/common/script/content/constants/events.js b/website/common/script/content/constants/events.js index 2e5d776583..a3e1f4040a 100644 --- a/website/common/script/content/constants/events.js +++ b/website/common/script/content/constants/events.js @@ -10,11 +10,18 @@ const gemsPromo = { export const EVENTS = { noCurrentEvent: { - start: '2022-02-18T20:00-05:00', - end: '2022-03-31T20:00-05:00', + start: '2022-05-01T20:00-05:00', + end: '2022-06-30T20:00-05:00', season: 'normal', npcImageSuffix: '', }, + spring2022: { + start: '2022-03-22T08:00-05:00', + end: '2022-04-30T20:00-05:00', + npcImageSuffix: 'spring', + season: 'spring', + gear: true, + }, valentines2022: { start: '2022-02-14T08:00-05:00', end: '2022-02-18T20:00-05:00', diff --git a/website/common/script/content/constants/seasonalSets.js b/website/common/script/content/constants/seasonalSets.js index 383e555b7c..f1f117cf7e 100644 --- a/website/common/script/content/constants/seasonalSets.js +++ b/website/common/script/content/constants/seasonalSets.js @@ -96,7 +96,14 @@ const SEASONAL_SETS = { 'spring2021WillowHealerSet', 'spring2021SunstoneWarriorSet', 'spring2021TwinFlowerRogueSet', + + // spring 2022 + 'spring2022ForsythiaMageSet', + 'spring2022PeridotHealerSet', + 'spring2022RainstormWarriorSet', + 'spring2022MagpieRogueSet', ], + summer: [ // summer 2014 'daringSwashbucklerSet', diff --git a/website/common/script/content/gear/sets/special/index.js b/website/common/script/content/gear/sets/special/index.js index 3427057675..9bb8c79654 100644 --- a/website/common/script/content/gear/sets/special/index.js +++ b/website/common/script/content/gear/sets/special/index.js @@ -670,15 +670,19 @@ const armor = { }, spring2021Rogue: { set: 'spring2021TwinFlowerRogueSet', + canBuy: () => CURRENT_EVENT && CURRENT_EVENT.season === 'spring', }, spring2021Warrior: { set: 'spring2021SunstoneWarriorSet', + canBuy: () => CURRENT_EVENT && CURRENT_EVENT.season === 'spring', }, spring2021Mage: { set: 'spring2021SwanMageSet', + canBuy: () => CURRENT_EVENT && CURRENT_EVENT.season === 'spring', }, spring2021Healer: { set: 'spring2021WillowHealerSet', + canBuy: () => CURRENT_EVENT && CURRENT_EVENT.season === 'spring', }, summer2021Rogue: { set: 'summer2021ClownfishRogueSet', @@ -716,6 +720,19 @@ const armor = { winter2022Healer: { set: 'winter2022IceCrystalHealerSet', }, + spring2022Rogue: { + set: 'spring2022MagpieRogueSet', + }, + spring2022Warrior: { + set: 'spring2022RainstormWarriorSet', + }, + spring2022Mage: { + set: 'spring2022ForsythiaMageSet', + }, + spring2022Healer: { + set: 'spring2022PeridotHealerSet', + }, + birthday2022: { text: t('armorSpecialBirthday2022Text'), notes: t('armorSpecialBirthday2022Notes'), @@ -1728,15 +1745,19 @@ const head = { }, spring2021Rogue: { set: 'spring2021TwinFlowerRogueSet', + canBuy: () => CURRENT_EVENT && CURRENT_EVENT.season === 'spring', }, spring2021Warrior: { set: 'spring2021SunstoneWarriorSet', + canBuy: () => CURRENT_EVENT && CURRENT_EVENT.season === 'spring', }, spring2021Mage: { set: 'spring2021SwanMageSet', + canBuy: () => CURRENT_EVENT && CURRENT_EVENT.season === 'spring', }, spring2021Healer: { set: 'spring2021WillowHealerSet', + canBuy: () => CURRENT_EVENT && CURRENT_EVENT.season === 'spring', }, summer2021Rogue: { set: 'summer2021ClownfishRogueSet', @@ -1780,6 +1801,18 @@ const head = { value: 0, canOwn: ownsItem('head_special_nye2021'), }, + spring2022Rogue: { + set: 'spring2022MagpieRogueSet', + }, + spring2022Warrior: { + set: 'spring2022RainstormWarriorSet', + }, + spring2022Mage: { + set: 'spring2022ForsythiaMageSet', + }, + spring2022Healer: { + set: 'spring2022PeridotHealerSet', + }, }; const headStats = { @@ -2504,12 +2537,15 @@ const shield = { }, spring2021Rogue: { set: 'spring2021TwinFlowerRogueSet', + canBuy: () => CURRENT_EVENT && CURRENT_EVENT.season === 'spring', }, spring2021Warrior: { set: 'spring2021SunstoneWarriorSet', + canBuy: () => CURRENT_EVENT && CURRENT_EVENT.season === 'spring', }, spring2021Healer: { set: 'spring2021WillowHealerSet', + canBuy: () => CURRENT_EVENT && CURRENT_EVENT.season === 'spring', }, summer2021Rogue: { set: 'summer2021ClownfishRogueSet', @@ -2538,6 +2574,15 @@ const shield = { winter2022Healer: { set: 'winter2022IceCrystalHealerSet', }, + spring2022Rogue: { + set: 'spring2022MagpieRogueSet', + }, + spring2022Warrior: { + set: 'spring2022RainstormWarriorSet', + }, + spring2022Healer: { + set: 'spring2022PeridotHealerSet', + }, }; const shieldStats = { @@ -3168,15 +3213,19 @@ const weapon = { }, spring2021Rogue: { set: 'spring2021TwinFlowerRogueSet', + canBuy: () => CURRENT_EVENT && CURRENT_EVENT.season === 'spring', }, spring2021Warrior: { set: 'spring2021SunstoneWarriorSet', + canBuy: () => CURRENT_EVENT && CURRENT_EVENT.season === 'spring', }, spring2021Mage: { set: 'spring2021SwanMageSet', + canBuy: () => CURRENT_EVENT && CURRENT_EVENT.season === 'spring', }, spring2021Healer: { set: 'spring2021WillowHealerSet', + canBuy: () => CURRENT_EVENT && CURRENT_EVENT.season === 'spring', }, summer2021Rogue: { set: 'summer2021ClownfishRogueSet', @@ -3214,6 +3263,18 @@ const weapon = { winter2022Healer: { set: 'winter2022IceCrystalHealerSet', }, + spring2022Rogue: { + set: 'spring2022MagpieRogueSet', + }, + spring2022Warrior: { + set: 'spring2022RainstormWarriorSet', + }, + spring2022Mage: { + set: 'spring2022ForsythiaMageSet', + }, + spring2022Healer: { + set: 'spring2022PeridotHealerSet', + }, }; const weaponStats = { diff --git a/website/common/script/content/shop-featuredItems.js b/website/common/script/content/shop-featuredItems.js index 7a31af2f30..2e593caac8 100644 --- a/website/common/script/content/shop-featuredItems.js +++ b/website/common/script/content/shop-featuredItems.js @@ -75,7 +75,7 @@ const featuredItems = { }, ]; }, - seasonal: 'winter2021Warrior', + seasonal: 'spring2021Healer', timeTravelers: [ // TODO ], diff --git a/website/common/script/libs/shops-seasonal.config.js b/website/common/script/libs/shops-seasonal.config.js index d52410158e..02b589f4a1 100644 --- a/website/common/script/libs/shops-seasonal.config.js +++ b/website/common/script/libs/shops-seasonal.config.js @@ -15,7 +15,7 @@ const SHOP_OPEN = CURRENT_EVENT && ['winter', 'spring', 'summer', 'fall'].includ export default { opened: SHOP_OPEN, - currentSeason: SHOP_OPEN ? upperFirst(CURRENT_EVENT.season) : 'Closed', + currentSeason: SHOP_OPEN ? upperFirst(CURRENT_EVENT.season) : 'Spring', dateRange: { start: CURRENT_EVENT ? moment(CURRENT_EVENT.start) : moment().subtract(1, 'days').toDate(), @@ -30,10 +30,10 @@ export default { pinnedSets: SHOP_OPEN ? { - healer: 'winter2022IceCrystalHealerSet', - rogue: 'winter2022FireworksRogueSet', - warrior: 'winter2022StockingWarriorSet', - wizard: 'winter2022PomegranateMageSet', + healer: 'spring2022PeridotHealerSet', + rogue: 'spring2022MagpieRogueSet', + warrior: 'spring2022RainstormWarriorSet', + wizard: 'spring2022ForsythiaMageSet', } : {}, @@ -45,5 +45,5 @@ export default { availableQuests: [], - featuredSet: 'winter2021ArcticExplorerHealerSet', + featuredSet: 'spring2022PeridotHealerSet', }; From fa27aa8fe76648a27510dc75177cabf3c2eb93ec Mon Sep 17 00:00:00 2001 From: SabreCat Date: Fri, 18 Mar 2022 17:15:20 -0500 Subject: [PATCH 08/16] fix(tasks): self-healing for missing tasksOrder entries --- website/server/controllers/api-v3/tasks.js | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/website/server/controllers/api-v3/tasks.js b/website/server/controllers/api-v3/tasks.js index 5c20a9f4d7..cb0e273fbf 100644 --- a/website/server/controllers/api-v3/tasks.js +++ b/website/server/controllers/api-v3/tasks.js @@ -838,6 +838,17 @@ api.moveTask = { // In memory updates const order = owner.tasksOrder[`${task.type}s`]; + if (order.indexOf(task._id) === -1) { // task is missing from list, list needs repair + const taskList = await Tasks.Task.find({ type: task.type }, { _id: 1 }).exec(); + for (const foundTask of taskList) { + if (order.indexOf(foundTask._id) === -1) { + order.push(foundTask._id); + } + } + const fixQuery = { $set: {} }; + fixQuery.$set[`tasksOrder.${task.type}s`] = order; + await owner.update(fixQuery).exec(); + } moveTask(order, task._id, to); // Server updates From 4a21ffa81d66feed36d12c289ce8e963a2071ab4 Mon Sep 17 00:00:00 2001 From: SabreCat Date: Fri, 18 Mar 2022 17:30:43 -0500 Subject: [PATCH 09/16] fix(build): force https for git repositories --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 49a9d09037..52da880281 100644 --- a/package.json +++ b/package.json @@ -106,7 +106,7 @@ "start": "gulp nodemon", "debug": "gulp nodemon --inspect", "mongo:dev": "run-rs -v 4.2.8 -l ubuntu1804 --keep --dbpath mongodb-data --number 1 --quiet", - "postinstall": "gulp build && cd website/client && npm install", + "postinstall": "git config --global url.\"https://\".insteadOf git:// && gulp build && cd website/client && npm install", "apidoc": "gulp apidoc" }, "devDependencies": { From 2828ae660c96ac88af41f62a35d71c499a45e75b Mon Sep 17 00:00:00 2001 From: SabreCat Date: Fri, 18 Mar 2022 17:40:09 -0500 Subject: [PATCH 10/16] fix(tasks): correct list repair query --- website/server/controllers/api-v3/tasks.js | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/website/server/controllers/api-v3/tasks.js b/website/server/controllers/api-v3/tasks.js index cb0e273fbf..a07b9a4864 100644 --- a/website/server/controllers/api-v3/tasks.js +++ b/website/server/controllers/api-v3/tasks.js @@ -839,7 +839,10 @@ api.moveTask = { // In memory updates const order = owner.tasksOrder[`${task.type}s`]; if (order.indexOf(task._id) === -1) { // task is missing from list, list needs repair - const taskList = await Tasks.Task.find({ type: task.type }, { _id: 1 }).exec(); + const taskList = await Tasks.Task.find( + { userId: owner._id, type: task.type }, + { _id: 1 }, + ).exec(); for (const foundTask of taskList) { if (order.indexOf(foundTask._id) === -1) { order.push(foundTask._id); From 5be15eb1109037a8d8e08d7c4a5321e8263dfab3 Mon Sep 17 00:00:00 2001 From: CuriousMagpie Date: Mon, 21 Mar 2022 12:41:39 -0400 Subject: [PATCH 11/16] habitica-images --- habitica-images | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/habitica-images b/habitica-images index 30c7e4a39d..582f729e97 160000 --- a/habitica-images +++ b/habitica-images @@ -1 +1 @@ -Subproject commit 30c7e4a39dee61ac8e9eb127dcc1f8d4af6b2313 +Subproject commit 582f729e97ea420953ee2740be9467253fd07c30 From ce59306bd146564c7d4d14dd7401fab7855b9ef8 Mon Sep 17 00:00:00 2001 From: CuriousMagpie Date: Mon, 21 Mar 2022 17:01:08 -0400 Subject: [PATCH 12/16] habitica-images --- habitica-images | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/habitica-images b/habitica-images index 582f729e97..1a848ba4c4 160000 --- a/habitica-images +++ b/habitica-images @@ -1 +1 @@ -Subproject commit 582f729e97ea420953ee2740be9467253fd07c30 +Subproject commit 1a848ba4c4d3369651de2e9fb5414c1e34fcc878 From 9a454daef130ef8ab0548dfc076082629a9fd7b7 Mon Sep 17 00:00:00 2001 From: SabreCat Date: Mon, 21 Mar 2022 16:28:20 -0500 Subject: [PATCH 13/16] partial revert of hotfix for further review --- website/server/controllers/api-v3/tasks.js | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/website/server/controllers/api-v3/tasks.js b/website/server/controllers/api-v3/tasks.js index a07b9a4864..cb0e273fbf 100644 --- a/website/server/controllers/api-v3/tasks.js +++ b/website/server/controllers/api-v3/tasks.js @@ -839,10 +839,7 @@ api.moveTask = { // In memory updates const order = owner.tasksOrder[`${task.type}s`]; if (order.indexOf(task._id) === -1) { // task is missing from list, list needs repair - const taskList = await Tasks.Task.find( - { userId: owner._id, type: task.type }, - { _id: 1 }, - ).exec(); + const taskList = await Tasks.Task.find({ type: task.type }, { _id: 1 }).exec(); for (const foundTask of taskList) { if (order.indexOf(foundTask._id) === -1) { order.push(foundTask._id); From 33da6b7959eee0b21a44faa18b1d829e8a90a32d Mon Sep 17 00:00:00 2001 From: SabreCat Date: Mon, 21 Mar 2022 16:28:41 -0500 Subject: [PATCH 14/16] revert of hotfix for further review --- website/server/controllers/api-v3/tasks.js | 11 ----------- 1 file changed, 11 deletions(-) diff --git a/website/server/controllers/api-v3/tasks.js b/website/server/controllers/api-v3/tasks.js index cb0e273fbf..5c20a9f4d7 100644 --- a/website/server/controllers/api-v3/tasks.js +++ b/website/server/controllers/api-v3/tasks.js @@ -838,17 +838,6 @@ api.moveTask = { // In memory updates const order = owner.tasksOrder[`${task.type}s`]; - if (order.indexOf(task._id) === -1) { // task is missing from list, list needs repair - const taskList = await Tasks.Task.find({ type: task.type }, { _id: 1 }).exec(); - for (const foundTask of taskList) { - if (order.indexOf(foundTask._id) === -1) { - order.push(foundTask._id); - } - } - const fixQuery = { $set: {} }; - fixQuery.$set[`tasksOrder.${task.type}s`] = order; - await owner.update(fixQuery).exec(); - } moveTask(order, task._id, to); // Server updates From ad9c468e77d028d24b3f96e76785ac33a71cbe37 Mon Sep 17 00:00:00 2001 From: SabreCat Date: Tue, 22 Mar 2022 10:34:44 -0500 Subject: [PATCH 15/16] fix(event): CSS build, small fixes --- .../assets/css/sprites/spritesmith-main.css | 174 +++++++++++++++++- .../common/script/content/constants/events.js | 2 +- .../script/content/constants/seasonalSets.js | 6 - .../script/content/shop-featuredItems.js | 2 +- .../script/libs/shops-seasonal.config.js | 14 +- 5 files changed, 183 insertions(+), 15 deletions(-) diff --git a/website/client/src/assets/css/sprites/spritesmith-main.css b/website/client/src/assets/css/sprites/spritesmith-main.css index 8b9515fb86..828d014cde 100644 --- a/website/client/src/assets/css/sprites/spritesmith-main.css +++ b/website/client/src/assets/css/sprites/spritesmith-main.css @@ -50,8 +50,8 @@ } .achievement-birdsOfAFeather2x { background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/achievement-birdsOfAFeather2x.png'); - width: 68px; - height: 68px; + width: 60px; + height: 64px; } .achievement-birthday2x { background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/achievement-birthday2x.png'); @@ -25543,6 +25543,26 @@ width: 114px; height: 90px; } +.broad_armor_special_spring2022Healer { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/broad_armor_special_spring2022Healer.png'); + width: 114px; + height: 90px; +} +.broad_armor_special_spring2022Mage { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/broad_armor_special_spring2022Mage.png'); + width: 114px; + height: 90px; +} +.broad_armor_special_spring2022Rogue { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/broad_armor_special_spring2022Rogue.png'); + width: 114px; + height: 117px; +} +.broad_armor_special_spring2022Warrior { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/broad_armor_special_spring2022Warrior.png'); + width: 114px; + height: 90px; +} .broad_armor_special_springHealer { background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/broad_armor_special_springHealer.png'); width: 90px; @@ -25783,6 +25803,26 @@ width: 114px; height: 90px; } +.head_special_spring2022Healer { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/head_special_spring2022Healer.png'); + width: 114px; + height: 90px; +} +.head_special_spring2022Mage { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/head_special_spring2022Mage.png'); + width: 114px; + height: 90px; +} +.head_special_spring2022Rogue { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/head_special_spring2022Rogue.png'); + width: 114px; + height: 117px; +} +.head_special_spring2022Warrior { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/head_special_spring2022Warrior.png'); + width: 114px; + height: 90px; +} .head_special_springHealer { background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/head_special_springHealer.png'); width: 90px; @@ -25908,6 +25948,21 @@ width: 114px; height: 90px; } +.shield_special_spring2022Healer { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/shield_special_spring2022Healer.png'); + width: 114px; + height: 90px; +} +.shield_special_spring2022Mage { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/shield_special_spring2022Mage.png'); + width: 114px; + height: 117px; +} +.shield_special_spring2022Warrior { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/shield_special_spring2022Warrior.png'); + width: 114px; + height: 90px; +} .shield_special_springHealer { background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/shield_special_springHealer.png'); width: 90px; @@ -26063,6 +26118,26 @@ width: 68px; height: 68px; } +.shop_armor_special_spring2022Healer { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/shop_armor_special_spring2022Healer.png'); + width: 68px; + height: 68px; +} +.shop_armor_special_spring2022Mage { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/shop_armor_special_spring2022Mage.png'); + width: 68px; + height: 68px; +} +.shop_armor_special_spring2022Rogue { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/shop_armor_special_spring2022Rogue.png'); + width: 68px; + height: 68px; +} +.shop_armor_special_spring2022Warrior { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/shop_armor_special_spring2022Warrior.png'); + width: 68px; + height: 68px; +} .shop_armor_special_springHealer { background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/shop_armor_special_springHealer.png'); width: 68px; @@ -26303,6 +26378,26 @@ width: 68px; height: 68px; } +.shop_head_special_spring2022Healer { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/shop_head_special_spring2022Healer.png'); + width: 68px; + height: 68px; +} +.shop_head_special_spring2022Mage { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/shop_head_special_spring2022Mage.png'); + width: 68px; + height: 68px; +} +.shop_head_special_spring2022Rogue { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/shop_head_special_spring2022Rogue.png'); + width: 68px; + height: 68px; +} +.shop_head_special_spring2022Warrior { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/shop_head_special_spring2022Warrior.png'); + width: 68px; + height: 68px; +} .shop_head_special_springHealer { background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/shop_head_special_springHealer.png'); width: 68px; @@ -26428,6 +26523,21 @@ width: 68px; height: 68px; } +.shop_shield_special_spring2022Healer { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/shop_shield_special_spring2022Healer.png'); + width: 68px; + height: 68px; +} +.shop_shield_special_spring2022Rogue { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/shop_shield_special_spring2022Rogue.png'); + width: 68px; + height: 68px; +} +.shop_shield_special_spring2022Warrior { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/shop_shield_special_spring2022Warrior.png'); + width: 68px; + height: 68px; +} .shop_shield_special_springHealer { background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/shop_shield_special_springHealer.png'); width: 68px; @@ -26583,6 +26693,26 @@ width: 68px; height: 68px; } +.shop_weapon_special_spring2022Healer { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/shop_weapon_special_spring2022Healer.png'); + width: 68px; + height: 68px; +} +.shop_weapon_special_spring2022Mage { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/shop_weapon_special_spring2022Mage.png'); + width: 68px; + height: 68px; +} +.shop_weapon_special_spring2022Rogue { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/shop_weapon_special_spring2022Rogue.png'); + width: 68px; + height: 68px; +} +.shop_weapon_special_spring2022Warrior { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/shop_weapon_special_spring2022Warrior.png'); + width: 68px; + height: 68px; +} .shop_weapon_special_springHealer { background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/shop_weapon_special_springHealer.png'); width: 68px; @@ -26743,6 +26873,26 @@ width: 114px; height: 90px; } +.slim_armor_special_spring2022Healer { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/slim_armor_special_spring2022Healer.png'); + width: 114px; + height: 90px; +} +.slim_armor_special_spring2022Mage { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/slim_armor_special_spring2022Mage.png'); + width: 114px; + height: 90px; +} +.slim_armor_special_spring2022Rogue { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/slim_armor_special_spring2022Rogue.png'); + width: 114px; + height: 117px; +} +.slim_armor_special_spring2022Warrior { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/slim_armor_special_spring2022Warrior.png'); + width: 114px; + height: 90px; +} .slim_armor_special_springHealer { background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/slim_armor_special_springHealer.png'); width: 90px; @@ -26903,6 +27053,26 @@ width: 114px; height: 90px; } +.weapon_special_spring2022Healer { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/weapon_special_spring2022Healer.png'); + width: 114px; + height: 90px; +} +.weapon_special_spring2022Mage { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/weapon_special_spring2022Mage.png'); + width: 114px; + height: 90px; +} +.weapon_special_spring2022Rogue { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/weapon_special_spring2022Rogue.png'); + width: 114px; + height: 117px; +} +.weapon_special_spring2022Warrior { + background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/weapon_special_spring2022Warrior.png'); + width: 114px; + height: 90px; +} .weapon_special_springHealer { background-image: url('https://habitica-assets.s3.amazonaws.com/mobileApp/images/weapon_special_springHealer.png'); width: 90px; diff --git a/website/common/script/content/constants/events.js b/website/common/script/content/constants/events.js index a3e1f4040a..08caac74ad 100644 --- a/website/common/script/content/constants/events.js +++ b/website/common/script/content/constants/events.js @@ -10,7 +10,7 @@ const gemsPromo = { export const EVENTS = { noCurrentEvent: { - start: '2022-05-01T20:00-05:00', + start: '2022-04-30T20:00-05:00', end: '2022-06-30T20:00-05:00', season: 'normal', npcImageSuffix: '', diff --git a/website/common/script/content/constants/seasonalSets.js b/website/common/script/content/constants/seasonalSets.js index f1f117cf7e..6a03fb5865 100644 --- a/website/common/script/content/constants/seasonalSets.js +++ b/website/common/script/content/constants/seasonalSets.js @@ -67,37 +67,31 @@ const SEASONAL_SETS = { 'cleverDogSet', 'braveMouseSet', - // spring 2017 'spring2017FelineWarriorSet', 'spring2017CanineConjurorSet', 'spring2017FloralMouseSet', 'spring2017SneakyBunnySet', - // spring 2018 'spring2018TulipMageSet', 'spring2018SunriseWarriorSet', 'spring2018DucklingRogueSet', 'spring2018GarnetHealerSet', - // spring 2019 'spring2019AmberMageSet', 'spring2019OrchidWarriorSet', 'spring2019CloudRogueSet', 'spring2019RobinHealerSet', - // spring 2020 'spring2020BeetleWarriorSet', 'spring2020IrisHealerSet', 'spring2020LapisLazuliRogueSet', 'spring2020PuddleMageSet', - // spring 2021 'spring2021SwanMageSet', 'spring2021WillowHealerSet', 'spring2021SunstoneWarriorSet', 'spring2021TwinFlowerRogueSet', - // spring 2022 'spring2022ForsythiaMageSet', 'spring2022PeridotHealerSet', 'spring2022RainstormWarriorSet', diff --git a/website/common/script/content/shop-featuredItems.js b/website/common/script/content/shop-featuredItems.js index e9eefda1eb..179264d3db 100644 --- a/website/common/script/content/shop-featuredItems.js +++ b/website/common/script/content/shop-featuredItems.js @@ -52,7 +52,7 @@ const featuredItems = { }, { type: 'quests', - path: 'quests.turquoise', + path: 'quests.egg', }, { type: 'quests', diff --git a/website/common/script/libs/shops-seasonal.config.js b/website/common/script/libs/shops-seasonal.config.js index 02b589f4a1..b921e21250 100644 --- a/website/common/script/libs/shops-seasonal.config.js +++ b/website/common/script/libs/shops-seasonal.config.js @@ -15,7 +15,7 @@ const SHOP_OPEN = CURRENT_EVENT && ['winter', 'spring', 'summer', 'fall'].includ export default { opened: SHOP_OPEN, - currentSeason: SHOP_OPEN ? upperFirst(CURRENT_EVENT.season) : 'Spring', + currentSeason: SHOP_OPEN ? upperFirst(CURRENT_EVENT.season) : 'Closed', dateRange: { start: CURRENT_EVENT ? moment(CURRENT_EVENT.start) : moment().subtract(1, 'days').toDate(), @@ -37,13 +37,17 @@ export default { } : {}, - availableSpells: SHOP_OPEN && moment().isBetween('2021-12-30T08:00-04:00', CURRENT_EVENT.end) + availableSpells: SHOP_OPEN && moment().isBetween('2022-04-12T08:00-05:00', CURRENT_EVENT.end) ? [ - 'snowball', + 'shinySeed', ] : [], - availableQuests: [], + availableQuests: SHOP_OPEN && CURRENT_EVENT.season === 'spring' + ? [ + 'egg', + ] + : [], - featuredSet: 'spring2022PeridotHealerSet', + featuredSet: 'spring2021TwinFlowerRogueSet', }; From 4d1c5024a30ec333c38bd9eafe600779de7313c2 Mon Sep 17 00:00:00 2001 From: SabreCat Date: Tue, 22 Mar 2022 10:37:35 -0500 Subject: [PATCH 16/16] 4.225.0 --- package-lock.json | 2 +- package.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/package-lock.json b/package-lock.json index f639286820..c082cc20df 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "habitica", - "version": "4.224.3", + "version": "4.225.0", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/package.json b/package.json index 52da880281..edd2ecfd4c 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.224.3", + "version": "4.225.0", "main": "./website/server/index.js", "dependencies": { "@babel/core": "^7.16.12",