dndbeyond_src/ddb_main/tools/js/Shared/managers/ActionsManagerContext.tsx
2025-05-28 15:36:51 -07:00

26 lines
670 B
TypeScript

import React, { useMemo } from "react";
import { ActionsManager } from "@dndbeyond/character-rules-engine/es";
interface ActionsManagerContextValue {
actionsManager: ActionsManager;
}
const initContext: ActionsManagerContextValue = {
actionsManager: new ActionsManager(),
};
export const ActionsManagerContext =
React.createContext<ActionsManagerContextValue>(initContext);
export function ActionsManagerProvider({ children }) {
const actionsManager: ActionsManager = useMemo(
() => new ActionsManager(),
[]
);
return (
<ActionsManagerContext.Provider value={{ actionsManager }}>
{children}
</ActionsManagerContext.Provider>
);
}