import React, { useState } from 'react';
import { IonItem, IonLabel, IonIcon, IonModal, IonHeader, IonToolbar, IonTitle, IonButton, IonContent, IonInput, IonLabel as IonInputLabel } from '@ionic/react';
import { trash, add, close } from 'ionicons/icons';
import { InfiniteScrollList, ActionButton } from '../../components/common';
import { useSingers } from '../../hooks';
import { useAppSelector } from '../../redux';
import { selectSingers } from '../../redux';
import type { Singer } from '../../types';
const Singers: React.FC = () => {
const {
singers,
isAdmin,
handleRemoveSinger,
handleAddSinger,
} = useSingers();
const [showAddModal, setShowAddModal] = useState(false);
const [newSingerName, setNewSingerName] = useState('');
const singersData = useAppSelector(selectSingers);
const handleOpenAddModal = () => {
setShowAddModal(true);
setNewSingerName('');
};
const handleCloseAddModal = () => {
setShowAddModal(false);
setNewSingerName('');
};
const handleSubmitAddSinger = async () => {
if (newSingerName.trim()) {
await handleAddSinger(newSingerName);
handleCloseAddModal();
}
};
const singersCount = Object.keys(singersData).length;
// Debug logging
console.log('Singers component - singers count:', singersCount);
console.log('Singers component - singers:', singers);
// Render singer item for InfiniteScrollList
const renderSingerItem = (singer: Singer) => (
{singer.name}