Estoy tratando de proporcionar un agente de usuario, así:
// user-agent-provider.tsx export const userAgentContext = createContext<UAParser | undefined>(undefined); export const UserAgentProvider = userAgentContext.Provider Empaqué este código en @teambit/ui-foundation.ui.hooks.use-user-agent y lo usé así:
// app.tsx import { UserAgentProvider } from '@teambit/ui-foundation.ui.hooks.use-user-agent'; // UA may be undefined during server side rendering const userAgent = typeof window !== 'undefined' ? new UAParser(window.navigator.userAgent) : undefined; export function App({children}: any) { // error here! ⬇ return <UserAgentProvider value={userAgent}>{children}</UserAgentProvider> }Entonces me sale este error:
Type 'UAParserInstance | undefined' is not assignable to type 'UAParserInstance'. Type 'undefined' is not assignable to type 'UAParserInstance'.ts(2322) mirando dentro del paquete dist, veo este archivo .d.ts :
export declare const userAgentContext: import("react").Context<UAParser>; export declare const UserAgentProvider: import("react").Provider<UAParser>; Esta es claramente la causa, el | undefined de alguna manera se omitió del proveedor.
¿Alguna idea de por qué? y como arreglar esto?