diff --git a/package-lock.json b/package-lock.json index b39bd17..71c9f05 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "topcoder-react-lib", - "version": "1000.27.1", + "version": "1.1.4", "lockfileVersion": 1, "requires": true, "dependencies": { @@ -7537,11 +7537,6 @@ "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", "dev": true }, - "fast-safe-stringify": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.0.7.tgz", - "integrity": "sha512-Utm6CdzT+6xsDk2m8S6uL8VHxNwI6Jub+e9NYTcAms28T84pTa25GJQV9j0CY0N1rM8hK4x6grpF2BQf+2qwVA==" - }, "fastparse": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/fastparse/-/fastparse-1.1.2.tgz", @@ -8195,9 +8190,9 @@ "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=" }, "form-data": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.0.tgz", - "integrity": "sha512-CKMFDglpbMi6PyN+brwB9Q/GOw0eAnsrEZDgcsH5Krhz5Od/haKHAX0NmQfha2zPPz0JpWzA7GJHGSnvCRLWsg==", + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.5.1.tgz", + "integrity": "sha512-m21N3WOmEEURgk6B9GLOE4RuWOFf28Lhh9qGYeNlGq4VDXUlJy2th2slBNU8Gp8EzloYZOibZJ7t5ecIrFSjVA==", "requires": { "asynckit": "0.4.0", "combined-stream": "1.0.8", @@ -9606,8 +9601,7 @@ "isarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" }, "isexe": { "version": "2.0.0", @@ -14802,8 +14796,7 @@ "process-nextick-args": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", - "dev": true + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" }, "progress": { "version": "2.0.3", @@ -15266,7 +15259,6 @@ "version": "2.3.7", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, "requires": { "core-util-is": "1.0.2", "inherits": "2.0.4", @@ -18596,58 +18588,29 @@ } }, "superagent": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/superagent/-/superagent-5.3.1.tgz", - "integrity": "sha512-wjJ/MoTid2/RuGCOFtlacyGNxN9QLMgcpYLDQlWFIhhdJ93kNscFonGvrpAHSCVjRVj++DGCglocF7Aej1KHvQ==", + "version": "3.8.3", + "resolved": "https://registry.npmjs.org/superagent/-/superagent-3.8.3.tgz", + "integrity": "sha512-GLQtLMCoEIK4eDv6OGtkOoSMt3D+oq0y3dsxMuYuDvaNUvuT8eFBuLmfR0iYYzHC1e8hpzC6ZsxbuP6DIalMFA==", "requires": { "component-emitter": "1.3.0", "cookiejar": "2.1.2", - "debug": "4.1.1", - "fast-safe-stringify": "2.0.7", - "form-data": "3.0.0", + "debug": "3.2.6", + "extend": "3.0.2", + "form-data": "2.5.1", "formidable": "1.2.2", "methods": "1.1.2", - "mime": "2.5.0", + "mime": "1.6.0", "qs": "6.9.4", - "readable-stream": "3.6.0", - "semver": "7.3.4" + "readable-stream": "2.3.7" }, "dependencies": { - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "requires": { - "yallist": "4.0.0" - } - }, - "mime": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-2.5.0.tgz", - "integrity": "sha512-ft3WayFSFUVBuJj7BMLKAQcSlItKtfjsKDDsii3rqFDAZ7t11zRe8ASw/GlmivGwVUYtwkQrxiGGpL6gFvB0ag==" - }, - "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "requires": { - "inherits": "2.0.4", - "string_decoder": "1.1.1", - "util-deprecate": "1.0.2" - } - }, - "semver": { - "version": "7.3.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.4.tgz", - "integrity": "sha512-tCfb2WLjqFAtXn4KEdxIhalnRtoKFN7nAwj0B3ZXCbQloV2tq5eDbcTmT68JJD3nRJq24/XgxtQKFIpQdtvmVw==", + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", "requires": { - "lru-cache": "6.0.0" + "ms": "2.1.2" } - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" } } }, @@ -18790,7 +18753,7 @@ "tc-core-library-js": { "version": "github:appirio-tech/tc-core-library-js#d16413db30b1eed21c0cf426e185bedb2329ddab", "requires": { - "auth0-js": "9.14.3", + "auth0-js": "9.13.2", "axios": "0.12.0", "bunyan": "1.8.12", "jsonwebtoken": "8.5.1", @@ -18802,15 +18765,15 @@ }, "dependencies": { "auth0-js": { - "version": "9.14.3", - "resolved": "https://registry.npmjs.org/auth0-js/-/auth0-js-9.14.3.tgz", - "integrity": "sha512-UO/fGv9641PUpYjz2nkPaUHzzrhNaJKupJOqt8blj1pD6wBgpZtxUSXBox6Y8md3eTBzpxeWxV+6RKzzERvr1g==", + "version": "9.13.2", + "resolved": "https://registry.npmjs.org/auth0-js/-/auth0-js-9.13.2.tgz", + "integrity": "sha512-gWlf+X3XhCT9JboYpGviflv0pHcaHFPGtkLXiebyJohHDKddiu2rZkezp9kZHEoXqxhtNqgWuuaXkcla5JtnXg==", "requires": { "base64-js": "1.3.1", "idtoken-verifier": "2.0.3", "js-cookie": "2.2.1", "qs": "6.9.4", - "superagent": "5.3.1", + "superagent": "3.8.3", "url-join": "4.0.1", "winchan": "0.2.2" } @@ -21424,4 +21387,4 @@ } } } -} +} \ No newline at end of file diff --git a/package.json b/package.json index c0c7a3c..1b8cc0a 100644 --- a/package.json +++ b/package.json @@ -31,7 +31,7 @@ "lint:js": "./node_modules/.bin/eslint --ext .js,.jsx .", "test": "npm run lint && npm run jest" }, - "version": "1000.27.5", + "version": "1.1.6", "dependencies": { "auth0-js": "^6.8.4", "config": "^3.2.0", diff --git a/src/services/challenges.js b/src/services/challenges.js index e251f67..7c02078 100644 --- a/src/services/challenges.js +++ b/src/services/challenges.js @@ -536,25 +536,26 @@ class ChallengesService { * @return {Promise} Resolves to the api response. */ async getRecommendedChallenges(filter, handle) { - const query = getFilterUrl( - filter.backendFilter, - { ...filter.frontFilter, per_page: filter.frontFilter.perPage }, - ); + filter.frontFilter.per_page = filter.frontFilter.perPage; + delete filter.frontFilter.perPage; + + const query = getFilterUrl(filter.backendFilter, filter.frontFilter); let res = {}; + let totalCount = 0; if (_.some(filter.frontFilter.tracks, val => val) && !_.isEqual(filter.frontFilter.types, [])) { const url = `/recommender-api/${handle}?${query}`; res = await this.private.apiV5.get(url).then(checkErrorV5); + totalCount = res.headers.get('x-total') || 0; } - const challenges = res.result.filter(ch => ch.jaccard_index > 0); - const totalCount = challenges.length; + const challenges = res.result ? res.result.filter(ch => ch.jaccard_index > 0) : []; return { challenges, totalCount, meta: { - allChallengesCount: challenges.length, + allChallengesCount: totalCount, allRecommendedChallengesCount: 0, myChallengesCount: 0, ongoingChallengesCount: 0,