UNPKG

@progress/kendo-react-buttons

Version:

All you need in React Button in one package: disabled/enabled states, built-in styles and more. KendoReact Buttons package

9 lines (8 loc) 2.04 kB
/** * @license *------------------------------------------------------------------------------------------- * Copyright © 2025 Progress Software Corporation. All rights reserved. * Licensed under commercial license. See LICENSE.md in the package root for more information *------------------------------------------------------------------------------------------- */ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const I=require("react"),n=require("@progress/kendo-react-common");function r(e){const c=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const a in e)if(a!=="default"){const d=Object.getOwnPropertyDescriptor(e,a);Object.defineProperty(c,a,d.get?d:{enumerable:!0,get:()=>e[a]})}}return c.default=e,Object.freeze(c)}const t=r(I),o=e=>{const c=n.useUnstyled(),a=e.unstyled||c,d=a&&a.uDropDownButton,u=t.useCallback(s=>{e.onClick(s,e.index)},[e]),l=e.dataItem.render||e.item||(e.item===void 0?e.render:null),i=e.dataItem.text!==void 0?e.dataItem.text:e.textField?e.dataItem[e.textField]:e.dataItem,m=t.createElement("li",{id:e.id,className:n.classNames(n.uDropDownButton.li({c:d,focused:e.focused}),e.className),tabIndex:-1,onClick:u,onMouseDown:e.onDown,onPointerDown:e.onDown,role:"menuitem","aria-disabled":e.dataItem.disabled||void 0},t.createElement("span",{tabIndex:-1,className:n.classNames(n.uDropDownButton.link({c:d,selected:e.dataItem.selected,disabled:e.dataItem.disabled})),key:"icon"},l?t.createElement(l,{item:e.dataItem,itemIndex:e.index}):t.createElement(t.Fragment,null,(e.dataItem.icon||e.dataItem.iconClass||e.dataItem.svgIcon)&&t.createElement(n.IconWrap,{className:e.dataItem.iconClass,name:e.dataItem.icon,icon:e.dataItem.svgIcon}),e.dataItem.imageUrl&&t.createElement("img",{role:"presentation",alt:"",src:e.dataItem.imageUrl,className:"k-icon"}),i&&t.createElement("span",{className:"k-menu-link-text"},i))));return e.item!==void 0&&e.render!==void 0?e.render.call(void 0,m,e):m};o.displayName="KendoReactButtonItem";exports.ButtonItem=o;