From 10fd58259ff298a59f91f504eb77d5637cf1eb76 Mon Sep 17 00:00:00 2001 From: Patrik Kozak <35232443+PatrikKozak@users.noreply.github.com> Date: Wed, 29 Jul 2026 15:44:23 -0400 Subject: [PATCH] fix: respect locale when counting global versions --- .../globals/operations/countGlobalVersions.ts | 1 + test/localization/int.spec.ts | 31 +++++++++++++++++++ 2 files changed, 32 insertions(+) diff --git a/packages/payload/src/globals/operations/countGlobalVersions.ts b/packages/payload/src/globals/operations/countGlobalVersions.ts index 80604aeb90c..145703680a7 100644 --- a/packages/payload/src/globals/operations/countGlobalVersions.ts +++ b/packages/payload/src/globals/operations/countGlobalVersions.ts @@ -77,6 +77,7 @@ export const countGlobalVersionsOperation = async ( const result = await payload.db.countGlobalVersions({ global: global.slug, + locale: req?.locale || undefined, req, where: fullWhere, }) diff --git a/test/localization/int.spec.ts b/test/localization/int.spec.ts index 487ec51e490..6e4a2e46cfb 100644 --- a/test/localization/int.spec.ts +++ b/test/localization/int.spec.ts @@ -4558,6 +4558,37 @@ describe('Localization', () => { }) expect(result2.totalDocs).toBe(1) }) + + it('should count global versions with query on localized field respecting locale', async () => { + await payload.updateGlobal({ + slug: globalWithDraftsSlug, + data: { text: 'global count en', _status: 'published' }, + locale: defaultLocale, + }) + + await payload.updateGlobal({ + slug: globalWithDraftsSlug, + data: { text: 'global count es', _status: 'published' }, + locale: spanishLocale, + }) + + const englishWhere = { 'version.text': { equals: 'global count en' } } + + const inEnglish = await payload.countGlobalVersions({ + global: globalWithDraftsSlug, + locale: defaultLocale, + where: englishWhere, + }) + + const inSpanish = await payload.countGlobalVersions({ + global: globalWithDraftsSlug, + locale: spanishLocale, + where: englishWhere, + }) + + expect(inEnglish.totalDocs).toBeGreaterThan(0) + expect(inSpanish.totalDocs).toBe(0) + }) }) })