index.ts 689 B

123456789101112131415161718
  1. /** biome-ignore-all lint/style/noRestrictedImports: This file is an adapter for axios */
  2. import type { AxiosStatic } from 'axios';
  3. import axios from 'axios';
  4. import { createCustomAxios } from './create-custom-axios';
  5. export * from 'axios';
  6. // Create a new object based on axios, but with custom create method
  7. // This avoids mutating the original axios object and prevents infinite recursion
  8. // Order matters: axios static properties first, then custom instance, then override create
  9. const customAxiosStatic = Object.assign({}, axios, createCustomAxios(), {
  10. // Override only the create method
  11. create: createCustomAxios,
  12. }) satisfies AxiosStatic;
  13. export default customAxiosStatic;