Skip to content

Commit

Permalink
fix: correct hueRotate and backdropHueRotate functions (#8057)
Browse files Browse the repository at this point in the history
fix(styled-system): correct hueRotate and backdropHueRotate functions
  • Loading branch information
hirotomoyamada committed Nov 9, 2023
1 parent 4ed66b6 commit 4168094
Show file tree
Hide file tree
Showing 4 changed files with 56 additions and 3 deletions.
5 changes: 5 additions & 0 deletions .changeset/hungry-camels-dream.md
@@ -0,0 +1,5 @@
---
"@chakra-ui/styled-system": patch
---

Fixed a bug where `hueRotate` and `backdropHueRotate` were not working.
7 changes: 5 additions & 2 deletions packages/core/styled-system/src/config/filter.ts
Expand Up @@ -7,7 +7,7 @@ export const filter: Config = {
blur: t.blur("--chakra-blur"),
brightness: t.propT("--chakra-brightness", transforms.brightness),
contrast: t.propT("--chakra-contrast", transforms.contrast),
hueRotate: t.degreeT("--chakra-hue-rotate"),
hueRotate: t.propT("--chakra-hue-rotate", transforms.hueRotate),
invert: t.propT("--chakra-invert", transforms.invert),
saturate: t.propT("--chakra-saturate", transforms.saturate),
dropShadow: t.propT("--chakra-drop-shadow", transforms.dropShadow),
Expand All @@ -18,7 +18,10 @@ export const filter: Config = {
transforms.brightness,
),
backdropContrast: t.propT("--chakra-backdrop-contrast", transforms.contrast),
backdropHueRotate: t.degreeT("--chakra-backdrop-hue-rotate"),
backdropHueRotate: t.propT(
"--chakra-backdrop-hue-rotate",
transforms.hueRotate,
),
backdropInvert: t.propT("--chakra-backdrop-invert", transforms.invert),
backdropSaturate: t.propT("--chakra-backdrop-saturate", transforms.saturate),
}
Expand Down
3 changes: 2 additions & 1 deletion packages/core/styled-system/src/utils/transform-functions.ts
Expand Up @@ -67,7 +67,8 @@ export const transformFunctions = {
contrast: wrap("contrast"),
dropShadow: wrap("drop-shadow"),
grayscale: wrap("grayscale"),
hueRotate: wrap("hue-rotate"),
hueRotate: (value: any) =>
wrap("hue-rotate")(transformFunctions.degree(value)),
invert: wrap("invert"),
saturate: wrap("saturate"),
sepia: wrap("sepia"),
Expand Down
44 changes: 44 additions & 0 deletions packages/core/styled-system/tests/css.test.ts
Expand Up @@ -677,3 +677,47 @@ test("should resolve !important syntax", () => {
// `)
// })
// })

test("returns filter hueRotate css function", () => {
const result = css({
filter: "auto",
hueRotate: "90",
})(theme)

expect(result).toMatchInlineSnapshot(`
{
"--chakra-blur": "var(--chakra-empty,/*!*/ /*!*/)",
"--chakra-brightness": "var(--chakra-empty,/*!*/ /*!*/)",
"--chakra-contrast": "var(--chakra-empty,/*!*/ /*!*/)",
"--chakra-drop-shadow": "var(--chakra-empty,/*!*/ /*!*/)",
"--chakra-grayscale": "var(--chakra-empty,/*!*/ /*!*/)",
"--chakra-hue-rotate": "hue-rotate(90deg)",
"--chakra-invert": "var(--chakra-empty,/*!*/ /*!*/)",
"--chakra-saturate": "var(--chakra-empty,/*!*/ /*!*/)",
"--chakra-sepia": "var(--chakra-empty,/*!*/ /*!*/)",
"filter": "var(--chakra-blur) var(--chakra-brightness) var(--chakra-contrast) var(--chakra-grayscale) var(--chakra-hue-rotate) var(--chakra-invert) var(--chakra-saturate) var(--chakra-sepia) var(--chakra-drop-shadow)",
}
`)
})

test("returns backdropFilter backdropHueRotate css function", () => {
const result = css({
backdropFilter: "auto",
backdropHueRotate: "90",
})(theme)

expect(result).toMatchInlineSnapshot(`
{
"--chakra-backdrop-blur": "var(--chakra-empty,/*!*/ /*!*/)",
"--chakra-backdrop-brightness": "var(--chakra-empty,/*!*/ /*!*/)",
"--chakra-backdrop-contrast": "var(--chakra-empty,/*!*/ /*!*/)",
"--chakra-backdrop-grayscale": "var(--chakra-empty,/*!*/ /*!*/)",
"--chakra-backdrop-hue-rotate": "hue-rotate(90deg)",
"--chakra-backdrop-invert": "var(--chakra-empty,/*!*/ /*!*/)",
"--chakra-backdrop-opacity": "var(--chakra-empty,/*!*/ /*!*/)",
"--chakra-backdrop-saturate": "var(--chakra-empty,/*!*/ /*!*/)",
"--chakra-backdrop-sepia": "var(--chakra-empty,/*!*/ /*!*/)",
"backdropFilter": "var(--chakra-backdrop-blur) var(--chakra-backdrop-brightness) var(--chakra-backdrop-contrast) var(--chakra-backdrop-grayscale) var(--chakra-backdrop-hue-rotate) var(--chakra-backdrop-invert) var(--chakra-backdrop-opacity) var(--chakra-backdrop-saturate) var(--chakra-backdrop-sepia)",
}
`)
})

1 comment on commit 4168094

@vercel
Copy link

@vercel vercel bot commented on 4168094 Nov 9, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please sign in to comment.