wretch.ts•668 B
import wretch from 'wretch'
import FormDataAddon from 'wretch/addons/formData'
import QueryStringAddon from 'wretch/addons/queryString'
/**
 * Creates a configured wretch client with middleware and addons
 */
export const WretchClient = (baseURL: string) =>
  wretch(baseURL)
    .middlewares([
      (next) => async (url, opts) => {
        const response = await next(url, opts)
        try {
          Reflect.get(response, 'type', response)
        } catch {
          Object.defineProperty(response, 'type', {
            get: () => 'default',
          })
        }
        return response
      },
    ])
    .addon(FormDataAddon)
    .addon(QueryStringAddon)