/* eslint-disable @typescript-eslint/no-explicit-any */
import { javaPost } from './apiClient';

export async function basicFinder(queryString: any) {
  const endpoint = 'contentControl/basicFinder';
  return javaPost(endpoint, { queryString });
}

export async function basicExactFinder(queryString: any, fieldName: any) {
  const endpoint = 'contentControl/basicExactFinder';
  return javaPost(endpoint, { queryString, fieldName });
}

export async function getCreationListEnMetaSearch(subjectHeading: string) {
  const defaultBody = {
    firstResult: 0,
    maxResults: 10000,
    subjectHeading: '',
  };

  try {
    const response = await javaPost('contentControl/getListByMeta', {
      ...defaultBody,
      subjectHeading,
    });

    if (Array.isArray(response?.list)) {
      response.list = response.list.map((item: any) => ({
        ...item,
        cardType: 'creation',
      }));
    }

    return response;
  } catch (error) {
    console.error('Failed to get list by meta:', error);
    // Return empty response structure as fallback
    return [];
  }
}
