feat(): Add support for store locales end point (#14307)

**What**
Add support for `store/locales` which return the configured supported locales
This commit is contained in:
Adrien de Peretti
2025-12-15 13:10:43 +00:00
committed by GitHub
parent 665b80adb1
commit 0f1566c644
7 changed files with 141 additions and 6 deletions
@@ -0,0 +1,9 @@
import { MiddlewareRoute } from "@medusajs/framework/http"
export const storeLocalesRoutesMiddlewares: MiddlewareRoute[] = [
{
method: ["GET"],
matcher: "/store/locales",
middlewares: [],
},
]
@@ -0,0 +1,28 @@
import { MedusaRequest, MedusaResponse } from "@medusajs/framework/http"
import { ContainerRegistrationKeys } from "@medusajs/framework/utils"
export const GET = async (req: MedusaRequest, res: MedusaResponse) => {
const query = req.scope.resolve(ContainerRegistrationKeys.QUERY)
const {
data: [store],
} = await query.graph({
entity: "store",
fields: ["supported_locales.*", "supported_locales.locale.*"],
pagination: {
take: 1,
},
})
const locales = store?.supported_locales.reduce((acc, locale) => {
acc.push({
code: locale.locale_code,
name: locale.locale.name,
})
return acc
}, [])
res.json({
locales,
})
}
@@ -1,6 +1,8 @@
import { MiddlewareRoute } from "@medusajs/framework/http"
import { storeLocalesRoutesMiddlewares } from "./locales/middlewares"
import { storeReturnsRoutesMiddlewares } from "./returns/middlewares"
export const storeRoutesMiddlewares: MiddlewareRoute[] = [
...storeLocalesRoutesMiddlewares,
...storeReturnsRoutesMiddlewares,
]
@@ -1,12 +1,8 @@
import { ModuleJoinerConfig } from "@medusajs/framework/types"
import {
FeatureFlag,
MEDUSA_SKIP_FILE,
Modules,
} from "@medusajs/framework/utils"
import { MEDUSA_SKIP_FILE, Modules } from "@medusajs/framework/utils"
export const StoreLocales: ModuleJoinerConfig = {
[MEDUSA_SKIP_FILE]: !FeatureFlag.isFeatureEnabled("translation"),
[MEDUSA_SKIP_FILE]: process.env.MEDUSA_FF_TRANSLATION !== "true",
isLink: true,
isReadOnlyLink: true,
extends: [