From da152a0a13c883a5deab20ca4b5daf1518dc9f1d Mon Sep 17 00:00:00 2001 From: Fabien 'egg' O'Carroll Date: Wed, 3 Nov 2021 17:11:48 +0200 Subject: [PATCH] Removed references to Offers labs flag (#13709) refs https://github.com/TryGhost/Team/issues/1115 This feature is now GA, and the flag has been hardcoded to `true`, here we clean up the remaining references as they're no longer needed. --- core/server/services/offers/service.js | 32 ---------------------- core/server/web/api/canary/admin/routes.js | 8 +++--- core/server/web/members/app.js | 2 +- core/shared/labs.js | 3 +- package.json | 2 +- yarn.lock | 8 +++--- 6 files changed, 11 insertions(+), 44 deletions(-) diff --git a/core/server/services/offers/service.js b/core/server/services/offers/service.js index f115a8e9ee..37e2c44b55 100644 --- a/core/server/services/offers/service.js +++ b/core/server/services/offers/service.js @@ -1,6 +1,3 @@ -const labs = require('../../../shared/labs'); -const events = require('../../lib/common/events'); - const DynamicRedirectManager = require('@tryghost/express-dynamic-redirects'); const OffersModule = require('@tryghost/members-offers'); @@ -27,35 +24,6 @@ module.exports = { }); this.api = offersModule.api; - - let initCalled = false; - if (labs.isSet('offers')) { - // handles setting up redirects - const promise = offersModule.init(); - initCalled = true; - await promise; - } - - // TODO: Delete after GA - let offersEnabled = labs.isSet('offers'); - events.on('settings.labs.edited', async () => { - if (labs.isSet('offers') && !initCalled) { - const promise = offersModule.init(); - initCalled = true; - await promise; - } else if (labs.isSet('offers') !== offersEnabled) { - offersEnabled = labs.isSet('offers'); - - if (offersEnabled) { - const offers = await this.api.listOffers({}); - for (const offer of offers) { - redirectManager.addRedirect(`/${offer.code}`, `/#/portal/offers/${offer.id}`, {permanent: false}); - } - } else { - redirectManager.removeAllRedirects(); - } - } - }); }, api: null, diff --git a/core/server/web/api/canary/admin/routes.js b/core/server/web/api/canary/admin/routes.js index 4654b4af0e..d4c7179ce6 100644 --- a/core/server/web/api/canary/admin/routes.js +++ b/core/server/web/api/canary/admin/routes.js @@ -100,10 +100,10 @@ module.exports = function apiRoutes() { router.del('/members', mw.authAdminApi, http(api.members.bulkDestroy)); router.put('/members/bulk', mw.authAdminApi, http(api.members.bulkEdit)); - router.get('/offers', labs.enabledMiddleware('offers'), mw.authAdminApi, http(api.offers.browse)); - router.post('/offers', labs.enabledMiddleware('offers'), mw.authAdminApi, http(api.offers.add)); - router.get('/offers/:id', labs.enabledMiddleware('offers'), mw.authAdminApi, http(api.offers.read)); - router.put('/offers/:id', labs.enabledMiddleware('offers'), mw.authAdminApi, http(api.offers.edit)); + router.get('/offers', mw.authAdminApi, http(api.offers.browse)); + router.post('/offers', mw.authAdminApi, http(api.offers.add)); + router.get('/offers/:id', mw.authAdminApi, http(api.offers.read)); + router.put('/offers/:id', mw.authAdminApi, http(api.offers.edit)); router.get('/members/stats/count', mw.authAdminApi, http(api.members.memberStats)); router.get('/members/stats/mrr', mw.authAdminApi, http(api.members.mrrStats)); diff --git a/core/server/web/members/app.js b/core/server/web/members/app.js index 67bf96ff36..4b590e8e9a 100644 --- a/core/server/web/members/app.js +++ b/core/server/web/members/app.js @@ -37,7 +37,7 @@ module.exports = function setupMembersApp() { membersApp.put('/api/member', bodyParser.json({limit: '1mb'}), middleware.updateMemberData); membersApp.post('/api/member/email', bodyParser.json({limit: '1mb'}), (req, res) => membersService.api.middleware.updateEmailAddress(req, res)); membersApp.get('/api/session', middleware.getIdentityToken); - membersApp.get('/api/offers/:id', labs.enabledMiddleware('offers'), middleware.getOfferData); + membersApp.get('/api/offers/:id', middleware.getOfferData); membersApp.delete('/api/session', middleware.deleteSession); membersApp.get('/api/site', middleware.getMemberSiteData); diff --git a/core/shared/labs.js b/core/shared/labs.js index e6cddaf905..50c5a659ab 100644 --- a/core/shared/labs.js +++ b/core/shared/labs.js @@ -15,8 +15,7 @@ const messages = { // flags in this list always return `true`, allows quick global enable prior to full flag removal const GA_FEATURES = [ - 'customThemeSettings', - 'offers' + 'customThemeSettings' ]; // NOTE: this allowlist is meant to be used to filter out any unexpected diff --git a/package.json b/package.json index 8533d1cc74..c0fc9fcc8f 100644 --- a/package.json +++ b/package.json @@ -79,7 +79,7 @@ "@tryghost/limit-service": "1.0.0", "@tryghost/logging": "1.0.0", "@tryghost/magic-link": "1.0.14", - "@tryghost/members-api": "2.7.0", + "@tryghost/members-api": "2.7.1", "@tryghost/members-csv": "1.1.8", "@tryghost/members-importer": "0.3.4", "@tryghost/members-offers": "0.10.1", diff --git a/yarn.lock b/yarn.lock index 142a2795ad..36de95886c 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1566,10 +1566,10 @@ "@tryghost/domain-events" "^0.1.3" "@tryghost/member-events" "^0.3.1" -"@tryghost/members-api@2.7.0": - version "2.7.0" - resolved "https://registry.yarnpkg.com/@tryghost/members-api/-/members-api-2.7.0.tgz#a6b09c3cb6fa315d3371a0180775288fcb9ece38" - integrity sha512-Obsg7AXbdnknaJtCs+kKXgSAtO1kgRWDyUQ7meoV70efoUzodK42ViXPPLxBwoS5+fdfkzmzWQY2JrLLx48POQ== +"@tryghost/members-api@2.7.1": + version "2.7.1" + resolved "https://registry.yarnpkg.com/@tryghost/members-api/-/members-api-2.7.1.tgz#f1f10747c80c97830825ee16a4e5f5d1b9eaf866" + integrity sha512-xkz6GEOh8wmJY7oe2vj1SvtF+rBFBhinY0DmaMsCZYTBo2Lr0rTHcQKimba/xSlW0Ba/tosSyIVVwOmYNqY7sg== dependencies: "@tryghost/debug" "^0.1.2" "@tryghost/domain-events" "^0.1.3"