UNPKG

@hisptz/react-ui

Version:

A collection of reusable complex DHIS2 react ui components.

45 lines (44 loc) 1.74 kB
import React from "react"; import CustomAccordion from "./components/CustomAccordion"; import DataSource from "./components/DataSource"; export interface DataConfigurationAreaItemProps { id: string; name: string; icon?: React.ReactNode; subLabel?: string; } export interface DataConfigurationAreaGroupProps { id: string; name: string; items: Array<DataConfigurationAreaItemProps>; } export interface DataConfigurationAreaProps { groups: Array<DataConfigurationAreaGroupProps>; onItemClick: (groupId: string, itemId: string) => void; editableTitle?: boolean; onGroupTitleEdit?: (groupId: string, value: string) => void; deletableGroups?: boolean; onGroupDelete?: (groupId: string) => void; deletableItems?: boolean; onItemDelete?: (groupId: string, itemId: string) => void; groupFooter?: (group: DataConfigurationAreaGroupProps, index: number) => React.ReactNode; draggableItems?: boolean; onItemDragEnd?: (groupId: string, result: { source: { index: number; }; destination: { index: number; }; }) => void; selectedItems?: Array<{ groupId: string; itemId: string; }>; titleRightAdornment?: (props: { id: string; }) => React.ReactNode; defaultExpanded?: boolean; } export default function DataConfigurationArea({ groups, onItemClick, editableTitle, onGroupTitleEdit, deletableGroups, onGroupDelete, onItemDelete, deletableItems, groupFooter, draggableItems, onItemDragEnd, selectedItems, titleRightAdornment, defaultExpanded, }: DataConfigurationAreaProps): JSX.Element; export { DataSource as DataConfigurationAreaItem, CustomAccordion as DataConfigurationAreaGroup };