import React from 'react';
import PropTypes from 'prop-types';
import { Components, registerComponent } from 'meteor/vulcan:core';
import mergeWithComponents from '../modules/mergeWithComponents';
const FormNestedItemLayout = ({ content, removeButton }) => (
{content}
{removeButton && [
{removeButton}
,
]}
);
FormNestedItemLayout.propTypes = {
content: PropTypes.node.isRequired,
removeButton: PropTypes.node
};
registerComponent({
name: 'FormNestedItemLayout',
component: FormNestedItemLayout
});
const FormNestedItem = (
{ nestedFields, name, path, removeItem, itemIndex, formComponents, hideRemove, ...props },
{ errors }
) => {
const FormComponents = mergeWithComponents(formComponents);
const isArray = typeof itemIndex !== 'undefined';
return (
{
return (
);
})}
removeButton={
isArray && !hideRemove && [
{
removeItem(name);
}}
>
,
]
}
/>
);
};
FormNestedItem.propTypes = {
path: PropTypes.string.isRequired,
itemIndex: PropTypes.number,
formComponents: PropTypes.object
};
FormNestedItem.contextTypes = {
errors: PropTypes.array
};
registerComponent('FormNestedItem', FormNestedItem);