import { createContext, type ReactNode, useContext } from "react"; import type { PlatformWebModule } from "../types"; import { moduleInstalled, uiCapabilities, uiCapability } from "./modules"; const PlatformModulesContext = createContext([]); export function PlatformModulesProvider({ modules, children }: { modules: PlatformWebModule[]; children: ReactNode }) { return {children}; } export function usePlatformModules(): PlatformWebModule[] { return useContext(PlatformModulesContext); } export function usePlatformModuleInstalled(moduleId: string): boolean { return moduleInstalled(moduleId, usePlatformModules()); } export function usePlatformUiCapability(capabilityName: string): T | null { return uiCapability(capabilityName, usePlatformModules()); } export function usePlatformUiCapabilities(capabilityName: string): T[] { return uiCapabilities(capabilityName, usePlatformModules()); }