@nodeject/ui-components
Version:
UI library for non-trivial components
42 lines (41 loc) • 2.09 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.NewItemCardEnd = exports.NewItemCardStart = void 0;
var React = require("react");
var hooks_1 = require("../../hooks");
var NewItem_1 = require("../../item/components/NewItem");
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 })));
};
exports.NewItemCardStart = NewItemCardStart;
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 })));
};
exports.NewItemCardEnd = NewItemCardEnd;
var NewItemCard = function (_a) {
var list = _a.list, position = _a.position;
var _b = hooks_1.DragDropListsContainer.useContainer(), components = _b.components, onSaveNewItemClicked = _b.onSaveNewItemClicked, showNewItemListId = _b.showNewItemListId, toggleShowNewItem = _b.toggleShowNewItem;
var NewItem = components.NewItem || NewItem_1.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 })));
};