Skip to content

Commit 5d21c2f

Browse files
committed
fix: blur() when used as a variable value
1 parent 72385ef commit 5d21c2f

File tree

2 files changed

+59
-0
lines changed

2 files changed

+59
-0
lines changed

src/__tests__/vendor/tailwind.test.tsx

Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -353,3 +353,61 @@ test("line-clamp", () => {
353353
testID,
354354
});
355355
});
356+
357+
test("blur-xl", () => {
358+
const compiled = registerCSS(`
359+
@layer theme {
360+
:root, :host {
361+
--blur-xs: 4px;
362+
}
363+
}
364+
@layer utilities {
365+
.blur-xs {
366+
--tw-blur: blur(var(--blur-xs));
367+
filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
368+
}
369+
}
370+
`);
371+
372+
expect(compiled.stylesheet()).toStrictEqual({
373+
s: [
374+
[
375+
"blur-xs",
376+
[
377+
{
378+
d: [
379+
[
380+
[
381+
[{}, "var", "tw-blur", 1],
382+
[{}, "var", "tw-brightness", 1],
383+
[{}, "var", "tw-contrast", 1],
384+
[{}, "var", "tw-grayscale", 1],
385+
[{}, "var", "tw-hue-rotate", 1],
386+
[{}, "var", "tw-invert", 1],
387+
[{}, "var", "tw-saturate", 1],
388+
[{}, "var", "tw-sepia", 1],
389+
[{}, "var", "tw-drop-shadow", 1],
390+
],
391+
"filter",
392+
],
393+
],
394+
s: [2, 1],
395+
v: [["tw-blur", [{}, "blur", [{}, "var", "blur-xs", 1]]]],
396+
},
397+
],
398+
],
399+
],
400+
vr: [["blur-xs", [[4]]]],
401+
});
402+
403+
render(<View testID={testID} className="blur-xs" />);
404+
const component = screen.getByTestId(testID);
405+
406+
expect(component.props).toStrictEqual({
407+
children: undefined,
408+
style: {
409+
filter: [{ blur: 4 }],
410+
},
411+
testID,
412+
});
413+
});

src/compiler/declarations.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1029,6 +1029,7 @@ export function parseUnparsed(
10291029
case "translateY":
10301030
tokenOrValue.value.name = `@${tokenOrValue.value.name}`;
10311031
return unparsedFunction(tokenOrValue, builder);
1032+
case "blur":
10321033
case "brightness":
10331034
case "contrast":
10341035
case "cubic-bezier":

0 commit comments

Comments
 (0)