UNPKG

@nodeject/ui-components

Version:

UI library for non-trivial components

37 lines (36 loc) 1.88 kB
import * as React from 'react'; import { DragDropListsContainer } from '../../hooks'; import { NewItemDefault } from '../../item/components/NewItem'; export var NewItemCardStart = function (props) { return (React.createElement(React.Fragment, null, props.show && React.createElement(NewItemCard, { list: props.list, position: 'start' }), React.createElement("div", { ref: props.btnRef }))); }; export var NewItemCardEnd = function (props) { return (React.createElement(React.Fragment, null, props.show && React.createElement(NewItemCard, { list: props.list, position: 'end' }), React.createElement("div", { ref: props.btnRef }))); }; var NewItemCard = function (_a) { var list = _a.list, position = _a.position; var _b = DragDropListsContainer.useContainer(), components = _b.components, onSaveNewItemClicked = _b.onSaveNewItemClicked, showNewItemListId = _b.showNewItemListId, toggleShowNewItem = _b.toggleShowNewItem; var NewItem = components.NewItem || NewItemDefault; var onSaveNewItem = function (data) { if (onSaveNewItemClicked) { var fakeDataToImprove = { listId: list.id, data: data, index: position === 'start' ? 0 : list.itemIds.length }; // console.log('onSaveNewItem', fakeDataToImprove) onSaveNewItemClicked(fakeDataToImprove); // this allows to keep creating new tasks until users Escapes with kboard or cancels with button. toggleShowNewItem(undefined); toggleShowNewItem(list.id); } }; var onCancelNewItem = function () { toggleShowNewItem(undefined); }; return (list.id === showNewItemListId && (React.createElement(NewItem, { onCancelNewItem: onCancelNewItem, onSaveNewItem: onSaveNewItem }))); };