@nodeject/ui-components
Version:
UI library for non-trivial components
37 lines (36 loc) • 1.61 kB
JavaScript
var __assign = (this && this.__assign) || function () {
__assign = Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}
return t;
};
return __assign.apply(this, arguments);
};
import * as React from 'react';
export var CreateNewItemButton = function (props) {
var className = props.className, listId = props.listId, NewItemButton = props.NewItemButton, refListEnd = props.refListEnd, refListStart = props.refListStart, setNewItemPosition = props.setNewItemPosition, showNewItem = props.showNewItem, toggleShowNewItem = props.toggleShowNewItem;
var position = props.position !== undefined ? props.position : 'start';
var onNewItemClicked = function (position) {
toggleShowNewItem(listId);
setNewItemPosition(position);
var scrollToDiv = refListEnd.current;
var top = true;
if (position === 'start') {
scrollToDiv = refListStart.current;
top = false;
}
setTimeout(function () {
scrollToDiv === null || scrollToDiv === void 0 ? void 0 : scrollToDiv.scrollIntoView(top);
}, 0);
};
var onNewItemClickedStartProps = {
className: className,
isDisabled: showNewItem,
onNewItemClicked: onNewItemClicked,
position: position
};
return React.createElement(NewItemButton, __assign({}, onNewItemClickedStartProps));
};