@letanure/resend-cli
Version:
A command-line interface for Resend email API
39 lines • 1.48 kB
JavaScript
import { useInputSelector } from '../components/forms/useInputSelector.js';
import { listAudiences } from '../modules/audiences/list/action.js';
import { displayFields } from '../modules/audiences/list/fields.js';
export function useAudienceSelector(onSelect) {
return useInputSelector({
title: 'Audiences',
loadFunction: async (data, apiKey) => {
const result = await listAudiences(data, apiKey);
if (result.success && result.data) {
// Transform audiences to SelectableItem format
const transformedData = result.data.data.map((audience) => ({
id: audience.id,
name: audience.name,
created_at: audience.created_at,
}));
return {
...result,
data: { data: transformedData },
};
}
return {
success: false,
error: result.error || 'Failed to load audiences',
};
},
formatData: (data) => {
return data.data.map((audience) => ({
id: audience.id,
name: audience.name,
created_at: new Date(audience.created_at).toLocaleString(),
}));
},
displayFields,
loadData: {},
noDataMessage: 'No audiences found.',
onSelect,
});
}
//# sourceMappingURL=useAudienceSelector.js.map