import { useState } from "react"; import { useHasUserPermission, usePermissions } from "../Map/hooks/usePermissions"; import DialogModal from "../Templates/DialogModal"; import { useItems } from "../Map/hooks/useItems"; import { HeaderView } from "../Map/Subcomponents/ItemPopupComponents/HeaderView"; import { Item } from "../../types"; export function ActionButton({ item, triggerAddButton, triggerItemSelected, existingRelations, itemType, color = "#3D3846", collection = "items" }: { triggerAddButton?: any, triggerItemSelected?: any, existingRelations: Item[], itemType?: string; color: string, collection?: string, item: Item }) { const hasUserPermission = useHasUserPermission(); const [modalOpen, setModalOpen] = useState(false); const items = useItems(); const filterdItems = items.filter(i => !itemType || i.layer?.itemType.name == itemType).filter(i => !existingRelations.some(s => s.id == i.id)).filter(i => i.id != item.id) return ( <>{hasUserPermission(collection, "update", item) && <>
{triggerItemSelected && } {triggerAddButton && }
(setModalOpen(false))} className="!tw-max-w-2xl tw-bg-base-200">
{filterdItems.map(i =>
{ triggerItemSelected(i.id); setModalOpen(false) }}>
)}
} ) }