export function searchAPI()

in src/front/src/api/apiServices.js [70:111]


export function searchAPI(objectName, ra, dec, ang, physicalPhenomena, eventType, messengerType, page) {

    const coordinatesString = (ra && dec) ? `${ra} ${dec}` : '';
    const url = constructURL(`${BASE_URL}/search/`, {
        object_name: objectName,
        object_type: physicalPhenomena,
        event_type: eventType,
        messenger_type: messengerType,
        radius: ang,
        coordinates: coordinatesString,
        page: page
    });


    return fetch(url, {headers: HEADERS})

        .then(response => {
            if (!response.ok) {
                throw new Error("Network response was not ok");
            }

            return response.json();
        })
        .then(async data => {
            const atelData = Object.values(data.atel || {});
            const gcnData = Object.values(data.gcn || {});

            const atelDataWithProvider = atelData.map(item => ({
                ...item, provider: 'atel'
            }));

            const gcnDataWithProvider = gcnData.map(item => ({
                ...item, provider: 'gcn'
            }));

            const nimRecords = mergeAndSortRecords(atelDataWithProvider, gcnDataWithProvider);
            const records = await loadDataAndMerge(nimRecords, page);
            return {
                records: records, total: nimRecords.length
            }
        });
}