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 parentInfoApi = createApi({
    reducerPath: 'parentInfoApi',
    baseQuery: utils.serviceLayerAPI.fetchBaseQuery({
        baseUrl: constants.endpoints.SERVICEHOST
    }),
    endpoints: builder => ({
        getParentInfo: builder.mutation({
            query: ({ datasource, ...data }) => utils.serviceLayerAPI.reduxPost(endpoints.PG_PARENT_INFO,
                data, getDataSourceHeader(datasource))
        })
    })
});

export const parentAndGovernmentApi = createApi({
    reducerPath: 'parentAndGovernmentApi',
    baseQuery: utils.serviceLayerAPI.fetchBaseQuery({
        baseUrl: constants.endpoints.SERVICEHOST
    }),
    endpoints: builder => ({
        getPandGInputs: builder.mutation({
            query: ({ datasource, ...data }) => utils.serviceLayerAPI.reduxPost(endpoints.PG_LOAD_INPUTS,
                data, getDataSourceHeader(datasource))
        })
    })
});

export const { useGetPandGInputsMutation } = parentAndGovernmentApi;
export const { useGetParentInfoMutation } = parentInfoApi;
