UNPKG

@coveord/plasma-mantine

Version:

A Plasma flavoured Mantine theme

26 lines (25 loc) 1.11 kB
import { jsx as _jsx } from "react/jsx-runtime"; import { useProps } from '@mantine/core'; import { Children, useState } from 'react'; import { InlineConfirmProvider } from './InlineConfirmContext'; import { InlineConfirmPrompt } from './InlineConfirmPrompt'; import { InlineConfirmTarget } from './InlineConfirmTarget'; const defaultProps = {}; export const InlineConfirm = (_props)=>{ const { children } = useProps('InlineConfirm', defaultProps, _props); const [confirmingId, setConfirmingId] = useState(null); const convertedChildren = Children.toArray(children); const prompt = convertedChildren.find((child)=>child.type !== InlineConfirmTarget && child.props?.inlineConfirmId === confirmingId); const clearConfirm = ()=>setConfirmingId(null); return /*#__PURE__*/ _jsx(InlineConfirmProvider, { value: { confirmingId, setConfirmingId, clearConfirm }, children: prompt ?? children }); }; InlineConfirm.Prompt = InlineConfirmPrompt; InlineConfirm.Target = InlineConfirmTarget; //# sourceMappingURL=InlineConfirm.js.map