feat(medusa): Add feature flags to store response (#1819)

**What**
- Add `feature_flags` string array to store response

**Why**
- to provide conditional ui in admin corresponding to enabled features

Co-authored-by: Oliver Windall Juhl <59018053+olivermrbl@users.noreply.github.com>
This commit is contained in:
Philip Korsholm
2022-07-11 11:42:58 +02:00
committed by GitHub
parent 02967f95b1
commit 3e197e3adf
7 changed files with 70 additions and 2 deletions
@@ -1,9 +1,11 @@
import { FulfillmentProvider, PaymentProvider, Store } from "../../../../models"
import {
FulfillmentProviderService,
PaymentProviderService,
StoreService,
} from "../../../../services"
import { FulfillmentProvider, PaymentProvider, Store } from "../../../../models"
import { FeatureFlagsResponse } from "../../../../types/feature-flags"
import { FlagRouter } from "../../../../utils/flag-router"
/**
* @oas [get] /store
@@ -25,6 +27,9 @@ import { FulfillmentProvider, PaymentProvider, Store } from "../../../../models"
*/
export default async (req, res) => {
const storeService: StoreService = req.scope.resolve("storeService")
const featureFlagRouter: FlagRouter = req.scope.resolve("featureFlagRouter")
const paymentProviderService: PaymentProviderService = req.scope.resolve(
"paymentProviderService"
)
@@ -36,8 +41,11 @@ export default async (req, res) => {
})) as Store & {
payment_providers: PaymentProvider[]
fulfillment_providers: FulfillmentProvider[]
feature_flags: FeatureFlagsResponse
}
data.feature_flags = featureFlagRouter.listFlags()
const paymentProviders = await paymentProviderService.list()
const fulfillmentProviders = await fulfillmentProviderService.list()