diff --git a/examples/expo-example/src/app.tsx b/examples/expo-example/src/app.tsx index 583b718..fffc184 100644 --- a/examples/expo-example/src/app.tsx +++ b/examples/expo-example/src/app.tsx @@ -54,6 +54,11 @@ const BoxWithoutProps = (props: Stylable) => { color: "green", }, }, + fover: { + text: { + textDecorationLine: "underline", + } + } }, md({ shadowOpacity: 0.5, diff --git a/examples/next-example/src/pages/index.tsx b/examples/next-example/src/pages/index.tsx index dc34a18..a3488e3 100644 --- a/examples/next-example/src/pages/index.tsx +++ b/examples/next-example/src/pages/index.tsx @@ -100,13 +100,16 @@ export default function Home(props: Stylable) {
- +

Examples →

Discover and deploy boilerplate example Next.js projects.

diff --git a/packages/yoshiki/package.json b/packages/yoshiki/package.json index f0e41d6..0ef642d 100644 --- a/packages/yoshiki/package.json +++ b/packages/yoshiki/package.json @@ -1,6 +1,6 @@ { "name": "yoshiki", - "version": "1.1.4", + "version": "1.2.0", "author": "Zoe Roux (https://github.com/AnonymusRaccoon)", "license": "MIT", "keywords": [ diff --git a/packages/yoshiki/src/native/generator.tsx b/packages/yoshiki/src/native/generator.tsx index 173a431..0b32392 100644 --- a/packages/yoshiki/src/native/generator.tsx +++ b/packages/yoshiki/src/native/generator.tsx @@ -86,12 +86,13 @@ export const useYoshiki = (_?: string) => { }; if (hasState(css)) { - const { hover, focus, press, ...inline } = css; + const { hover, focus, fover, press, ...inline } = css; const { onPressIn, onPressOut, onHoverIn, onHoverOut, onFocus, onBlur } = leftOvers as PressableProps; const ret: StyleFunc = ({ hovered, focused, pressed }) => { childStyles.current = {}; assignChilds(childStyles.current, child); + if (focused || hovered) assignChilds(childStyles.current, fover); if (hovered) assignChilds(childStyles.current, hover); if (focused) assignChilds(childStyles.current, focus); if (pressed) assignChilds(childStyles.current, press); @@ -99,6 +100,7 @@ export const useYoshiki = (_?: string) => { return [ processStyle(inline), processStyle(child?.self ?? {}), + (focused || hovered) && processStyle(fover?.self ?? {}), hovered && processStyle(hover?.self ?? {}), focused && processStyle(focus?.self ?? {}), pressed && processStyle(press?.self ?? {}), diff --git a/packages/yoshiki/src/type.ts b/packages/yoshiki/src/type.ts index 0a651fc..8dca6c5 100644 --- a/packages/yoshiki/src/type.ts +++ b/packages/yoshiki/src/type.ts @@ -17,6 +17,8 @@ export type Breakpoints = { export type WithState