@progress/kendo-react-buttons 6.1.1 → 7.0.0-develop.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/{dist/es/Button.d.ts → Button.d.ts} +5 -1
- package/{dist/npm/ButtonGroup.d.ts → ButtonGroup.d.ts} +5 -1
- package/{dist/es/ButtonGroupInterface.d.ts → ButtonGroupInterface.d.ts} +4 -1
- package/{dist/npm/ButtonInterface.d.ts → ButtonInterface.d.ts} +4 -0
- package/{dist/npm/Chip → Chip}/Chip.d.ts +4 -0
- package/{dist/npm/Chip → Chip}/ChipList.d.ts +4 -12
- package/Chip/chip-list-contexts.d.ts +17 -0
- package/{dist/npm/Chip → Chip}/data-reducer.d.ts +5 -1
- package/{dist/es/Chip → Chip}/focus-reducer.d.ts +5 -2
- package/{dist/npm/Chip → Chip}/selection-reducer.d.ts +5 -1
- package/{dist/npm/FloatingActionButton → FloatingActionButton}/FloatingActionButton.d.ts +4 -0
- package/{dist/es/FloatingActionButton → FloatingActionButton}/FloatingActionButtonItem.d.ts +4 -0
- package/FloatingActionButton/interfaces/FloatingActionButtonHandle.d.ts +17 -0
- package/{dist/es/FloatingActionButton → FloatingActionButton}/interfaces/FloatingActionButtonPopupSettings.d.ts +4 -0
- package/{dist/npm/FloatingActionButton → FloatingActionButton}/interfaces/FloatingActionButtonProps.d.ts +5 -2
- package/{dist/es/FloatingActionButton → FloatingActionButton}/models/align-offset.d.ts +4 -0
- package/{dist/npm/FloatingActionButton → FloatingActionButton}/models/align.d.ts +4 -0
- package/{dist/es/FloatingActionButton → FloatingActionButton}/models/events.d.ts +5 -1
- package/FloatingActionButton/models/position-mode.d.ts +13 -0
- package/FloatingActionButton/models/rounded.d.ts +16 -0
- package/FloatingActionButton/models/size.d.ts +15 -0
- package/{dist/npm/FloatingActionButton → FloatingActionButton}/models/theme-color.d.ts +5 -1
- package/{dist/npm/FloatingActionButton → FloatingActionButton}/utils.d.ts +4 -0
- package/LICENSE.md +1 -1
- package/{dist/es/ListButton → ListButton}/ButtonItem.d.ts +4 -0
- package/{dist/es/ListButton → ListButton}/DropDownButton.d.ts +5 -1
- package/{dist/npm/ListButton → ListButton}/DropDownButtonItem.d.ts +4 -0
- package/{dist/npm/ListButton → ListButton}/SplitButton.d.ts +5 -1
- package/{dist/es/ListButton → ListButton}/SplitButtonItem.d.ts +4 -0
- package/{dist/npm/ListButton → ListButton}/models/ButtonItem.d.ts +4 -0
- package/{dist/npm/ListButton → ListButton}/models/ListButtonProps.d.ts +4 -1
- package/{dist/npm/ListButton → ListButton}/models/PopupSettings.d.ts +4 -0
- package/{dist/npm/ListButton → ListButton}/models/events.d.ts +4 -0
- package/ListButton/utils/navigation.d.ts +9 -0
- package/ListButton/utils/popup.d.ts +13 -0
- package/dist/cdn/js/kendo-react-buttons.js +5 -1
- package/index.d.ts +36 -0
- package/index.js +5 -0
- package/index.mjs +1877 -0
- package/{dist/npm/models → models}/index.d.ts +4 -1
- package/package-metadata.d.ts +9 -0
- package/package.json +28 -42
- package/{dist/es/toolbar → toolbar}/Toolbar.d.ts +5 -1
- package/{dist/es/toolbar → toolbar}/tools/ToolbarItem.d.ts +5 -1
- package/toolbar/tools/ToolbarSeparator.d.ts +20 -0
- package/{dist/es/toolbar → toolbar}/tools/ToolbarSpacer.d.ts +4 -0
- package/{dist/npm/util.d.ts → util.d.ts} +4 -0
- package/about.md +0 -3
- package/dist/es/Button.js +0 -171
- package/dist/es/ButtonGroup.d.ts +0 -32
- package/dist/es/ButtonGroup.js +0 -101
- package/dist/es/ButtonGroupInterface.js +0 -2
- package/dist/es/ButtonInterface.d.ts +0 -35
- package/dist/es/ButtonInterface.js +0 -3
- package/dist/es/Chip/Chip.d.ts +0 -234
- package/dist/es/Chip/Chip.js +0 -173
- package/dist/es/Chip/ChipList.d.ts +0 -123
- package/dist/es/Chip/ChipList.js +0 -177
- package/dist/es/Chip/data-reducer.d.ts +0 -22
- package/dist/es/Chip/data-reducer.js +0 -26
- package/dist/es/Chip/focus-reducer.js +0 -32
- package/dist/es/Chip/selection-reducer.d.ts +0 -30
- package/dist/es/Chip/selection-reducer.js +0 -75
- package/dist/es/FloatingActionButton/FloatingActionButton.d.ts +0 -17
- package/dist/es/FloatingActionButton/FloatingActionButton.js +0 -281
- package/dist/es/FloatingActionButton/FloatingActionButtonItem.js +0 -82
- package/dist/es/FloatingActionButton/interfaces/FloatingActionButtonHandle.d.ts +0 -13
- package/dist/es/FloatingActionButton/interfaces/FloatingActionButtonHandle.js +0 -1
- package/dist/es/FloatingActionButton/interfaces/FloatingActionButtonPopupSettings.js +0 -1
- package/dist/es/FloatingActionButton/interfaces/FloatingActionButtonProps.d.ts +0 -216
- package/dist/es/FloatingActionButton/interfaces/FloatingActionButtonProps.js +0 -1
- package/dist/es/FloatingActionButton/models/align-offset.js +0 -1
- package/dist/es/FloatingActionButton/models/align.d.ts +0 -27
- package/dist/es/FloatingActionButton/models/align.js +0 -1
- package/dist/es/FloatingActionButton/models/events.js +0 -1
- package/dist/es/FloatingActionButton/models/position-mode.d.ts +0 -9
- package/dist/es/FloatingActionButton/models/position-mode.js +0 -1
- package/dist/es/FloatingActionButton/models/rounded.d.ts +0 -12
- package/dist/es/FloatingActionButton/models/rounded.js +0 -1
- package/dist/es/FloatingActionButton/models/size.d.ts +0 -11
- package/dist/es/FloatingActionButton/models/size.js +0 -1
- package/dist/es/FloatingActionButton/models/theme-color.d.ts +0 -18
- package/dist/es/FloatingActionButton/models/theme-color.js +0 -1
- package/dist/es/FloatingActionButton/utils.d.ts +0 -27
- package/dist/es/FloatingActionButton/utils.js +0 -93
- package/dist/es/ListButton/ButtonItem.js +0 -24
- package/dist/es/ListButton/DropDownButton.js +0 -325
- package/dist/es/ListButton/DropDownButtonItem.d.ts +0 -30
- package/dist/es/ListButton/DropDownButtonItem.js +0 -43
- package/dist/es/ListButton/SplitButton.d.ts +0 -120
- package/dist/es/ListButton/SplitButton.js +0 -334
- package/dist/es/ListButton/SplitButtonItem.js +0 -42
- package/dist/es/ListButton/models/ButtonItem.d.ts +0 -34
- package/dist/es/ListButton/models/ButtonItem.js +0 -3
- package/dist/es/ListButton/models/ListButtonProps.d.ts +0 -336
- package/dist/es/ListButton/models/ListButtonProps.js +0 -2
- package/dist/es/ListButton/models/PopupSettings.d.ts +0 -24
- package/dist/es/ListButton/models/PopupSettings.js +0 -1
- package/dist/es/ListButton/models/events.d.ts +0 -47
- package/dist/es/ListButton/models/events.js +0 -1
- package/dist/es/ListButton/utils/navigation.d.ts +0 -5
- package/dist/es/ListButton/utils/navigation.js +0 -29
- package/dist/es/ListButton/utils/popup.d.ts +0 -9
- package/dist/es/ListButton/utils/popup.js +0 -20
- package/dist/es/main.d.ts +0 -32
- package/dist/es/main.js +0 -17
- package/dist/es/models/index.d.ts +0 -89
- package/dist/es/models/index.js +0 -1
- package/dist/es/package-metadata.d.ts +0 -5
- package/dist/es/package-metadata.js +0 -11
- package/dist/es/toolbar/Toolbar.js +0 -214
- package/dist/es/toolbar/tools/ToolbarItem.js +0 -56
- package/dist/es/toolbar/tools/ToolbarSeparator.d.ts +0 -16
- package/dist/es/toolbar/tools/ToolbarSeparator.js +0 -31
- package/dist/es/toolbar/tools/ToolbarSpacer.js +0 -20
- package/dist/es/util.d.ts +0 -27
- package/dist/es/util.js +0 -37
- package/dist/npm/Button.d.ts +0 -138
- package/dist/npm/Button.js +0 -174
- package/dist/npm/ButtonGroup.js +0 -104
- package/dist/npm/ButtonGroupInterface.d.ts +0 -33
- package/dist/npm/ButtonGroupInterface.js +0 -3
- package/dist/npm/ButtonInterface.js +0 -4
- package/dist/npm/Chip/Chip.js +0 -176
- package/dist/npm/Chip/ChipList.js +0 -180
- package/dist/npm/Chip/data-reducer.js +0 -30
- package/dist/npm/Chip/focus-reducer.d.ts +0 -25
- package/dist/npm/Chip/focus-reducer.js +0 -36
- package/dist/npm/Chip/selection-reducer.js +0 -79
- package/dist/npm/FloatingActionButton/FloatingActionButton.js +0 -284
- package/dist/npm/FloatingActionButton/FloatingActionButtonItem.d.ts +0 -105
- package/dist/npm/FloatingActionButton/FloatingActionButtonItem.js +0 -85
- package/dist/npm/FloatingActionButton/interfaces/FloatingActionButtonHandle.d.ts +0 -13
- package/dist/npm/FloatingActionButton/interfaces/FloatingActionButtonHandle.js +0 -2
- package/dist/npm/FloatingActionButton/interfaces/FloatingActionButtonPopupSettings.d.ts +0 -24
- package/dist/npm/FloatingActionButton/interfaces/FloatingActionButtonPopupSettings.js +0 -2
- package/dist/npm/FloatingActionButton/interfaces/FloatingActionButtonProps.js +0 -2
- package/dist/npm/FloatingActionButton/models/align-offset.d.ts +0 -20
- package/dist/npm/FloatingActionButton/models/align-offset.js +0 -2
- package/dist/npm/FloatingActionButton/models/align.js +0 -2
- package/dist/npm/FloatingActionButton/models/events.d.ts +0 -21
- package/dist/npm/FloatingActionButton/models/events.js +0 -2
- package/dist/npm/FloatingActionButton/models/position-mode.d.ts +0 -9
- package/dist/npm/FloatingActionButton/models/position-mode.js +0 -2
- package/dist/npm/FloatingActionButton/models/rounded.d.ts +0 -12
- package/dist/npm/FloatingActionButton/models/rounded.js +0 -2
- package/dist/npm/FloatingActionButton/models/size.d.ts +0 -11
- package/dist/npm/FloatingActionButton/models/size.js +0 -2
- package/dist/npm/FloatingActionButton/models/theme-color.js +0 -2
- package/dist/npm/FloatingActionButton/utils.js +0 -101
- package/dist/npm/ListButton/ButtonItem.d.ts +0 -30
- package/dist/npm/ListButton/ButtonItem.js +0 -28
- package/dist/npm/ListButton/DropDownButton.d.ts +0 -118
- package/dist/npm/ListButton/DropDownButton.js +0 -328
- package/dist/npm/ListButton/DropDownButtonItem.js +0 -46
- package/dist/npm/ListButton/SplitButton.js +0 -337
- package/dist/npm/ListButton/SplitButtonItem.d.ts +0 -25
- package/dist/npm/ListButton/SplitButtonItem.js +0 -45
- package/dist/npm/ListButton/models/ButtonItem.js +0 -4
- package/dist/npm/ListButton/models/ListButtonProps.js +0 -3
- package/dist/npm/ListButton/models/PopupSettings.js +0 -2
- package/dist/npm/ListButton/models/events.js +0 -2
- package/dist/npm/ListButton/utils/navigation.d.ts +0 -5
- package/dist/npm/ListButton/utils/navigation.js +0 -32
- package/dist/npm/ListButton/utils/popup.d.ts +0 -9
- package/dist/npm/ListButton/utils/popup.js +0 -25
- package/dist/npm/main.d.ts +0 -32
- package/dist/npm/main.js +0 -48
- package/dist/npm/models/index.js +0 -2
- package/dist/npm/package-metadata.d.ts +0 -5
- package/dist/npm/package-metadata.js +0 -14
- package/dist/npm/toolbar/Toolbar.d.ts +0 -171
- package/dist/npm/toolbar/Toolbar.js +0 -217
- package/dist/npm/toolbar/tools/ToolbarItem.d.ts +0 -38
- package/dist/npm/toolbar/tools/ToolbarItem.js +0 -59
- package/dist/npm/toolbar/tools/ToolbarSeparator.d.ts +0 -16
- package/dist/npm/toolbar/tools/ToolbarSeparator.js +0 -34
- package/dist/npm/toolbar/tools/ToolbarSpacer.d.ts +0 -23
- package/dist/npm/toolbar/tools/ToolbarSpacer.js +0 -23
- package/dist/npm/util.js +0 -40
- package/dist/systemjs/kendo-react-buttons.js +0 -1
- package/e2e-next/button.basic.tests.ts +0 -24
- package/e2e-next/buttongroup.basic.tests.ts +0 -24
- package/e2e-next/chip.basic.tests.ts +0 -24
- package/e2e-next/chiplist.basic.tests.ts +0 -24
- package/e2e-next/dropdownbutton.basic.tests.ts +0 -24
- package/e2e-next/floatingactionbutton.basic.tests.ts +0 -24
- package/e2e-next/splitbutton.basic.tests.ts +0 -24
- package/e2e-next/toolbar.basic.tests.ts +0 -24
package/index.d.ts
ADDED
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**-----------------------------------------------------------------------------------------
|
|
2
|
+
* Copyright © 2023 Progress Software Corporation. All rights reserved.
|
|
3
|
+
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
4
|
+
*-------------------------------------------------------------------------------------------*/
|
|
5
|
+
import { Button, type ButtonProps } from './Button';
|
|
6
|
+
import { ButtonGroup, type ButtonGroupProps } from './ButtonGroup';
|
|
7
|
+
import { SplitButton } from './ListButton/SplitButton';
|
|
8
|
+
import { SplitButtonItem, type SplitButtonItemProps } from './ListButton/SplitButtonItem';
|
|
9
|
+
import { DropDownButton } from './ListButton/DropDownButton';
|
|
10
|
+
import { DropDownButtonItem, type DropDownButtonItemProps } from './ListButton/DropDownButtonItem';
|
|
11
|
+
import type { DropDownButtonProps } from './ListButton/models/ListButtonProps';
|
|
12
|
+
import type { SplitButtonFocusEvent, SplitButtonBlurEvent, SplitButtonClickEvent, SplitButtonOpenEvent, SplitButtonCloseEvent, SplitButtonItemClickEvent, DropDownButtonFocusEvent, DropDownButtonBlurEvent, DropDownButtonOpenEvent, DropDownButtonCloseEvent, DropDownButtonItemClickEvent } from './ListButton/models/events';
|
|
13
|
+
import type { ButtonItem } from './ListButton/models/ButtonItem';
|
|
14
|
+
import type { ButtonItemProps } from './ListButton/ButtonItem';
|
|
15
|
+
import type { ButtonsPopupSettings } from './ListButton/models/PopupSettings';
|
|
16
|
+
import { Toolbar, type ToolbarProps, type ToolbarResizeEvent } from './toolbar/Toolbar';
|
|
17
|
+
import { ToolbarItem, type ToolbarItemProps } from './toolbar/tools/ToolbarItem';
|
|
18
|
+
import { ToolbarSeparator } from './toolbar/tools/ToolbarSeparator';
|
|
19
|
+
import { ToolbarSpacer, type ToolbarSpacerProps } from './toolbar/tools/ToolbarSpacer';
|
|
20
|
+
import { toolbarButtons } from './util';
|
|
21
|
+
import { Chip, type ChipProps, type ChipHandle, type ChipAvatarProps } from './Chip/Chip';
|
|
22
|
+
import { ChipList, type ChipListProps, type ChipListHandle } from './Chip/ChipList';
|
|
23
|
+
import type { ChipRemoveEvent, ChipMouseEvent, ChipKeyboardEvent, ChipFocusEvent, ChipListChangeEvent, ChipListDataChangeEvent } from './models/index';
|
|
24
|
+
import { FloatingActionButton } from './FloatingActionButton/FloatingActionButton';
|
|
25
|
+
import type { FloatingActionButtonHandle } from './FloatingActionButton/interfaces/FloatingActionButtonHandle';
|
|
26
|
+
import type { FloatingActionButtonProps } from './FloatingActionButton/interfaces/FloatingActionButtonProps';
|
|
27
|
+
import { FloatingActionButtonItem, type FloatingActionButtonItemHandle, type FloatingActionButtonItemProps } from './FloatingActionButton/FloatingActionButtonItem';
|
|
28
|
+
import { type FloatingActionButtonPopupSettings } from './FloatingActionButton/interfaces/FloatingActionButtonPopupSettings';
|
|
29
|
+
import type { FloatingActionButtonAlign } from './FloatingActionButton/models/align';
|
|
30
|
+
import type { FloatingActionButtonAlignOffset } from './FloatingActionButton/models/align-offset';
|
|
31
|
+
import type { FloatingActionButtonPositionMode } from './FloatingActionButton/models/position-mode';
|
|
32
|
+
import type { FloatingActionButtonSize } from './FloatingActionButton/models/size';
|
|
33
|
+
import type { FloatingActionButtonRounded } from './FloatingActionButton/models/rounded';
|
|
34
|
+
import type { FloatingActionButtonThemeColor } from './FloatingActionButton/models/theme-color';
|
|
35
|
+
export * from './FloatingActionButton/models/events';
|
|
36
|
+
export { Toolbar, ToolbarProps, ToolbarItem, ToolbarItemProps, ToolbarSeparator, ToolbarResizeEvent, ToolbarSpacer, ToolbarSpacerProps, toolbarButtons, Button, ButtonProps, ButtonGroup, ButtonGroupProps, SplitButton, SplitButtonItem, SplitButtonItemProps, DropDownButton, DropDownButtonProps, DropDownButtonItem, DropDownButtonItemProps, ButtonItem, ButtonItemProps, SplitButtonFocusEvent, SplitButtonBlurEvent, SplitButtonClickEvent, SplitButtonOpenEvent, SplitButtonCloseEvent, SplitButtonItemClickEvent, DropDownButtonFocusEvent, DropDownButtonBlurEvent, DropDownButtonOpenEvent, DropDownButtonCloseEvent, DropDownButtonItemClickEvent, ButtonsPopupSettings, Chip, ChipProps, ChipHandle, ChipAvatarProps, ChipRemoveEvent, ChipMouseEvent, ChipKeyboardEvent, ChipFocusEvent, ChipList, ChipListProps, ChipListHandle, ChipListDataChangeEvent, ChipListChangeEvent, FloatingActionButton, FloatingActionButtonProps, FloatingActionButtonHandle, FloatingActionButtonItem, FloatingActionButtonItemHandle, FloatingActionButtonItemProps, FloatingActionButtonPopupSettings, FloatingActionButtonAlign, FloatingActionButtonAlignOffset, FloatingActionButtonPositionMode, FloatingActionButtonSize, FloatingActionButtonRounded, FloatingActionButtonThemeColor };
|
package/index.js
ADDED
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/**-----------------------------------------------------------------------------------------
|
|
2
|
+
* Copyright © 2023 Progress Software Corporation. All rights reserved.
|
|
3
|
+
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
4
|
+
*-------------------------------------------------------------------------------------------*/
|
|
5
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const le=require("react"),et=require("prop-types"),i=require("@progress/kendo-react-common"),ge=require("@progress/kendo-react-popup"),Se=require("@progress/kendo-svg-icons");function Fe(e){const o=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const t in e)if(t!=="default"){const a=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(o,t,a.get?a:{enumerable:!0,get:()=>e[t]})}}return o.default=e,Object.freeze(o)}const n=Fe(le),s=Fe(et),z={name:"@progress/kendo-react-buttons",productName:"KendoReact",productCodes:["KENDOUIREACT","KENDOUICOMPLETE"],publishDate:0,version:"",licensingDocsUrl:"https://www.telerik.com/kendo-react-ui/components/my-license/"};function tt({imageUrl:e,name:o,iconClass:t,svgIcon:a,imageAlt:l}){return e?n.createElement("img",{role:"presentation",className:"k-button-icon",alt:l,src:e}):o||a?n.createElement(i.IconWrap,{className:"k-button-icon",name:o,icon:a}):t?n.createElement("span",{role:"presentation",className:i.classNames("k-button-icon",t)}):null}const G=class extends n.Component{constructor(e){super(e),this._element=null,this.handleClick=o=>{this.toggleIfApplicable(),this.props.onClick&&this.props.onClick.call(void 0,o)},i.validatePackage(z),this.state={selected:this.props.togglable===!0&&this.props.selected===!0}}get element(){return this._element}get selected(){return this._selectedTemp!==void 0?this._selectedTemp:this.state.selected}static getDerivedStateFromProps(e,o){return e.togglable&&e.selected!==void 0&&e.selected!==o.selected?{selected:e.selected}:null}render(){const{children:e,togglable:o,icon:t,iconClass:a,svgIcon:l,imageUrl:r,imageAlt:d,className:c,onClick:f,size:v=G.defaultProps.size,rounded:u=G.defaultProps.rounded,fillMode:I=G.defaultProps.fillMode,themeColor:E=G.defaultProps.themeColor,...x}=this.props,w=l!==void 0||t!==void 0||a!==void 0||r!==void 0,D=e!==void 0,N=tt({name:t,svgIcon:l,iconClass:a,imageUrl:r,imageAlt:d});return n.createElement("button",{ref:g=>this._element=g,"aria-pressed":o?this.state.selected:void 0,...x,onClick:this.handleClick,className:i.classNames("k-button",{[`k-button-${i.kendoThemeMaps.sizeMap[v]||v}`]:v,[`k-button-${I}`]:I,[`k-button-${I}-${E}`]:!!(I&&E),[`k-rounded-${i.kendoThemeMaps.roundedMap[u]||u}`]:u,"k-icon-button":!D&&w,"k-disabled":this.props.disabled,"k-selected":this.state.selected,"k-rtl":this.props.dir==="rtl"},this.props.className)},N,e&&n.createElement("span",{className:"k-button-text"},e))}toggleIfApplicable(){if(this.props.togglable&&this.props.selected===void 0){const e=!this.state.selected;this._selectedTemp=e,this.setState({selected:e},()=>this._selectedTemp=void 0)}}};let W=G;W.propTypes={children:s.node,selected:s.bool,togglable:s.bool,icon:s.string,svgIcon:i.svgIconPropType,iconClass:s.string,imageUrl:s.string,imageAlt:s.string,size:s.oneOf([null,"small","medium","large"]),rounded:s.oneOf([null,"small","medium","large","full"]),fillMode:s.oneOf([null,"flat","link","outline","solid"]),themeColor:s.oneOf([null,"base","primary","secondary","tertiary","info","success","warning","error","dark","light","inverse"])};W.defaultProps={togglable:!1,size:"medium",rounded:"medium",fillMode:"solid",themeColor:"base"};const st={button:"k-button",flat:"k-flat",outline:"k-outline",clear:"k-button-clear",primary:"k-primary","state-selected":"k-selected","button-icon":"k-button-icon","button-icontext":"k-button-icontext","state-disabled":"k-disabled","group-start":"k-group-start","group-end":"k-group-end","button-group":"k-button-group","button-group-stretched":"k-button-group-stretched",ltr:"k-ltr",rtl:"k-rtl"},Ke=":not(.k-dropdownlist button):not(.k-colorpicker button):not(.k-split-button .k-split-button-arrow)",ze=["button"+Ke,".k-button-group > button"+Ke,".k-colorpicker",".k-dropdownlist"],nt={styles:st},oe=nt.styles;class Me extends n.Component{constructor(o){super(o),this._element=null,i.validatePackage(z)}render(){const o=this.mapButtons(this.props.children),t=i.classNames([oe["button-group"]],{["k-disabled"]:this.props.disabled,[oe["button-group-stretched"]]:!!this.props.width},this.props.className),a={className:t,style:{width:`${this.props.width}`},dir:this.props.dir,role:"group","aria-disabled":this.props.disabled};return n.createElement("div",{ref:l=>{this._element=l},...a,className:t},o)}mapButtons(o){const t=n.Children.count(o),a=this.props.dir!==void 0?this.props.dir==="rtl":this._element&&getComputedStyle(this._element).direction==="rtl"||!1;return n.Children.map(o,(l,r)=>n.isValidElement(l)?this.renderButton(l,r,r===t-1,a):l)}renderButton(o,t,a,l){const r=i.classNames(o.props.className,{[oe["group-start"]]:l?a:t===0,[oe["group-end"]]:l?t===0:a}),d={...this.props.width?{width:this.props.width}:{},...o.props.style||{}},c=this.props.disabled||o.props.disabled,f={...o.props,...r?{className:r}:{},...Object.keys(d).length?{style:d}:{},...c!==void 0?{disabled:c}:{}};return n.Children.count(o.props.children)>0?n.cloneElement(o,f,o.props.children):n.cloneElement(o,f)}}Me.propTypes={children:s.oneOfType([s.arrayOf(s.element),s.element]),className:s.string,disabled:s.bool,width:s.string,dir:s.string};const ye=e=>{const o=n.useCallback(r=>{e.onClick(r,e.index)},[e]),t=e.dataItem.render||e.item||(e.item===void 0?e.render:null),a=e.dataItem.text!==void 0?e.dataItem.text:e.textField?e.dataItem[e.textField]:e.dataItem,l=n.createElement("li",{id:e.id,className:i.classNames("k-item",e.className,{"k-focus":e.focused}),tabIndex:-1,onClick:o,onMouseDown:e.onDown,onPointerDown:e.onDown,role:"menuitem","aria-disabled":e.dataItem.disabled||void 0},n.createElement("span",{tabIndex:-1,className:i.classNames("k-link k-menu-link",{"k-selected":e.dataItem.selected,"k-disabled":e.dataItem.disabled}),key:"icon"},t?n.createElement(t,{item:e.dataItem,itemIndex:e.index}):n.createElement(n.Fragment,null,(e.dataItem.icon||e.dataItem.iconClass)&&n.createElement(i.IconWrap,{className:e.dataItem.iconClass,name:e.dataItem.icon,icon:e.dataItem.svgIcon}),e.dataItem.imageUrl&&n.createElement("img",{role:"presentation",alt:"",src:e.dataItem.imageUrl,className:"k-icon"}),a&&n.createElement("span",{className:"k-menu-link-text"},a))));return e.item!==void 0&&e.render!==void 0?e.render.call(void 0,l,e):l};ye.displayName="KendoReactButtonItem";class ke extends n.Component{render(){return null}}ke.propTypes={text:s.string,icon:s.string,iconClass:s.string,imageUrl:s.string,disabled:s.bool,render:s.any};const Be=(e,o,t,a)=>{if(t)return e;const l=Math.min(a-1,Math.max(0,e));switch(o){case i.Keys.enter:case i.Keys.space:case i.Keys.esc:return-1;case i.Keys.up:case i.Keys.left:return l-1<0?a-1:l-1;case i.Keys.down:case i.Keys.right:return l+1>=a?0:l+1;case i.Keys.home:return 0;case i.Keys.end:return a-1;default:return e}};function Te(e){let o={horizontal:"left",vertical:"bottom"};return e&&(o.horizontal="right"),o}function Re(e){let o={horizontal:"left",vertical:"top"};return e&&(o.horizontal="right"),o}class ve extends n.Component{constructor(o){super(o),this.state={focused:!1,focusedIndex:-1,opened:!1},this.wrapper=null,this.mainButton=null,this.list=null,this.guid=i.guid(),this.skipFocus=!1,this.buttonsData=[],this.onKeyDown=t=>{const{focusedIndex:a}=this.state;if(t.altKey){!this.opened&&t.keyCode===i.Keys.down?(this.dispatchPopupEvent(t,!0),this.setState({focusedIndex:0}),this.setOpen(!0)):this.opened&&t.keyCode===i.Keys.up&&(this.setState({focusedIndex:-1}),this.setOpen(!1));return}let l;if(t.keyCode===i.Keys.enter||t.keyCode===i.Keys.space){if(t.preventDefault(),this.dispatchClickEvent(t,a),a>=0){l={focusedIndex:this.opened?-1:0};const r=!this.opened;this.setOpen(r),r&&this.dispatchPopupEvent(t,r)}}else if(this.opened&&t.keyCode===i.Keys.esc){this.setState({focusedIndex:-1}),this.setOpen(!1);return}if(this.opened){const r=Be(a,t.keyCode,t.altKey,this.buttonsData.length);r!==a&&(l=l||{},l.focusedIndex=r);const d=t.keyCode===i.Keys.up||t.keyCode===i.Keys.down||t.keyCode===i.Keys.left||t.keyCode===i.Keys.right;!t.altKey&&(d||t.keyCode===i.Keys.home||t.keyCode===i.Keys.end)&&t.preventDefault()}l&&this.setState(l)},this.switchFocus=t=>{this.skipFocus=!0,t(),window.setTimeout(()=>this.skipFocus=!1,0)},this.onFocus=t=>{this.skipFocus||(i.dispatchEvent(this.props.onFocus,t,this,void 0),this.setState({focused:!0}))},this.setOpen=t=>{this.openedDuringOnChange=t,this.setState({opened:t})},this.onItemClick=(t,a)=>{this.opened&&(this.setState({focusedIndex:0}),this.setOpen(!1)),this.dispatchClickEvent(t,a)},this.onBlur=t=>{this.skipFocus||(this.setState({focused:!1,focusedIndex:-1}),this.setOpen(!1),i.dispatchEvent(this.props.onBlur,t,this,void 0))},this.onPopupClose=()=>{this.state.focused&&this.switchFocus(()=>{this.element&&(this.element.removeAttribute("tabindex"),this.element.focus({preventScroll:!0}))}),this.dispatchPopupEvent({},!1)},this.listRef=t=>{this.list=t,t&&this.state.focused&&this.switchFocus(()=>{t.focus({preventScroll:!0}),this.element&&(this.element.tabIndex=-1)})},this.onSplitPartClick=t=>{if(this.buttonsData.length){const a=!this.opened;a&&this.dispatchPopupEvent(t,a),this.setState({focusedIndex:a?0:-1,focused:!0}),this.setOpen(a)}},this.onDownSplitPart=t=>{t.preventDefault();const a=i.getActiveElement(document);this.element&&a!==this.element&&a!==this.list&&this.element.focus()},this.onItemDown=t=>{i.getActiveElement(document)===this.list&&t.preventDefault()},this.dispatchPopupEvent=(t,a)=>{i.dispatchEvent(a?this.props.onOpen:this.props.onClose,t,this,void 0),this.openedDuringOnChange=void 0},i.validatePackage(z)}get opened(){return this.openedDuringOnChange!==void 0?this.openedDuringOnChange:this.props.opened===void 0?this.state.opened:this.props.opened}render(){this.buttonsData=this.props.items||n.Children.toArray(this.props.children).filter(c=>c&&c.type===ke).map(c=>c.props);const o=this.isRtl(),t=o?"rtl":void 0,{id:a,style:l,tabIndex:r,disabled:d}=this.props;return n.createElement("div",{id:a,style:l,className:i.classNames("k-split-button","k-button-group",{"k-focus":this.state.focused},`k-rounded-${i.kendoThemeMaps.roundedMap[this.props.rounded||"medium"]}`,this.props.className),onKeyDown:this.onKeyDown,onFocus:this.onFocus,onBlur:this.onBlur,dir:t,ref:c=>this.wrapper=c},n.createElement(W,{ref:c=>this.mainButton=c&&c.element,type:"button",size:this.props.size,rounded:this.props.rounded,fillMode:this.props.fillMode,themeColor:this.props.themeColor,onClick:c=>this.onItemClick(c,-1),disabled:d||void 0,tabIndex:r,accessKey:this.props.accessKey,className:this.props.buttonClass,icon:this.props.icon,svgIcon:this.props.svgIcon,iconClass:this.props.iconClass,imageUrl:this.props.imageUrl,dir:t,"aria-disabled":d,"aria-haspopup":!0,"aria-expanded":this.opened||void 0,"aria-label":this.props.ariaLabel,"aria-controls":this.opened?this.guid:void 0,id:"button-"+this.guid,title:this.props.title},this.props.text),n.createElement(W,{type:"button",size:this.props.size,rounded:this.props.rounded,fillMode:this.props.fillMode,themeColor:this.props.themeColor,icon:"caret-alt-down",svgIcon:Se.caretAltDownIcon,className:"k-split-button-arrow",disabled:d||void 0,tabIndex:-1,onClick:this.onSplitPartClick,onMouseDown:this.onDownSplitPart,onPointerDown:this.onDownSplitPart,dir:t,"aria-label":"menu toggling button"}),this.renderPopup(o))}componentDidMount(){(this.props.dir===void 0&&this.isRtl()||this.opened)&&this.forceUpdate()}get element(){return this.mainButton}dispatchClickEvent(o,t){this.isItemDisabled(t)||(t===-1?i.dispatchEvent(this.props.onButtonClick,o,this,void 0):i.dispatchEvent(this.props.onItemClick,o,this,{item:this.buttonsData[t],itemIndex:t}))}renderPopup(o){const{popupSettings:t={}}=this.props,{focusedIndex:a}=this.state;return n.createElement(ge.Popup,{anchor:this.wrapper,show:this.opened,animate:t.animate,popupClass:i.classNames("k-menu-popup",t.popupClass),anchorAlign:t.anchorAlign||Te(o),popupAlign:t.popupAlign||Re(o),style:o?{direction:"rtl"}:void 0,onClose:this.onPopupClose},n.createElement("ul",{role:"menu",id:this.guid,"aria-labelledby":"button-"+this.guid,tabIndex:-1,ref:this.listRef,"aria-activedescendant":a>=0?`${this.guid}-${a}`:void 0,className:i.classNames("k-group k-menu-group k-reset",{[`k-menu-group-${i.kendoThemeMaps.sizeMap[this.props.size]||this.props.size}`]:this.props.size})},this.renderChildItems()))}renderChildItems(){const{item:o,itemRender:t,textField:a}=this.props;return this.buttonsData.length>0?this.buttonsData.map((l,r)=>n.createElement(ye,{className:"k-menu-item",dataItem:l,textField:a,focused:this.state.focusedIndex===r,onClick:this.onItemClick,onDown:this.onItemDown,render:t,item:o,key:r,index:r,id:`${this.guid}-${r}`})):null}isItemDisabled(o){return this.buttonsData[o]?this.buttonsData[o].disabled:this.props.disabled}isRtl(){return this.props.dir!==void 0?this.props.dir==="rtl":!!this.wrapper&&getComputedStyle(this.wrapper).direction==="rtl"}}ve.propTypes={accessKey:s.string,ariaLabel:s.string,title:s.string,onButtonClick:s.func,onFocus:s.func,onBlur:s.func,onItemClick:s.func,onOpen:s.func,onClose:s.func,text:s.string,items:s.arrayOf(s.any),textField:s.string,tabIndex:s.number,disabled:s.bool,icon:s.string,svgIcon:i.svgIconPropType,iconClass:s.string,imageUrl:s.string,popupSettings:s.object,itemRender:s.any,item:s.func,className:s.string,buttonClass:s.string,dir:s.string};ve.defaultProps={size:"medium",rounded:"medium",fillMode:"solid",themeColor:"base"};class Ce extends n.Component{render(){return null}}Ce.propTypes={text:s.string,icon:s.string,iconClass:s.string,imageUrl:s.string,selected:s.bool,disabled:s.bool,render:s.any};class Ie extends n.Component{constructor(o){super(o),this.state={opened:!1,focused:!1,focusedIndex:-1},this.wrapper=null,this.mainButton=null,this.list=null,this.skipFocus=!1,this.guid=i.guid(),this.buttonsData=[],this.onKeyDown=t=>{const{focusedIndex:a}=this.state;if(t.altKey){!this.opened&&t.keyCode===i.Keys.down?(this.setOpen(!0),this.dispatchPopupEvent(t,!0),this.setState({focusedIndex:0})):this.opened&&t.keyCode===i.Keys.up&&(this.setState({focusedIndex:-1}),this.setOpen(!1));return}const l={...this.state};if(t.keyCode===i.Keys.enter||t.keyCode===i.Keys.space){a>=0&&this.dispatchClickEvent(t,a),t.preventDefault();const r=!this.opened;this.setOpen(r),r&&(this.dispatchPopupEvent(t,!0),this.setState({focusedIndex:this.opened?-1:0}));return}else if(this.opened&&t.keyCode===i.Keys.esc){this.setState({focusedIndex:-1}),this.setOpen(!1);return}if(this.opened){const r=Be(a,t.keyCode,t.altKey,this.buttonsData.length);l.focusedIndex=r;const d=t.keyCode===i.Keys.up||t.keyCode===i.Keys.down||t.keyCode===i.Keys.left||t.keyCode===i.Keys.right;!t.altKey&&(d||t.keyCode===i.Keys.home||t.keyCode===i.Keys.end)&&t.preventDefault()}this.setState(l)},this.switchFocus=t=>{this.skipFocus=!0,t(),window.setTimeout(()=>this.skipFocus=!1,0)},this.handleFocus=t=>{this.skipFocus||(this.setState({focused:!0,focusedIndex:this.opened?0:-1}),i.dispatchEvent(this.props.onFocus,t,this,void 0))},this.handleBlur=t=>{this.skipFocus||(this.setState({focused:!1,focusedIndex:-1}),this.setOpen(!1),i.dispatchEvent(this.props.onBlur,t,this,void 0))},this.setOpen=t=>{this.openedDuringOnChange=t,this.setState({opened:t})},this.onItemClick=(t,a)=>{this.setState({focusedIndex:-1}),this.setOpen(!1),this.dispatchClickEvent(t,a)},this.onItemDown=t=>{i.getActiveElement(document)===this.list&&t.preventDefault()},this.mouseDown=t=>{t.preventDefault();const a=i.getActiveElement(document);this.element&&a!==this.element&&a!==this.list&&this.element.focus()},this.onPopupClose=()=>{this.state.focused&&this.switchFocus(()=>{this.element&&(this.element.removeAttribute("tabindex"),this.element.focus({preventScroll:!0}))}),this.dispatchPopupEvent({},!1)},this.listRef=t=>{this.list=t,t&&this.state.focused&&this.switchFocus(()=>{t.focus({preventScroll:!0}),this.element&&(this.element.tabIndex=-1)})},this.onClickMainButton=t=>{if(!this.buttonsData.length)return;const a=!this.opened;this.setState({focused:!0,focusedIndex:a?0:-1}),this.setOpen(a),a&&this.dispatchPopupEvent(t,a)},this.dispatchPopupEvent=(t,a)=>{i.dispatchEvent(a?this.props.onOpen:this.props.onClose,t,this,void 0),this.openedDuringOnChange=void 0},i.validatePackage(z)}get opened(){return this.openedDuringOnChange!==void 0?this.openedDuringOnChange:this.props.opened===void 0?this.state.opened:this.props.opened}render(){const o=this.isRtl(),t=o?"rtl":void 0,{id:a,style:l,tabIndex:r,disabled:d}=this.props;return this.buttonsData=this.props.items||n.Children.toArray(this.props.children).filter(c=>c&&c.type===Ce).map(c=>c.props),n.createElement("div",{id:a,style:l,className:i.classNames("k-dropdown-button",{"k-focus":this.state.focused},this.props.className),onKeyDown:this.onKeyDown,onFocus:this.handleFocus,onBlur:this.handleBlur,dir:t,ref:c=>this.wrapper=c},n.createElement(W,{size:this.props.size,rounded:this.props.rounded,fillMode:this.props.fillMode,themeColor:this.props.themeColor,onClick:this.onClickMainButton,onMouseDown:this.mouseDown,disabled:d||void 0,tabIndex:r,accessKey:this.props.accessKey,icon:this.props.icon,svgIcon:this.props.svgIcon,iconClass:this.props.iconClass,className:this.props.buttonClass,imageUrl:this.props.imageUrl,dir:t,ref:c=>this.mainButton=c&&c.element,type:"button","aria-haspopup":!0,"aria-expanded":this.opened||void 0,"aria-label":this.props.ariaLabel,"aria-controls":this.opened?this.guid:void 0,id:"button-"+this.guid,title:this.props.title},this.props.text),this.renderPopup(o))}componentDidMount(){(this.props.dir===void 0&&this.isRtl()||this.opened)&&this.forceUpdate()}get element(){return this.mainButton}dispatchClickEvent(o,t){this.isItemDisabled(t)||i.dispatchEvent(this.props.onItemClick,o,this,{item:this.buttonsData[t],itemIndex:t})}renderPopup(o){const{popupSettings:t={}}=this.props,{focusedIndex:a}=this.state;return n.createElement(ge.Popup,{anchor:this.wrapper,show:this.opened,animate:t.animate,popupClass:i.classNames("k-menu-popup",t.popupClass),anchorAlign:t.anchorAlign||Te(o),popupAlign:t.popupAlign||Re(o),style:o?{direction:"rtl"}:void 0,onClose:this.onPopupClose},n.createElement("ul",{role:"menu",id:this.guid,"aria-labelledby":"button-"+this.guid,tabIndex:-1,"aria-activedescendant":a>=0?`${this.guid}-${a}`:void 0,ref:this.listRef,className:i.classNames("k-group k-menu-group k-reset",{[`k-menu-group-${i.kendoThemeMaps.sizeMap[this.props.size]||this.props.size}`]:this.props.size})},this.renderChildItems()))}renderChildItems(){const{item:o,itemRender:t,textField:a}=this.props;return this.buttonsData.length>0?this.buttonsData.map((l,r)=>n.createElement(ye,{className:"k-menu-item",dataItem:l,textField:a,focused:this.state.focusedIndex===r,onClick:this.onItemClick,onDown:this.onItemDown,render:t,item:o,index:r,key:r,id:`${this.guid}-${r}`})):null}isItemDisabled(o){return this.buttonsData[o]?this.buttonsData[o].disabled:this.props.disabled}isRtl(){return this.props.dir!==void 0?this.props.dir==="rtl":!!this.wrapper&&getComputedStyle(this.wrapper).direction==="rtl"}}Ie.propTypes={accessKey:s.string,ariaLabel:s.string,title:s.string,onFocus:s.func,onBlur:s.func,onItemClick:s.func,onOpen:s.func,onClose:s.func,items:s.arrayOf(s.any),textField:s.string,tabIndex:s.number,disabled:s.bool,icon:s.string,svgIcon:i.svgIconPropType,iconClass:s.string,imageUrl:s.string,popupSettings:s.object,itemRender:s.func,item:s.func,className:s.string,buttonClass:s.string,dir:s.string};Ie.defaultProps={size:"medium",rounded:"medium",fillMode:"solid",themeColor:"base"};const be=class extends n.Component{constructor(e){super(e),this._element=null,this.offsetHeight=0,this.offsetWidth=0,this.buttons=[],this.focusedSelector=this.selectors.map(o=>o+":focus").join(","),this.setTabIndex=o=>{const{tabIndex:t=be.defaultProps.tabIndex}=this.props;this.buttons.forEach((a,l)=>{a.tabIndex=l===o?t:-1})},this.onKeyDown=o=>{const t=o.target;if(!(o.keyCode===i.Keys.left||o.keyCode===i.Keys.right)||o.defaultPrevented||this.buttons.findIndex(r=>r===t)===-1)return;const l=this.focusedIndex;o.keyCode===i.Keys.left?this.focusButton(l,l-1):this.focusButton(l,l+1)},this.onWindowResize=o=>{const t=this.element;if(!t)return;const a=t.offsetWidth,l=t.offsetHeight;if(this.offsetWidth!==a||this.offsetHeight!==l){this.offsetWidth=a,this.offsetHeight=l;const r={offsetWidth:this.offsetWidth,offsetHeight:this.offsetHeight};this.props.onResize&&this.props.onResize.call(void 0,{target:this,...r,nativeEvent:o})}},i.validatePackage(z)}get selectors(){return this.props.buttons||ze}get focusedIndex(){const e=this.element&&this.element.querySelector(this.focusedSelector);return Math.max(0,this.buttons.findIndex(o=>o===e))}get element(){return this._element}componentDidMount(){window.addEventListener("resize",this.onWindowResize);const e=this.element;e&&(this.offsetWidth=e.offsetWidth,this.offsetHeight=e.offsetHeight,this.props.keyboardNavigation!==!1&&(this.buttons=Array.from(e.querySelectorAll(this.selectors.join(","))),this.setTabIndex(0)))}componentDidUpdate(){const e=this.element;!e||this.props.keyboardNavigation===!1||(this.buttons=Array.from(e.querySelectorAll(this.selectors.join(","))),this.setTabIndex(this.focusedIndex))}componentWillUnmount(){window.removeEventListener("resize",this.onWindowResize),this.buttons.length=0}render(){return n.createElement("div",{id:this.props.id,"aria-label":this.props.ariaLabel,className:i.classNames("k-toolbar",{[`k-toolbar-${i.kendoThemeMaps.sizeMap[this.props.size]||this.props.size}`]:this.props.size},this.props.className),style:this.props.style,role:this.props.role!==void 0?this.props.role||void 0:"toolbar",dir:this.props.dir,ref:e=>this._element=e,onKeyDown:this.props.keyboardNavigation!==!1?this.onKeyDown:void 0},this.props.children)}focusButton(e,o){const{tabIndex:t=be.defaultProps.tabIndex}=this.props,a=this.buttons[o];if(a){a.tabIndex=t,a.focus();const l=this.buttons[e];l&&(l.tabIndex=-1)}}};let xe=be;xe.propTypes={tabIndex:s.number,dir:s.string,keyboardNavigation:s.bool,style:s.object,className:s.string,role:s.string,onResize:s.func,buttons:s.arrayOf(s.string),size:s.oneOf([null,"small","medium","large"])};xe.defaultProps={tabIndex:0,size:"medium"};class Oe extends n.PureComponent{constructor(){super(...arguments),this._element=null}get element(){return this._element}render(){return n.createElement("div",{id:this.props.id,className:i.classNames("k-toolbar-item",this.props.className),style:this.props.style,ref:o=>this._element=o},this.props.children)}}Oe.propTypes={className:s.string};class ot extends n.PureComponent{render(){return n.createElement("div",{className:i.classNames("k-separator",this.props.className)})}}const De=n.forwardRef((e,o)=>{const t=n.useRef(null),a=n.useRef(null);n.useImperativeHandle(a,()=>({element:t.current})),n.useImperativeHandle(o,()=>({element:t.current}));const l=n.useMemo(()=>i.classNames("k-spacer",e.className),[e.className]);return n.createElement("span",{ref:t,className:l})});De.displayName="KendoReactToolbarSpacer";De.propTypes={className:s.string};const Ae=le.createContext([null,e=>{}]),$e=le.createContext([null,e=>{}]),_e=le.createContext([null,e=>{}]);var X=(e=>(e.next="next",e.prev="prev",e.current="current",e.reset="reset",e))(X||{});const it=(e,o)=>{const t=o.items.findIndex(a=>a===e);switch(o.type){case"next":return t===o.items.length-1?e:o.items[t+1];case"prev":return t===0?e:o.items[t-1];case"current":return o.payload;case"reset":return null;default:return e}};var We=(e=>(e.remove="remove",e.add="add",e.reorder="reorder",e))(We||{});const at=(e,o)=>{switch(o.type){case"add":break;case"remove":return e.filter(t=>t[o.valueField]!==o.payload);case"reorder":break;default:return e}};var ae=(e=>(e.toggle="toggle",e.remove="remove",e))(ae||{});const lt=(e,o)=>{switch(o.selection){case"single":switch(o.type){case"toggle":{if(!Array.isArray(e)||e===null)return o.payload===e?null:o.payload;throw new Error("State cannot be an array in single selection")}case"remove":return o.payload===e?null:e;default:return e}case"multiple":switch(o.type){case"toggle":{if(Array.isArray(e))return e.some(t=>t===o.payload)?e.filter(t=>t!==o.payload):[...e,o.payload];if(e===null)return[o.payload];throw new Error("State cannot be non-array in multiple selection")}case"remove":return Array.isArray(e)?e.some(t=>t===o.payload)?e.filter(t=>t!==o.payload):[...e,o.payload]:e;default:return e}case"none":return null;default:return e}},R=n.forwardRef((e,o)=>{i.validatePackage(z);const t=n.useRef(null),a=n.useRef(null),l=i.useDir(a,e.dir);n.useImperativeHandle(t,()=>({element:a.current,props:e})),n.useImperativeHandle(o,()=>t.current);const[r,d]=n.useContext(Ae),[c,f]=n.useContext($e),[,v]=n.useContext(_e),u=n.useMemo(()=>e.selected||(Array.isArray(r)?r.some(p=>p===e.value):r===e.value),[e.selected,e.value,r]),I=n.useMemo(()=>c===e.value,[e.value,c]);n.useEffect(()=>{I&&a.current&&a.current.focus()},[I]);const E=n.useCallback(p=>{d({type:ae.toggle,payload:e.value,event:p})},[d,e.value]),x=n.useCallback(p=>{e.removable&&(v({type:We.remove,payload:e.value,event:p}),f({type:X.reset,payload:e.value,event:p}),d({type:ae.remove,payload:e.value,event:p}),e.onRemove&&e.onRemove.call(void 0,{target:t.current,syntheticEvent:p}))},[e.onRemove,e.value,e.removable,v,f,d]),w=n.useCallback(p=>{switch(p.keyCode){case i.Keys.left:f({type:X.prev,payload:e.value,event:p});break;case i.Keys.right:f({type:X.next,payload:e.value,event:p});break;case i.Keys.enter:d({type:ae.toggle,payload:e.value,event:p});break;case i.Keys.delete:x(p);break}e.onKeyDown&&e.onKeyDown.call(void 0,{target:t.current,syntheticEvent:p})},[e.onKeyDown,e.value,f,d,x]),D=n.useCallback(p=>{f({payload:e.value,type:X.current,event:p}),e.onFocus&&e.onFocus.call(void 0,{target:t.current,syntheticEvent:p})},[e.onFocus,e.value,f]),N=n.useCallback(p=>{e.onBlur&&e.onBlur.call(void 0,{target:t.current,syntheticEvent:p})},[e.onBlur]),g=i.useMouse(e,t,{onClick:E});return n.createElement("div",{...g,role:e.role,id:e.value,style:e.style,ref:a,dir:l,tabIndex:i.getTabIndex(e.tabIndex,e.disabled,void 0),className:i.classNames("k-chip",{"k-rtl":l==="rtl","k-disabled":e.disabled,"k-selected":u,"k-focus":I,[`k-chip-${i.kendoThemeMaps.sizeMap[e.size]||e.size}`]:e.size,[`k-rounded-${i.kendoThemeMaps.roundedMap[e.rounded]||e.rounded}`]:e.rounded,[`k-chip-${e.fillMode}`]:e.fillMode,[`k-chip-${e.fillMode}-${e.themeColor}`]:!!(e.fillMode&&e.themeColor)},e.className),"aria-checked":u,"aria-disabled":e.disabled,"aria-describedby":e.ariaDescribedBy,onFocus:D,onBlur:N,onKeyDown:w},u&&(e.selectedIcon||e.selectedSvgIcon)&&n.createElement(i.IconWrap,{className:"k-chip-icon",name:e.selectedIcon?i.toIconName(e.selectedIcon):void 0,icon:e.selectedSvgIcon,size:"small"}),(e.icon||e.svgIcon)&&n.createElement(i.IconWrap,{className:"k-chip-icon",name:e.icon?i.toIconName(e.icon):void 0,icon:e.svgIcon,size:"small"}),e.avatar&&n.createElement("div",{className:`k-chip-avatar k-avatar k-rounded-${e.avatar.rounded} k-avatar-md k-avatar-solid k-avatar-solid-primary`,style:e.avatar.style},n.createElement("span",{className:"k-avatar-image"},n.createElement("img",{src:e.avatar.image,alt:e.avatar.imageAlt}))),n.createElement("span",{className:"k-chip-content"},e.children!==void 0?e.children:e.text&&n.createElement("span",{"aria-label":e.ariaLabel||e.text,className:"k-chip-label"},e.text)),e.removable&&n.createElement("span",{className:"k-chip-actions"},n.createElement("span",{className:i.classNames("k-chip-action","k-chip-remove-action"),onClick:x},n.createElement(i.IconWrap,{name:e.removeIcon?i.toIconName(e.removeIcon):void 0,icon:e.removeSvgIcon||Se.xCircleIcon,size:"small"}))))}),rt={id:s.string,text:s.string,value:s.any,dir:s.oneOf(["ltr","rtl"]),removable:s.bool,removeIcon:s.string,removeIconSvg:i.svgIconPropType,disabled:s.bool,icon:s.string,svgIcon:i.svgIconPropType,selectedIcon:s.string,selectedIconSvg:i.svgIconPropType,onRemove:s.func,dataItem:s.any,selected:s.bool,ariaDescribedBy:s.string,size:s.oneOf([null,"small","medium","large"]),rounded:s.oneOf([null,"small","medium","large","full"]),fillMode:s.oneOf([null,"outline","solid"]),themeColor:s.oneOf([null,"base","info","success","warning","error"])},ct={disabled:!1,removable:!1,removeIcon:"k-i-x-circle",dir:"ltr",size:"medium",rounded:"medium",fillMode:"solid",themeColor:"base"};R.displayName="KendoReactChip";R.propTypes=rt;R.defaultProps=ct;const dt=(e,o,t)=>{const[a,l]=n.useState(e);return[a,d=>{const c=lt(o.state||a,{...d,...o});t&&t(c,d.event),l(c)}]},ut=e=>{const[o,t]=n.useState(null);return[o,l=>{const r=it(l.payload,{...l,...e});t(r)}]},ht=(e,o,t)=>{const[a,l]=n.useState(e);return[a,d=>{const c=at(o.state||a,{...d,...o});t&&t(c,d.event),l(c)}]},re=n.forwardRef((e,o)=>{i.validatePackage(z);const t=n.useRef(null),a=n.useRef(null),l=i.useDir(a,e.dir),{chip:r,id:d,style:c,tabIndex:f,disabled:v,size:u,className:I,ariaDescribedBy:E,ariaLabelledBy:x,selection:w=_.selection,value:D=_.defaultValue,defaultData:N=_.defaultData,valueField:g=_.valueField,textField:p=_.textField,onChange:M,onDataChange:B}=e,S=n.useMemo(()=>r||R,[r,R]);n.useImperativeHandle(t,()=>({element:a.current,props:e})),n.useImperativeHandle(o,()=>t.current);const O=n.useCallback((b,C)=>{M&&t.current&&M.call(void 0,{value:b,target:t.current,syntheticEvent:C})},[M]),[F,J]=dt(D,{selection:w,state:D},O),L=n.useCallback((b,C)=>{B&&t.current&&B.call(void 0,{value:b,target:t.current,syntheticEvent:C})},[B]),[H,Q]=ht(e.data||N,{state:e.data,valueField:g},L),U=n.useCallback((b,C)=>(b.push(C[g]),b),[g]),T=n.useMemo(()=>e.data||H,[e.data,H]),de=n.useMemo(()=>D||F,[D,F]),Y=n.useMemo(()=>T.reduce(U,[]),[T,U]),j=n.useCallback(b=>i.getter(g)(b),[g]),ee=n.useCallback(b=>i.getter(p)(b),[p]),[y,ue]=ut({items:Y}),he=i.useMouse(e,t);return n.createElement(Ae.Provider,{value:[de,J]},n.createElement($e.Provider,{value:[y,ue]},n.createElement(_e.Provider,{value:[T,Q]},n.createElement("div",{ref:a,...he,role:"listbox",id:d,dir:l,style:c,tabIndex:i.getTabIndex(f,v,void 0),className:i.classNames("k-chip-list",{"k-rtl":l==="rtl","k-disabled":v,[`k-chip-list-${i.kendoThemeMaps.sizeMap[u]||u}`]:u},I),"aria-labelledby":x,"aria-describedby":E},T.map((b,C)=>n.createElement(S,{role:"option",dataItem:b,size:u,key:[j(b),C].join("-"),text:ee(b),value:j(b),ariaLabel:b.ariaLabel,svgIcon:b.svgIcon||void 0}))))))}),pt={id:s.string,className:s.string,tabIndex:s.number,data:s.any,defaultData:s.arrayOf(s.any),onDataChange:s.func,value:s.oneOfType([s.any,s.arrayOf(s.any)]),defaultValue:s.oneOfType([s.any,s.arrayOf(s.any)]),onChange:s.func,selection:s.oneOf(["single","none","multiple"]),textField:s.string,valueField:s.string,disabled:s.bool,dir:s.oneOf(["ltr","rtl"]),ariaLabelledBy:s.string,ariaDescribedBy:s.string,size:s.oneOf([null,"small","medium","large"])},_={chip:R,size:"medium",disabled:!1,defaultValue:null,defaultData:[],dir:"ltr",selection:"none",textField:"text",valueField:"value",removable:"removable"};re.displayName="KendoReactChipList";re.propTypes=pt;re.defaultProps=_;const ce=n.forwardRef((e,o)=>{const{className:t,disabled:a,text:l,icon:r,style:d,id:c,focused:f,tabIndex:v,index:u,dataItem:I,item:E,svgIcon:x,onDown:w,onClick:D,...N}=e,g=n.useRef(null),p=n.useCallback(()=>{g.current&&g.current.focus()},[]),M=n.useCallback(()=>({element:g.current,focus:p}),[p]);n.useImperativeHandle(o,M);const B=n.useCallback(F=>{D&&u!==void 0&&!a&&D(F,u)},[D,u]),S=n.useMemo(()=>i.classNames("k-fab-item",{"k-focus":f,"k-disabled":a},t),[t,a,f]),O=E;return n.createElement("li",{ref:g,id:c,className:S,style:d,role:"menuitem",tabIndex:i.getTabIndex(v,a),"aria-disabled":a,"aria-label":`${l||""} floatingactionbutton item`,onClick:B,onMouseDown:w,onPointerDown:w,...N},O?n.createElement(O,{itemIndex:u,item:I}):n.createElement(n.Fragment,null,l&&n.createElement("span",{className:"k-fab-item-text"},l),r||x?n.createElement(i.IconWrap,{className:"k-fab-item-icon",name:r,icon:x}):null))});ce.propTypes={className:s.string,style:s.object,children:s.any,disabled:s.bool,focused:s.bool,index:s.number,icon:s.string,svgIcon:i.svgIconPropType,text:s.string,tabIndex:s.number,customProp:s.any};ce.displayName="KendoFloatingActionButtonItem";const Pe="16px",ie=e=>typeof e=="number"?e+"px":e,mt=(e,o)=>{const t={horizontal:o?"right":"left",vertical:"bottom"};return e.horizontal==="end"&&(t.horizontal=o?"left":"right"),t},ft=(e,o)=>{const t={horizontal:o?"right":"left",vertical:"top"};return e.horizontal==="end"&&(t.horizontal=o?"left":"right"),t},bt=(e,o)=>{const t=o==="end"?"end":"start";return{rtl:{end:"k-text-left",start:"k-text-right"},ltr:{start:"k-text-left",end:"k-text-right"}}[e][t]},gt=(e,o,t,a)=>{const l=o.horizontal,r=o.vertical;if(e.current){const d=t&&t.x!==void 0?ie(t.x):Pe,c=t&&t.x!==void 0?`calc(50% + ${ie(t.x)})`:"50%",f=t&&t.y!==void 0?ie(t.y):Pe,v=t&&t.y!==void 0?`calc(50% + ${ie(t.y)})`:"50%";e.current.style.setProperty(yt(o,a),l==="center"?c:d),e.current.style.setProperty(kt(o),r==="middle"?v:f),a&&((r==="top"||r==="bottom")&&l==="start"&&e.current.style.setProperty("left","unset"),r==="middle"&&l==="end"&&e.current.style.setProperty("right","unset"),r==="middle"&&l==="start"&&e.current.style.setProperty("left","unset"))}},yt=(e,o)=>{const{horizontal:t}=e;return{end:o?"left":"right",center:"left",start:o?"right":"left"}[t||"end"]},kt=e=>({top:"top",middle:"top",bottom:"bottom"})[e.vertical||"bottom"],vt=2,Ct=100,Ee=n.forwardRef((e,o)=>{i.validatePackage(z);const{align:t=Z.align,alignOffset:a,className:l,disabled:r,icon:d,svgIcon:c,iconClass:f,id:v,items:u,item:I,text:E,positionMode:x=Z.positionMode,size:w=Z.size,style:D,rounded:N=Z.rounded,themeColor:g=Z.themeColor,overlayStyle:p,tabIndex:M,accessKey:B,popupSettings:S={},modal:O,onClick:F,onItemClick:J,onFocus:L,onBlur:H,onKeyDown:Q,onOpen:U,onClose:T,...de}=e,Y=i.useZIndexContext(),j=Y?Y+vt:Ct,ee=n.useRef(null),y=n.useRef(null),ue=n.useRef(null),he=n.useRef(null),b=n.useCallback(()=>{y.current&&y.current.focus()},[]),C=n.useCallback(()=>({element:y.current,focus:b}),[b]);n.useImperativeHandle(ee,C),n.useImperativeHandle(o,()=>ee.current);const[K,P]=n.useState(!1),[te,A]=n.useState(!1),[q,k]=n.useState(-1),Le=n.useMemo(()=>i.guid(),[]),pe=i.useDir(y,e.dir),V=pe==="rtl",se=n.useMemo(()=>i.guid(),[]);n.useEffect(()=>{gt(y,t,a,V)},[y,t,a,V]),n.useEffect(()=>{te&&y&&y.current&&y.current.focus()},[te,y]);const $=n.useCallback((h,m)=>{u&&i.dispatchEvent(m?U:T,h,C(),void 0)},[U,T,u]),He=n.useCallback(h=>{!h.target||r||(!u&&F?i.dispatchEvent(F,h,C(),void 0):(P(!K),A(!0),k(K?-1:0),$(h,!K)))},[P,A,k,F,$,K,u,r]),Ue=n.useCallback(h=>{A(!0),k(K?0:-1),L&&i.dispatchEvent(L,h,C(),void 0)},[L,A,k]),je=n.useCallback(h=>{A(!1),P(!1),k(-1),i.dispatchEvent(H,h,C(),void 0),K&&$(h,!1)},[H,A,P,k,$]),qe=n.useCallback(h=>{h.preventDefault()},[]),me=n.useCallback((h,m)=>{u&&(u[m].disabled||i.dispatchEvent(J,h,C(),{itemProps:u[m],itemIndex:m}))},[J]),Ve=n.useCallback((h,m)=>{!h.target||!u||(k(m),P(!1),me(h,m),$(h,!1))},[k,P,me,$]),Ze=n.useCallback(h=>{i.getActiveElement(document)===y.current&&h.preventDefault()},[y]),Ge=n.useCallback(h=>{const m=q,fe=u?u.length-1:-1,ne=t.vertical==="bottom";switch(h.keyCode){case i.Keys.enter:case i.Keys.space:m>=0&&me(h,m),h.preventDefault(),P(!K),k(K?-1:0);break;case i.Keys.esc:h.preventDefault(),P(!1),k(-1);break;case i.Keys.home:h.preventDefault(),k(0);break;case i.Keys.end:h.preventDefault(),k(fe);break;case i.Keys.down:case i.Keys.right:h.preventDefault(),m<fe&&!ne&&k(m+1),m>0&&ne&&k(m-1);break;case i.Keys.up:case i.Keys.left:h.preventDefault(),m>0&&!ne&&k(m-1),m<fe&&ne&&k(m+1);break}i.dispatchEvent(Q,h,C(),void 0)},[Q,q,k,V,P]),Xe=n.useMemo(()=>i.classNames("k-fab k-fab-solid",{"k-fab-sm":w==="small","k-fab-md":w==="medium","k-fab-lg":w==="large","k-disabled":r,"k-pos-absolute":x==="absolute","k-pos-fixed":x==="fixed","k-focus":te,[`k-rounded-${i.kendoThemeMaps.roundedMap[N]||N}`]:N,[`k-fab-solid-${g}`]:g},`k-${t.vertical}-${t.horizontal}`,l),[g,w,N,r,x,t,te,l]),Je=u&&u.map((h,m)=>n.createElement(ce,{...h,key:m,index:m,id:`${se}-${m}`,disabled:r||h.disabled,focused:q===m,dataItem:h,item:I,className:i.classNames(h.className,bt(pe||"ltr",t.horizontal)),onClick:Ve,onDown:Ze})),we=!!((d||c)&&!E),Qe=y.current?y.current.offsetWidth:0,Ye=32,Ne=Qe/2-Ye/2;return n.createElement(i.ZIndexContext.Provider,{value:j},n.createElement(n.Fragment,null,n.createElement("button",{ref:y,id:v||Le,role:u?"menubutton":"button",type:"button","aria-disabled":r,"aria-expanded":u?K:void 0,"aria-haspopup":!!u,"aria-label":`${E||""} floatingactionbutton`,"aria-owns":u?se:void 0,"aria-activedescendant":q>=0&&u?`${se}-${q}`:void 0,tabIndex:i.getTabIndex(M,r),accessKey:B,dir:pe,disabled:r,className:Xe,style:D,onClick:He,onMouseDown:qe,onFocus:Ue,onBlur:je,onKeyDown:Ge,...de},d||c?n.createElement(i.IconWrap,{className:"k-fab-icon",name:d,icon:c}):f?n.createElement("span",{role:"presentation",className:f}):null,E&&n.createElement("span",{className:"k-fab-text"},E)),O&&K&&n.createElement("div",{className:"k-overlay",style:{zIndex:j,...p}}),n.createElement(ge.Popup,{ref:he,anchor:y.current,show:K,animate:S.animate,popupClass:i.classNames("k-popup-transparent k-fab-popup",S.popupClass),anchorAlign:S.anchorAlign||mt(t,V),popupAlign:S.popupAlign||ft(t,V),style:{boxShadow:"none"}},n.createElement("ul",{ref:ue,role:"menu","aria-labelledby":v,id:se,className:i.classNames("k-fab-items",{"k-fab-items-bottom":t.vertical!=="bottom","k-fab-items-top":t.vertical==="bottom"}),style:{paddingLeft:we?Ne:void 0,paddingRight:we?Ne:void 0}},Je))))});Ee.propTypes={className:s.string,style:s.object,id:s.string,dir:s.string,tabIndex:s.number,accessKey:s.string,disabled:s.bool,icon:s.string,svgIcon:i.svgIconPropType,iconClass:s.string,text:s.string,alignOffset:s.shape({x:s.oneOfType([s.number,s.string]),y:s.oneOfType([s.number,s.string])}),align:s.shape({vertical:s.oneOf(["top","middle","bottom"]),horizontal:s.oneOf(["start","center","end"])}),positionMode:s.oneOf(["absolute","fixed"]),size:s.oneOf([null,"small","medium","large"]),rounded:s.oneOf([null,"small","medium","large","full"]),themeColor:s.oneOf([null,"primary","secondary","tertiary","info","success","warning","error","dark","light","inverse"]),modal:s.bool,overlayStyle:s.object};const Z={align:{vertical:"bottom",horizontal:"end"},size:"medium",rounded:"full",themeColor:"primary",positionMode:"fixed"};Ee.displayName="KendoFloatingActionButton";exports.Button=W;exports.ButtonGroup=Me;exports.Chip=R;exports.ChipList=re;exports.DropDownButton=Ie;exports.DropDownButtonItem=Ce;exports.FloatingActionButton=Ee;exports.FloatingActionButtonItem=ce;exports.SplitButton=ve;exports.SplitButtonItem=ke;exports.Toolbar=xe;exports.ToolbarItem=Oe;exports.ToolbarSeparator=ot;exports.ToolbarSpacer=De;exports.toolbarButtons=ze;
|