INNER CODE UNIT · TypeScript

useGqlHeaders

Diizzayy/nuxt-graphql-client · src/runtime/composables/index.ts:73

export function useGqlHeaders(...args: any[]) {
  const client = args[1] || args?.[0]?.client
  let headers = (args[0] && typeof args[0] !== 'undefined' && 'headers' in args[0]) ? args[0].headers : args[0]
  const respectDefaults = args?.[0]?.respectDefaults

  headers = headers || {}

  setGqlState({ client, patch: { headers } })

  if (respectDefaults && !Object.keys(headers).length) {
    const defaultHeaders = (useRuntimeConfig()?.public?.['graphql-client'] as GqlConfig)?.clients?.[client || 'default']?.headers

    const serverHeaders = (import.meta.server && (typeof defaultHeaders?.serverOnly === 'object' && defaultHeaders?.serverOnly)) || undefined
    if (defaultHeaders?.serverOnly) { delete defaultHeaders.serverOnly }

    headers = { ...(defaultHeaders as Record<string, string>), ...serverHeaders }

    setGqlState({ client, patch: { headers } })

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…