mirror of
https://github.com/zoriya/v10.git
synced 2026-08-16 02:45:09 +00:00
build(react): build26 from 45504a2b
This commit is contained in:
Vendored
+44
@@ -0,0 +1,44 @@
|
||||
"use client";
|
||||
import { createContext, useContext } from "react";
|
||||
//#region src/ui/menu/context.tsx
|
||||
const MenuContext = createContext(null);
|
||||
const MenuContextProvider = MenuContext.Provider;
|
||||
function useMenuContext() {
|
||||
const ctx = useContext(MenuContext);
|
||||
if (!ctx) throw new Error("Menu compound components must be used within a Menu.Root");
|
||||
return ctx;
|
||||
}
|
||||
function useOptionalMenuContext() {
|
||||
return useContext(MenuContext);
|
||||
}
|
||||
const SubMenuContext = createContext(null);
|
||||
const SubMenuContextProvider = SubMenuContext.Provider;
|
||||
function useSubMenuContext() {
|
||||
return useContext(SubMenuContext);
|
||||
}
|
||||
const MenuGroupContext = createContext(null);
|
||||
const MenuGroupContextProvider = MenuGroupContext.Provider;
|
||||
function useMenuGroupContext() {
|
||||
return useContext(MenuGroupContext);
|
||||
}
|
||||
const MenuRadioGroupContext = createContext(null);
|
||||
const MenuRadioGroupContextProvider = MenuRadioGroupContext.Provider;
|
||||
function useMenuRadioGroupContext() {
|
||||
const ctx = useContext(MenuRadioGroupContext);
|
||||
if (!ctx) throw new Error("Menu.RadioItem must be used within a Menu.RadioGroup");
|
||||
return ctx;
|
||||
}
|
||||
const MenuTriggerChildContext = createContext(false);
|
||||
const MenuTriggerChildContextProvider = MenuTriggerChildContext.Provider;
|
||||
function useOptionalMenuTriggerChildContext() {
|
||||
return useContext(MenuTriggerChildContext);
|
||||
}
|
||||
const MenuItemSettingContext = createContext(null);
|
||||
const MenuItemSettingContextProvider = MenuItemSettingContext.Provider;
|
||||
function useOptionalMenuItemSettingContext() {
|
||||
return useContext(MenuItemSettingContext);
|
||||
}
|
||||
//#endregion
|
||||
export { MenuContextProvider, MenuGroupContextProvider, MenuItemSettingContextProvider, MenuRadioGroupContextProvider, MenuTriggerChildContextProvider, SubMenuContextProvider, useMenuContext, useMenuGroupContext, useMenuRadioGroupContext, useOptionalMenuContext, useOptionalMenuItemSettingContext, useOptionalMenuTriggerChildContext, useSubMenuContext };
|
||||
|
||||
//# sourceMappingURL=context.js.map
|
||||
Reference in New Issue
Block a user