UNPKG

@nodeject/ui-components

Version:

UI library for non-trivial components

37 lines (36 loc) 1.61 kB
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)); };