/*
 * Copyright (c) Huawei Technologies Co., Ltd. 2025-2025. All rights reserved.
 */

import axios from 'axios';

const isProduction = import.meta.env.VITE_MODE === 'production';

let baseURL: string = '';
export const setBaseURL = (url: string) => {
    const [protocol, URL] = url.split('://');
    baseURL = `${protocol === 'ws' ? 'http' : 'https'}://${URL}`;
};
const getBaseURL = () => {
    if (isProduction) {
        return baseURL;
    } else {
        return import.meta.env.VITE_URL;
    }
};

const requestBase = axios.create({
    baseURL: '',
    timeout: 10000,
});

requestBase.interceptors.request.use(
    config => {
        config.headers['content-type'] = 'text/plain';
        config.url = `${getBaseURL()}${config.url}`;
        return config;
    },
    error => {
        return Promise.reject(error);
    }
);

requestBase.interceptors.response.use(
    config => {
        return config;
    },
    error => {
        return Promise.reject(error);
    }
);