nuxt-modules / kinde

Kinde integration for Nuxt
62 stars 5 forks source link

useKindeClient can't import on server side #111

Open uyloal opened 3 weeks ago

uyloal commented 3 weeks ago

useKindeClinet error added to nuxt client composables.

Using addServerImports or [addServerImportsDir](https://nuxt.com/docs/api/kit/nitro#addserverimportsdir) maybe fix it

error code: module.ts:132

Type error in API: image

No type error in page image

Keyvitia commented 2 weeks ago

By looking at the kinde.ts middleware source code, it seems kinde client is available at the event.context.

export default defineEventHandler(async (event) => {
  const sessionManager = await createSessionManager(event)
  const kindeContext = { sessionManager } as Record<string, unknown>
  const kindeClient = getKindeClient()
  for (const _key in kindeClient) {
    const key = _key as keyof typeof kindeClient
    // eslint-disable-next-line @typescript-eslint/no-explicit-any
    kindeContext[key] = (kindeClient[key] as any).bind(kindeClient, sessionManager)
  }
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
  event.context.kinde = kindeContext as any
})