mirror of
https://github.com/SteamDeckHomebrew/decky-frontend-lib.git
synced 2026-05-22 10:58:46 +02:00
feat(components): remove HorizontalFocus, add Focusable
This commit is contained in:
@@ -1,15 +1,19 @@
|
||||
import { ReactNode, VFC } from "react";
|
||||
import { HTMLAttributes, ReactNode, VFC } from "react";
|
||||
import { findModuleChild } from "../webpack";
|
||||
|
||||
export interface FocusableProps {
|
||||
children: ReactNode;
|
||||
export interface FocusableProps extends HTMLAttributes<HTMLDivElement> {
|
||||
children: ReactNode;
|
||||
"flow-children"?: string;
|
||||
focusClassName?: string;
|
||||
focusWithinClassName?: string;
|
||||
onActivate?: () => void;
|
||||
onCancel?: () => void;
|
||||
}
|
||||
|
||||
export const HorizontalFocus = findModuleChild(m => {
|
||||
if (typeof m !== "object") return undefined;
|
||||
for (let prop in m) {
|
||||
if (m[prop]?.toString()?.includes('"children","alignItems","spacing"')) {
|
||||
return m[prop];
|
||||
}
|
||||
}
|
||||
export const Focusable = findModuleChild((m) => {
|
||||
if (typeof m !== 'object') return undefined;
|
||||
for (let prop in m) {
|
||||
if (m[prop]?.render?.toString()?.includes('["flow-children","onActivate","onCancel","focusClassName",'))
|
||||
return m[prop];
|
||||
}
|
||||
}) as VFC<FocusableProps>;
|
||||
Reference in New Issue
Block a user