diff --git a/packages/core/src/utils/variantGroup.ts b/packages/core/src/utils/variantGroup.ts index 056d9b3447..9a37823781 100644 --- a/packages/core/src/utils/variantGroup.ts +++ b/packages/core/src/utils/variantGroup.ts @@ -1,6 +1,6 @@ import type MagicString from 'magic-string' -export const regexClassGroup = /((?:[!@\w+:_/-]|\[&?>?:?.*\])+?)([:-])\(((?:[~!\w\s:/\\,%#.$-]|\[.*?\])+?)\)(?!\s*?=>)/gm +export const regexClassGroup = /((?:[!@\w+:_/-]|\[&?>?:?.*\])+?)([:-])\(((?:[~!\w\s:/\\,%#.$?-]|\[.*?\])+?)\)(?!\s*?=>)/gm export function expandVariantGroup(str: string, separators?: string[], depth?: number): string export function expandVariantGroup(str: MagicString, separators?: string[], depth?: number): MagicString diff --git a/test/variant-group.test.ts b/test/variant-group.test.ts index ab93a47297..20c6e86bab 100644 --- a/test/variant-group.test.ts +++ b/test/variant-group.test.ts @@ -52,4 +52,8 @@ describe('variant-group', () => { expect(expandVariantGroup('@a:(c-d d-c)')).toEqual('@a:c-d @a:d-c') expect(expandVariantGroup('!@a:(c-d d-c)')).toEqual('!@a:c-d !@a:d-c') }) + + test('inlucde ?', async () => { + expect(expandVariantGroup('a:(b?c d)')).toEqual('a:b?c a:d') + }) })