import { createContext, useContext, ReactNode } from 'react'; import { getContrastColor } from '../common/utils'; const color = decodeURIComponent(new URLSearchParams(location.search).get("themeColor") || "#1fe1f9"); const fgColor = getContrastColor(color); // 判断是否是iframe上下文 const embed = window.location !== window.parent.location; const WidgetContext = createContext({ color, fgColor, embed }); function WidgetProvider({ children }: { children: ReactNode }) { return {children}; } function useWidget() { const context = useContext(WidgetContext); if (context === undefined) { throw new Error('useWidget must be used within a WidgetProvider'); } return context; } export { WidgetProvider, useWidget };