Untitled
unknown
plain_text
a year ago
3.6 kB
4
Indexable
import { GetAllAgencies, GetAllCurrencies, GetAllSourceEnum } from '@/services/request.service'; import { GetAllUsers } from '@/services/user.service'; import { capitalize } from '@/utils/inputHelpers'; export const getAddRequestConfig = async () => { // Fetch the sources from the API const { response: sourcesResponse } = await GetAllSourceEnum(); const { response: currenciesResponse } = await GetAllCurrencies(); const { response: agenciesResponse } = await GetAllAgencies(); const { response: userResponse } = await GetAllUsers(); // Process users const users = userResponse?.data?.map((user: any) => ({ label: `${user.firstName} ${user.lastName}`, value: user.id, type: 'User' })) || []; // Process agencies const agencies = agenciesResponse?.data.agencies?.map((agency) => ({ label: agency.name, value: agency._id, type: 'Agency' })) || []; // Log agencies to the console // console.log('🚀 ~ getAddRequestConfig ~ agencies:', agencies); // Combine users and agencies const userModels = [...users, ...agencies]; // Process sources const sources = sourcesResponse?.data.sources?.map((item) => ({ name: capitalize(item), value: item })) || []; // console.log('🚀 ~ getAddRequestConfig ~ sources:', sources); // Process currencies const allCurrencies = currenciesResponse?.currencies?.map((currency) => ({ label: currency.label, code: currency.code, displayedValue: `${currency.label} | ${currency.code.toUpperCase()}` })) || []; const currencies = Array.from(new Map(allCurrencies.map((item) => [item.code, item])).values()); const addRequestConfig = [ { name: 'source', type: 'select', required: true, label: 'Source', options: sources }, { name: 'isB2B', type: 'checkbox', label: 'B2B Request', placeholderInactive: 'B2C', placeholderActive: 'B2B', defaultChecked: false }, { name: 'customer', type: 'ac', label: 'Choose Please Contact', required: true, options: userModels, filterFields: ['label'], displayFields: ['label'] }, { name: 'onModel', type: 'hidden', label: 'Customer Model', defaultValue: 'User', required: true, options: [ { name: 'User', value: 'User' }, { name: 'Agency', value: 'Agency' } ] }, { name: 'isUrgent', type: 'checkbox', placeholderInactive: 'No', placeholderActive: 'Yes', label: 'Urgent Request', defaultChecked: false }, { name: 'isDelegation', type: 'checkbox', placeholderInactive: 'No', placeholderActive: 'Yes', label: 'Delegated Request', defaultChecked: false }, { name: 'vatIncluded', type: 'checkbox', placeholderInactive: 'No', placeholderActive: 'Yes', label: 'VAT Included', defaultChecked: false }, { name: 'comments', type: 'area', label: 'Comments', required: false, placeholder: 'Enter comments here, separate each by pressing Enter', rows: 4 }, { name: 'currency', type: 'ac', label: 'Currency', required: true, options: currencies, filterFields: ['label', 'code'], displayFields: ['displayedValue'] } ]; return addRequestConfig; }; export default getAddRequestConfig;
Editor is loading...
Leave a Comment