import { constants, utils } from '@spglobal/ca-mfe-package-utils';
import { endpoints } from '@root/constants/endpoints';
import { createApi } from '@reduxjs/toolkit/query/react';
import { getDataSourceHeader } from '@root/utils/common';

export const qAdjustmentsApi = createApi({
    reducerPath: 'qAdjustmentsApi',
    baseQuery: utils.serviceLayerAPI.fetchBaseQuery({
        baseUrl: constants.endpoints.SERVICEHOST
    }),
    endpoints: builder => ({
        getQAdjustments: builder.mutation({
            query: ({ datasource, ...data }) => utils.serviceLayerAPI.reduxPost(endpoints.QADJUSTMENTS_DATA_API,
                data, datasource ? getDataSourceHeader(datasource): {})
        }),
        getCalculatedEsg: builder.mutation({
            query: ({ datasource, ...data }) => utils.serviceLayerAPI.reduxPost(endpoints.CALCULATE_ESG,
                data, datasource ? getDataSourceHeader(datasource): {})
        })
    })
});

export const { useGetQAdjustmentsMutation, useGetCalculatedEsgMutation } = qAdjustmentsApi;
