From 4233128c7ee8c6e5ab4ee74385c7b1b911d507a6 Mon Sep 17 00:00:00 2001 From: Barend Du Toit Date: Sat, 1 Oct 2022 19:31:18 -0600 Subject: [PATCH] feat(Menu): add nested menu groups + more props (#30) --- src/deck-components/Menu.tsx | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/src/deck-components/Menu.tsx b/src/deck-components/Menu.tsx index 85c34fd..3f31692 100755 --- a/src/deck-components/Menu.tsx +++ b/src/deck-components/Menu.tsx @@ -15,6 +15,7 @@ export interface MenuProps { label: string; onCancel?(): void; cancelText?: string; + children?: ReactNode; } export const Menu: FC = findModuleChild((m) => { @@ -27,8 +28,26 @@ export const Menu: FC = findModuleChild((m) => { } }); +export interface MenuGroupProps { + label: string; + disabled?: boolean; + children?: ReactNode; +} + +export const MenuGroup: FC = findModuleChild((m) => { + if (typeof m !== 'object') return undefined; + + for (let prop in m) { + if (m[prop]?.prototype?.RenderSubMenu && m[prop]?.prototype?.ShowSubMenu) { + return m[prop]; + } + } +}); + export interface MenuItemProps { onSelected?(): void; + disabled?: boolean; + children?: ReactNode; } export const MenuItem: FC = findModuleChild((m) => {