@progress/kendo-react-spreadsheet 7.0.3-develop.4 → 7.0.3-develop.5

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/FormulaInput.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2023 Progress Software Corporation. All rights reserved.
2
+ * Copyright © 2024 Progress Software Corporation. All rights reserved.
3
3
  * Licensed under commercial license. See LICENSE.md in the package root for more information
4
4
  *-------------------------------------------------------------------------------------------*/
5
5
  import * as React from 'react';
package/LICENSE.md CHANGED
@@ -8,4 +8,4 @@ This is commercial software. To use it, you need to agree to the [**End User Lic
8
8
 
9
9
  All available KendoReact commercial licenses may be obtained at the [KendoReact website](https://www.telerik.com/kendo-react-ui/pricing).
10
10
 
11
- *Copyright © 2023 Progress Software Corporation and/or its subsidiaries or affiliates. All Rights Reserved.*
11
+ *Copyright © 2024 Progress Software Corporation and/or its subsidiaries or affiliates. All Rights Reserved.*
package/List.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2023 Progress Software Corporation. All rights reserved.
2
+ * Copyright © 2024 Progress Software Corporation. All rights reserved.
3
3
  * Licensed under commercial license. See LICENSE.md in the package root for more information
4
4
  *-------------------------------------------------------------------------------------------*/
5
5
  import * as React from 'react';
package/NOTICE.txt CHANGED
@@ -1,4 +1,4 @@
1
- Progress KendoReact 2023
1
+ Progress KendoReact 2024
2
2
 
3
3
  Copyright © 2018-2023 Progress Software Corporation and/or one of its subsidiaries or affiliates. All rights reserved.
4
4
 
package/NameBox.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2023 Progress Software Corporation. All rights reserved.
2
+ * Copyright © 2024 Progress Software Corporation. All rights reserved.
3
3
  * Licensed under commercial license. See LICENSE.md in the package root for more information
4
4
  *-------------------------------------------------------------------------------------------*/
5
5
  import * as React from 'react';
package/README.md CHANGED
@@ -50,6 +50,6 @@ High-level component overview pages
50
50
 
51
51
  * [React Spreadsheet Component](https://www.telerik.com/kendo-react-ui/spreadsheet)
52
52
 
53
- *Copyright © 2023 Progress Software Corporation and/or its subsidiaries or affiliates. All Rights Reserved.*
53
+ *Copyright © 2024 Progress Software Corporation and/or its subsidiaries or affiliates. All Rights Reserved.*
54
54
 
55
55
  *Progress, Telerik, and certain product names used herein are trademarks or registered trademarks of Progress Software Corporation and/or one of its subsidiaries or affiliates in the U.S. and/or other countries.*
package/SheetsBar.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2023 Progress Software Corporation. All rights reserved.
2
+ * Copyright © 2024 Progress Software Corporation. All rights reserved.
3
3
  * Licensed under commercial license. See LICENSE.md in the package root for more information
4
4
  *-------------------------------------------------------------------------------------------*/
5
5
  /**
package/Spreadsheet.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2023 Progress Software Corporation. All rights reserved.
2
+ * Copyright © 2024 Progress Software Corporation. All rights reserved.
3
3
  * Licensed under commercial license. See LICENSE.md in the package root for more information
4
4
  *-------------------------------------------------------------------------------------------*/
5
5
  import * as React from 'react';
@@ -1,5 +1,5 @@
1
1
  /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2023 Progress Software Corporation. All rights reserved.
2
+ * Copyright © 2024 Progress Software Corporation. All rights reserved.
3
3
  * Licensed under commercial license. See LICENSE.md in the package root for more information
4
4
  *-------------------------------------------------------------------------------------------*/
5
5
  import { Workbook as OoxmlWorkbook } from '@progress/kendo-ooxml';
@@ -1,5 +1,5 @@
1
1
  /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2023 Progress Software Corporation. All rights reserved.
2
+ * Copyright © 2024 Progress Software Corporation. All rights reserved.
3
3
  * Licensed under commercial license. See LICENSE.md in the package root for more information
4
4
  *-------------------------------------------------------------------------------------------*/
5
5
  (function(l,V){typeof exports=="object"&&typeof module<"u"?V(exports,require("react"),require("prop-types"),require("@progress/kendo-react-buttons"),require("@progress/kendo-react-layout"),require("@progress/kendo-react-dialogs"),require("@progress/kendo-react-popup"),require("@progress/kendo-react-common"),require("@progress/kendo-svg-icons"),require("@progress/kendo-react-dropdowns"),require("@progress/kendo-react-intl"),require("@progress/kendo-react-sortable"),require("@progress/kendo-spreadsheet-common"),require("@progress/kendo-file-saver"),require("@progress/kendo-ooxml"),require("@progress/kendo-react-upload"),require("@progress/kendo-react-inputs")):typeof define=="function"&&define.amd?define(["exports","react","prop-types","@progress/kendo-react-buttons","@progress/kendo-react-layout","@progress/kendo-react-dialogs","@progress/kendo-react-popup","@progress/kendo-react-common","@progress/kendo-svg-icons","@progress/kendo-react-dropdowns","@progress/kendo-react-intl","@progress/kendo-react-sortable","@progress/kendo-spreadsheet-common","@progress/kendo-file-saver","@progress/kendo-ooxml","@progress/kendo-react-upload","@progress/kendo-react-inputs"],V):(l=typeof globalThis<"u"?globalThis:l||self,V(l.KendoReactSpreadsheet={},l.React,l.PropTypes,l.KendoReactButtons,l.KendoReactLayout,l.KendoReactDialogs,l.KendoReactPopup,l.KendoReactCommon,l.KendoSvgIcons,l.KendoReactDropdowns,l.KendoReactIntl,l.KendoReactSortable,l.KendoSpreadsheetCommon,l.KendoFileSaver,l.KendoOoxml,l.KendoReactUpload,l.KendoReactInputs))})(this,function(l,V,O,N,we,ke,Vt,K,f,$,L,_t,S,Ne,Ie,qt,Jt){"use strict";"use client";function $t(t){const n=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const o in t)if(o!=="default"){const r=Object.getOwnPropertyDescriptor(t,o);Object.defineProperty(n,o,r.get?r:{enumerable:!0,get:()=>t[o]})}}return n.default=t,Object.freeze(n)}const e=$t(V),G=e.forwardRef((t,n)=>{const o=e.useRef(null),r=e.useRef(null);return e.useImperativeHandle(o,()=>({element:r.current,props:t})),e.useImperativeHandle(n,()=>o.current),e.createElement("div",{className:"k-list k-list-md"},e.createElement("div",{className:"k-list-content"},e.createElement("ul",{ref:r,className:"k-spreadsheet-formula-list k-list-ul",onMouseDown:a=>a.preventDefault(),style:{maxHeight:280}},t.data.map(a=>e.createElement("li",{key:a.text,className:"k-list-item",onClick:()=>t.onItemClick(a.value)},e.createElement(K.IconWrap,{name:"formula-fx",icon:f.formulaFxIcon}),e.createElement("span",{className:"k-list-item-text"},a.text))))))});G.displayName="List",G.propTypes={};const J=e.forwardRef((t,n)=>{const[o,r]=e.useState(!1),[a,s]=e.useState(0),[d,m]=e.useState([]),i=e.useMemo(()=>({}),[]);i.showPopup=o,i.popupContentKey=a,i.data=d;const v=e.useRef(null),E=e.useRef(null),C=e.useRef(null),R=e.useCallback(()=>{if(C.current&&C.current.element)return C.current.element.querySelector(".k-focus")},[]),x=e.useCallback(()=>{const b=R();b&&b.classList.remove("k-focus")},[]),g=e.useCallback(b=>{const D=Array.from(C.current&&C.current.element.children||[]),z=R();let p;if(z){const k=D.indexOf(z);z.classList.remove("k-focus"),p=D[k+b]?D[k+b]:b===1?D[0]:D[D.length-1]}else p=b===1?D[0]:D[D.length-1];p&&p.classList.add("k-focus")},[]);e.useImperativeHandle(v,()=>({element:E.current,props:t,popup:{open:()=>{r(!0)},close:()=>{r(!1)},position:()=>{s(i.popupContentKey+1)},visible:()=>i.showPopup},list:{get element(){return C.current&&C.current.element},data:b=>{if(b)m(b);else return i.data},value:()=>({}),focus:()=>Array.from(C.current&&C.current.element&&C.current.element.children||[]).indexOf(R()),focusNext:()=>{g(1)},focusPrev:()=>{g(-1)},focusFirst:()=>{const b=C.current&&C.current.element;b&&b.children.item(0)&&(x(),b.children.item(0).classList.add("k-focus"))},focusLast:()=>{const b=C.current&&C.current.element;b&&b.children.length&&(x(),b.children.item(b.children.length-1).classList.add("k-focus"))},itemClick:b=>{i.itemClick=b}}}),[]),e.useImperativeHandle(n,()=>v.current,[]);const y=e.useCallback(b=>{i.itemClick&&i.itemClick(b)},[]);return e.createElement(e.Fragment,null,e.createElement("div",{className:K.classNames("k-spreadsheet-formula-input",t.className),contentEditable:"true",spellCheck:"false",style:{whiteSpace:"pre"},ref:E}),e.createElement(Vt.Popup,{show:o,anchor:E.current,animate:{openDuration:100,closeDuration:100},contentKey:a,popupClass:"k-list-container"},e.createElement(G,{data:d,ref:C,onItemClick:y})))});J.displayName="FormulaInput",J.propTypes={};const Se="spreadsheet.bold",Ae="spreadsheet.italic",De="spreadsheet.underline",Le="spreadsheet.openFile",Re="spreadsheet.textColor",Te="spreadsheet.background",Fe="spreadsheet.addRowAbove",Ke="spreadsheet.addRowBelow",ze="spreadsheet.addColumnLeft",Oe="spreadsheet.addColumnRight",Pe="spreadsheet.deleteRow",Me="spreadsheet.deleteColumn",Be="spreadsheet.undo",je="spreadsheet.redo",He="spreadsheet.fontSize",Ue="spreadsheet.fontSizeIncrease",We="spreadsheet.fontSizeDecrease",Ve="spreadsheet.fontName",_e="spreadsheet.cleanFormatting",qe="spreadsheet.format",Je="spreadsheet.alignHorizontally",$e="spreadsheet.alignVertically",Ge="spreadsheet.align",Xe="spreadsheet.alignLeft",Ze="spreadsheet.alignRight",Ye="spreadsheet.alignCenter",Qe="spreadsheet.center",et="spreadsheet.alignJustify",tt="spreadsheet.justify",nt="spreadsheet.alignTop",at="spreadsheet.alignMiddle",ot="spreadsheet.alignBottom",lt="spreadsheet.increaseDecimal",rt="spreadsheet.decreaseDecimal",st="spreadsheet.textWrap",ct="spreadsheet.gridLines",it="spreadsheet.exportToExcel",ut="spreadsheet.nameBox",dt="spreadsheet.defaultSheetName",mt="spreadsheet.home",pt="spreadsheet.file",ft="spreadsheet.insert",gt="spreadsheet.formatTab",bt="spreadsheet.addNewSheet",ht="spreadsheet.error",yt="spreadsheet.ok",Ct="spreadsheet.modifyMerged",vt="spreadsheet.cannotModifyDisabled",Et="spreadsheet.openUnsupported",xt="spreadsheet.duplicateSheetName",I={[Se]:"Bold",[Ae]:"Italic",[De]:"Underline",[Be]:"Undo",[je]:"Redo",[He]:"Font size",[Ue]:"Increase Font size",[We]:"Decrease Font size",[Ve]:"Font",[_e]:"Clean formatting",[qe]:"Custom format...",[Je]:"Align horizontally",[$e]:"Align vertically",[Ge]:"Align",[Xe]:"Align left",[Ze]:"Align right",[Ye]:"Align center",[et]:"Align justify",[Qe]:"Center",[tt]:"Justify",[nt]:"Align top",[at]:"Align middle",[ot]:"Align bottom",[lt]:"Increase decimal",[rt]:"Decrease decimal",[Re]:"Text Color",[Te]:"Background color",[Fe]:"Add row above",[Ke]:"Add row below",[ze]:"Add column left",[Oe]:"Add column right",[Pe]:"Delete row",[Me]:"Delete column",[Le]:"Open...",[it]:"Export to Excel",[st]:"Text Wrap",[ct]:"Toggle gridlines",[ut]:"Name Box",[dt]:"Sheet",[mt]:"Home",[pt]:"File",[ft]:"Insert",[bt]:"Add new sheet",[gt]:"Format",[Ct]:"Cannot change part of a merged cell.",[vt]:"Cannot modify disabled cells.",[Et]:"Unsupported format. Please select an .xlsx file.",[xt]:"There is an existing sheet with this name. Please enter another name.",[ht]:"Error",[yt]:"OK"},c={bold:Se,italic:Ae,underline:De,undo:Be,redo:je,fontSize:He,fontSizeIncrease:Ue,fontSizeDecrease:We,fontName:Ve,cleanFormatting:_e,format:qe,alignHorizontally:Je,alignVertically:$e,align:Ge,alignLeft:Xe,alignRight:Ze,alignCenter:Ye,center:Qe,alignJustify:et,justify:tt,alignTop:nt,alignMiddle:at,alignBottom:ot,increaseDecimal:lt,decreaseDecimal:rt,textColor:Re,background:Te,addRowAbove:Fe,addRowBelow:Ke,addColumnLeft:ze,addColumnRight:Oe,deleteRow:Pe,deleteColumn:Me,open:Le,exportToExcel:it,textWrap:st,gridLines:ct,nameBox:ut,defaultSheetName:dt,file:pt,home:mt,insert:ft,addNewSheet:bt,error:ht,ok:yt,modifyMerged:Ct,cannotModifyDisabled:vt,openUnsupported:Et,duplicateSheetName:xt,formatTab:gt},X=e.forwardRef((t,n)=>{const o=e.useRef(null),r=e.useRef(null),[a,s]=e.useState([]),[d,m]=e.useState(!1),[i,v]=e.useState(""),E=e.useMemo(()=>({}),[]);E.data=a,e.useImperativeHandle(o,()=>({value:p=>{if(p===void 0){const k=r.current&&r.current.value;return k&&(k.name||k)}else v(p||"")}}),[]),e.useImperativeHandle(n,()=>o.current,[]);const C=e.useCallback(p=>{const k=t.nameEditor();k&&k.trigger("delete",{name:p})},[]),R=e.useCallback((p,k)=>{const P=e.createElement(e.Fragment,null,p.props.children,e.createElement("span",{role:"button",className:"k-button-delete",onClick:()=>C(k.dataItem[k.textField]),onMouseDown:w=>w.preventDefault(),onPointerDown:w=>w.preventDefault(),"data-role":"delete"},e.createElement(K.IconWrap,{name:"x",icon:f.xIcon})));return e.cloneElement(p,p.props,P)},[]),x=e.useCallback(p=>e.cloneElement(p,{...p.props},e.createElement("div",null)),[]),g=e.useCallback(p=>{if(p.syntheticEvent&&p.syntheticEvent.type==="change")return;const k=t.nameEditor();k&&(s(k.readData()),m(!0))},[]),y=e.useCallback(()=>{m(!1)},[]),b=e.useCallback(p=>{if(p.syntheticEvent.target.closest("[data-role]"))return;const k=t.nameEditor();if(k&&p.value){const P=p.value.name;P!==i&&(k.trigger("select",{name:P}),v(P))}},[i]),D=e.useCallback(p=>{const k=t.nameEditor();if(k)if(p.key==="Enter"){const P=p.target.value;k.trigger("enter",{value:P}),v(P)}else p.key==="Escape"&&(k.trigger("cancel"),v(E.prevValue))},[]),z=e.useCallback(p=>{E.prevValue=p.value.name},[]);return e.createElement("div",{className:"k-spreadsheet-name-editor",onKeyDown:D},e.createElement($.ComboBox,{ref:r,title:L.useLocalization().toLanguageString(c.nameBox,I[c.nameBox]),popupSettings:{className:"k-spreadsheet-names-popup"},fillMode:"flat",clearButton:!1,dataItemKey:"name",textField:"name",itemRender:R,data:a,value:i?a.find(p=>p.name===i)||{name:i}:null,onChange:b,opened:d,onOpen:g,onClose:y,onFocus:z,listNoDataRender:x,allowCustom:!0}))});X.displayName="NameBox",X.propTypes={};const Gt={onSelect:()=>{},onDelete:()=>{},onEnterEdit:()=>{},onCancelEdit:()=>{},onExitEdit:()=>{},onEdit:()=>{}},wt=e.createContext(Gt),Xt=t=>{const n=t.dataItem,{onSelect:o,onDelete:r,onEnterEdit:a,onExitEdit:s,onCancelEdit:d,onEdit:m}=e.useContext(wt),i=e.useCallback(g=>{g.target instanceof HTMLElement&&g.target.nodeName==="INPUT"||o.call(void 0,n,g)},[n,o]),v=e.useCallback(g=>{r.call(void 0,n,g)},[n,r]),E=e.useCallback(g=>{g.target instanceof HTMLElement&&g.target.nodeName==="INPUT"||a.call(void 0,n,g)},[n,a]),C=e.useCallback(g=>{s.call(void 0,n,g)},[n,s]),R=e.useCallback(g=>{g.key==="Enter"?s.call(void 0,n,g):g.key==="Escape"&&d.call(void 0,n,g)},[n,s,d]),x=e.useCallback(g=>{m.call(void 0,{...n,text:g.target.value},g)},[n,m]);return e.createElement("li",{style:t.style,...t.attributes,ref:t.forwardRef,role:"tab",className:K.classNames("k-item k-tabstrip-item",{"k-disabled":t.isDisabled,"k-active k-state-tab-on-top k-spreadsheet-sheets-bar-active":n.active,"k-spreadsheet-sheets-bar-inactive":!n.active,"k-first":n.first,"k-last":n.last}),onClick:i,onDoubleClick:E},n.inEdit?e.createElement("input",{type:"text",className:"k-textbox k-spreadsheet-sheets-editor",value:n.text,onChange:x,maxLength:50,autoFocus:!0,onBlur:C,onKeyDown:R}):e.createElement(e.Fragment,null,e.createElement("span",{className:"k-link"},n.text),n.first&&n.last?null:e.createElement("span",{className:"k-link k-spreadsheet-sheets-remove",onClick:v},e.createElement(K.IconWrap,{name:"x",icon:f.xIcon}))))},kt=e.forwardRef((t,n)=>{const{children:o,className:r,...a}=t;return e.createElement("ul",{className:K.classNames("k-tabstrip-items k-reset",r),role:"tablist",...a,ref:n},o)});kt.displayName="TabsList";const Zt=t=>{const{sheets:n,setSheets:o,onSheetSelect:r,onSheetDelete:a,onSheetEdit:s,onSheetReorderEnd:d}=t,[m,i]=e.useState(null),v=e.useRef(!1),E=e.useRef(-1),C=e.useCallback(w=>{o(w.map((T,M,F)=>({...T,first:M===0,last:M===F.length-1})))},[]),R=e.useCallback(w=>{C(w.newState)},[C,d]),x=e.useCallback(w=>{d.call(void 0,w)},[d]),g=e.useCallback(w=>{v.current=!0,E.current=w.prevIndex},[]),y=e.useCallback(w=>{setTimeout(()=>{v.current=!1},50),d.call(void 0,{...w,prevIndex:E.current})},[]),b=e.useCallback((w,T)=>{v.current||r.call(void 0,w,T)},[r]),D=e.useCallback((w,T)=>{T.stopPropagation(),a.call(void 0,w)},[n,a]),z=e.useCallback((w,T)=>{T.stopPropagation(),T.preventDefault();const M=n.map(F=>({...F,active:F.id===w.id,inEdit:F.id===w.id}));o(M),i({...w})},[n]),p=e.useCallback((w,T)=>{T.stopPropagation(),T.preventDefault();const M=n.map(F=>({...F,inEdit:!1,text:F.inEdit&&m?m.text:F.text}));o(M),i(null)},[n,m]),k=e.useCallback((w,T)=>{T.stopPropagation(),T.preventDefault();const M=n.map(W=>({...W,inEdit:!1})),F=n.findIndex(W=>W.id===w.id);o(M),i(null),s.call(void 0,w,F)},[n,s]),P=e.useCallback((w,T)=>{T.stopPropagation(),T.preventDefault();const M=n.map(F=>({...F,text:w.id===F.id?w.text:F.text}));o(M)},[n]);return e.createElement("div",{className:"k-spreadsheet-sheets-items k-tabstrip k-floatwrap k-tabstrip-bottom"},e.createElement("div",{className:"k-tabstrip-items-wrapper k-hstack"},e.createElement(wt.Provider,{value:{onSelect:b,onDelete:D,onEnterEdit:z,onCancelEdit:p,onExitEdit:k,onEdit:P}},e.createElement(_t.Sortable,{idField:"id",data:n,itemUI:Xt,itemsWrapUI:kt,onDragOver:R,onNavigate:x,onDragStart:g,onDragEnd:y}))))},Yt=(t,n,o)=>t.map((r,a,s)=>({text:r.name(),id:o+"-sheet-"+a,first:a===0,last:a===s.length-1,active:r.name()===n})),Qt=t=>{const{spreadsheetRef:n}=t,[o,r]=e.useState([]),a=e.useRef((o.find(x=>x.active)||{}).text),s=K.useId(),d=e.useCallback(()=>{n.current&&(n.current.view.sheetsbar.onSheetSelect(a.current),r(Yt(n.current.sheets(),a.current,s)))},[]),m=e.useCallback(()=>{if(n.current){const x=n.current.sheets();x.find(g=>g.name()===a.current)||(a.current=x[x.length-1].name()),d()}},[]);e.useEffect(()=>(n.current&&(n.current.sheets().length&&(a.current=n.current.sheets()[0].name(),d()),n.current.view.bind("update",m)),()=>{n.current&&n.current.view.unbind("update",m)}),[n.current]);const i=e.useCallback(x=>{a.current!==x.text&&(a.current=x.text,d())},[]),v=e.useCallback(()=>{if(n.current){n.current.view.sheetsbar.onAddSelect();const x=n.current.sheets();a.current=x[x.length-1].name(),d()}},[]),E=e.useCallback(x=>{if(n.current){if(a.current===x.text){const g=n.current.sheets(),y=g.findIndex(D=>D.name()===x.text),b=g[y+1]||g[y-1];a.current=b?b.name():""}n.current.view.sheetsbar.onSheetRemove(x.text),d()}},[]),C=e.useCallback((x,g)=>{if(n.current){let y=x.text;const b=n.current.sheets(),D=b[g];if(!y){a.current=D.name(),d();return}if(D&&D.name()===y)return;b.find(z=>z.name()===y)&&(y=D.name()),n.current.view.sheetsbar.onSheetRename(y,g),a.current=y,d()}},[]),R=e.useCallback(x=>{if(n.current){const{prevIndex:g,nextIndex:y}=x;a.current=n.current.sheets()[g].name(),n.current.view.sheetsbar.onSheetReorderEnd({oldIndex:g,newIndex:y}),d()}},[]);return e.createElement("div",{className:"k-spreadsheet-sheets-bar k-header"},e.createElement(N.Button,{fillMode:"flat",icon:"plus",className:"k-spreadsheet-sheets-bar-add",title:L.useLocalization().toLanguageString(c.addNewSheet,I[c.addNewSheet]),svgIcon:f.plusIcon,onClick:v}),e.createElement(Zt,{sheets:o,setSheets:r,onSheetSelect:i,onSheetDelete:E,onSheetEdit:C,onSheetReorderEnd:R}))},Z=t=>{const{spreadsheetRef:n}=t,o=e.useCallback(()=>{n.current&&n.current.saveAsExcel({...n.current.options.excel,saveAs:Ne.saveAs,Workbook:Ie.Workbook})},[]);return e.createElement(N.Button,{className:"k-toolbar-button",title:"Export...",icon:"download",fillMode:"flat",svgIcon:f.downloadIcon,onClick:o})};Z.displayName="ExcelExport";const Y=t=>{const{spreadsheetRef:n}=t,o=e.useCallback(a=>{const s=a.target;if(s instanceof Element&&s.parentNode){const d=s.closest(".k-toolbar"),m=d&&d.querySelector(".k-upload input");m&&m.click()}},[]),r=e.useCallback(a=>{const s=a.newState;if(s[0]&&s[0].getRawFile){const d=s[0].getRawFile();n.current&&n.current.executeCommand({command:"OpenCommand",options:{file:d}})}},[]);return e.createElement(e.Fragment,null,e.createElement(N.Button,{className:"k-toolbar-button",title:L.useLocalization().toLanguageString(c.open,I[c.open]),icon:"folder-open",svgIcon:f.folderOpenIcon,fillMode:"flat",onClick:o}),e.createElement("div",{style:{display:"none"}},e.createElement(qt.Upload,{restrictions:{allowedExtensions:[".xlsx"]},onAdd:r,autoUpload:!1,defaultFiles:[],multiple:!1,accept:".xlsx,.XLSX",withCredentials:!1})))};Y.displayName="Open";const en=["Arial","Courier New","Georgia","Times New Roman","Trebuchet MS","Verdana"],tn="Arial",nn=[8,9,10,11,12,13,14,16,18,20,22,24,26,28,36,48,72],an=12,on=[{text:"Automatic",value:null},{text:"Text",value:"@"},{text:"Number",value:"#,0.00"},{text:"Percent",value:"0.00%"},{text:"Financial",value:'_("$"* #,##0.00_);_("$"* (#,##0.00);_("$"* "-"??_);_(@_)'},{text:"Currency",value:"$#,##0.00;[Red]$#,##0.00"},{text:"Date",value:"m/d/yyyy"},{text:"Time",value:"h:mm:ss AM/PM"},{text:"Date time",value:"m/d/yyyy h:mm"},{text:"Duration",value:"[h]:mm:ss"}],Q=t=>o=>{const{property:r,icon:a,svgIcon:s,titleKey:d}=t,{spreadsheetRef:m,value:i}=o,v=e.useCallback(()=>{if(m.current){const C={command:"PropertyChangeCommand",options:{property:r,value:!i}};m.current.executeCommand(C)}},[i]);return e.createElement(N.Button,{type:"button",icon:a,svgIcon:s,fillMode:"flat",togglable:!0,onClick:v,selected:i,title:L.useLocalization().toLanguageString(d,I[d])})},Nt=t=>o=>{const{property:r,titleKey:a,...s}=t,{spreadsheetRef:d,value:m}=o,i=e.useCallback(v=>{if(d.current){const E={command:"PropertyChangeCommand",options:{property:r,value:v.value||null}};d.current.executeCommand(E)}},[r]);return e.createElement(Jt.ColorPicker,{onChange:i,onActiveColorClick:i,fillMode:"flat",...s,title:L.useLocalization().toLanguageString(a,I[a]),value:m})},It=t=>o=>{const{spreadsheetRef:r}=o,a=e.useCallback(()=>{r.current&&r.current.workbook.undoRedoStack[t.action]()},[]);return e.createElement(N.Button,{type:"button",icon:t.icon,svgIcon:t.svgIcon,fillMode:"flat",title:L.useLocalization().toLanguageString(t.titleKey,I[t.titleKey]),onClick:a})},ln={property:"bold",icon:"bold",svgIcon:f.boldIcon,titleKey:c.bold},ee=Q(ln);ee.displayName="Bold";const rn={property:"italic",icon:"italic",svgIcon:f.italicIcon,titleKey:c.italic},te=Q(rn);te.displayName="Italic";const sn={property:"underline",icon:"underline",svgIcon:f.underlineIcon,titleKey:c.underline},ne=Q(sn);ne.displayName="Underline";const ae=t=>{const{spreadsheetRef:n,value:o}=t,r=e.useCallback(a=>{if(n.current){const s={command:"PropertyChangeCommand",options:{property:"fontFamily",value:a.value||null}};n.current.executeCommand(s)}},[]);return e.createElement($.DropDownList,{onChange:r,value:o,data:en,defaultValue:tn,fillMode:"flat",title:L.useLocalization().toLanguageString(c.fontName,I[c.fontName]),leftRightKeysNavigation:!1})};ae.displayName="FontFamily";const oe=1,le=409,re=t=>typeof t=="string"?parseFloat(t):t,se=t=>{const{spreadsheetRef:n}=t,o=re(t.value),r=e.useCallback(a=>{var m;let s=a.value?re(a.value):o;s=isNaN(s)?o:s,s=Math.min(le,Math.max(oe,s));const d={command:"PropertyChangeCommand",options:{property:"fontSize",value:s}};a.nativeEvent.type==="keydown"||a.nativeEvent.type==="focusout"?(m=n.current)==null||m.executeCommand(d):setTimeout(()=>{var i;(i=n.current)==null||i.executeCommand(d)},0)},[o]);return e.createElement($.ComboBox,{onChange:r,value:o,data:nn,defaultValue:an,allowCustom:!0,fillMode:"flat",title:L.useLocalization().toLanguageString(c.fontSize,I[c.fontSize]),tabIndex:-1,clearButton:!1})};se.displayName="FontSize";const St=t=>{const n=o=>{const{property:r,icon:a,svgIcon:s,titleKey:d,step:m}=t,{spreadsheetRef:i}=o,v=re(o.value),E=e.useCallback(()=>{var R;const C={command:"PropertyChangeCommand",options:{property:r,value:Math.min(le,Math.max(oe,v+m))}};(R=i.current)==null||R.executeCommand(C)},[v]);return e.createElement(N.Button,{type:"button",icon:a,svgIcon:s,fillMode:"flat",onClick:E,disabled:v+m<oe||v+m>le,title:L.useLocalization().toLanguageString(d,I[d])})};return n.displayName=t.displayName,n},At=St({property:"fontSize",icon:"font-grow",svgIcon:f.fontGrowIcon,titleKey:c.fontSizeIncrease,displayName:"IncreaseFontSize",step:1}),Dt=St({property:"fontSize",icon:"font-shrink",svgIcon:f.fontShrinkIcon,titleKey:c.fontSizeDecrease,displayName:"DecreaseFontSize",step:-1}),ce=Nt({icon:"foreground-color",svgIcon:f.foregroundColorIcon,view:"palette",property:"color",titleKey:c.textColor,ariaLabel:"Text Color"});ce.displayName="TextColor";const ie=Nt({icon:"droplet",svgIcon:f.dropletIcon,view:"palette",property:"background",titleKey:c.background,ariaLabel:"Background"});ie.displayName="BackgroundColor";const H=[{icon:"align-left",svgIcon:f.alignLeftIcon,textKey:c.alignLeft,commandName:"textAlign",value:"left",selected:!1},{icon:"align-center",svgIcon:f.alignCenterIcon,textKey:c.alignCenter,commandName:"textAlign",value:"center",selected:!1},{icon:"align-right",svgIcon:f.alignRightIcon,textKey:c.alignRight,commandName:"textAlign",value:"right",selected:!1},{icon:"align-justify",svgIcon:f.alignJustifyIcon,textKey:c.alignJustify,commandName:"textAlign",value:"justify",selected:!1},{icon:"align-top",svgIcon:f.alignTopIcon,textKey:c.alignTop,commandName:"verticalAlign",value:"top",selected:!1},{icon:"align-middle",svgIcon:f.alignMiddleIcon,textKey:c.alignMiddle,commandName:"verticalAlign",value:"center",selected:!1},{icon:"align-bottom",svgIcon:f.alignBottomIcon,textKey:c.alignBottom,commandName:"verticalAlign",value:"bottom",selected:!1}],cn=[H[0],{...H[1],textKey:c.center},H[2],{...H[3],textKey:c.justify}],un=H.filter(t=>t.commandName==="verticalAlign"),Lt=t=>{const{value:n,spreadsheetRef:o}=t,{textAlign:r,verticalAlign:a}=n||{},s=L.useLocalization(),d=e.useCallback(i=>{if(o.current){const v=i.item,E={command:"PropertyChangeCommand",options:{property:v.commandName,value:v.value||null}};o.current.executeCommand(E)}},[]);let m=H.slice();return m=m.map(i=>({...i,text:s.toLanguageString(i.textKey,I[i.textKey])})),r&&(m=m.map(i=>i.commandName==="textAlign"?{...i,selected:i.value===r}:i)),a&&(m=m.map(i=>i.commandName==="verticalAlign"?{...i,selected:i.value===a}:i)),e.createElement(N.DropDownButton,{icon:"align-left",svgIcon:f.alignLeftIcon,items:m,fillMode:"flat",onItemClick:d,title:s.toLanguageString(c.align,I[c.align]),text:e.createElement(K.IconWrap,{name:"caret-alt-down",icon:f.caretAltDownIcon})})};Lt.displayName="Alignment";const dn={items:cn,icon:{icon:"align-left",svgIcon:f.alignLeftIcon},displayName:"AlignHorizontally",titleKey:c.alignHorizontally},mn={items:un,icon:{icon:"align-bottom",svgIcon:f.alignBottomIcon},displayName:"AlignVertically",titleKey:c.alignVertically},Rt=t=>{const n=o=>{const{value:r,spreadsheetRef:a}=o,s=L.useLocalization(),d=e.useCallback(E=>{if(a.current){const C=E.item,R={command:"PropertyChangeCommand",options:{property:C.commandName,value:C.value||null}};a.current.executeCommand(R)}},[]);let m=t.items.slice();m=m.map(E=>({...E,text:s.toLanguageString(E.textKey,I[E.textKey])})),m=m.map(E=>({...E,selected:E.value===r}));const i={...t.icon},v=m.find(E=>E.selected);return v&&(i.icon=v.icon,i.svgIcon=v.svgIcon),e.createElement(N.DropDownButton,{...i,items:m,fillMode:"flat",onItemClick:d,title:s.toLanguageString(t.titleKey,I[t.titleKey]),text:e.createElement(K.IconWrap,{name:"caret-alt-down",icon:f.caretAltDownIcon})})};return n.displayName=t.displayName,n},Tt=Rt(dn),Ft=Rt(mn),ue=t=>{const{value:n,spreadsheetRef:o}=t,r=e.useCallback(()=>{if(o.current){const a=o.current.activeSheet();if(a){const m={command:"TextWrapCommand",options:{property:"wrap",value:!a.range(a.activeCell()).wrap()}};o.current.executeCommand(m)}}},[]);return e.createElement(N.Button,{type:"button",togglable:!0,icon:"text-wrap",svgIcon:f.textWrapIcon,fillMode:"flat",title:L.useLocalization().toLanguageString(c.textWrap,I[c.textWrap]),onClick:r,selected:n})};ue.displayName="TextWrap";const de=t=>{const{value:n,spreadsheetRef:o}=t,r=e.useCallback(()=>{if(o.current){const a=o.current.activeSheet();if(a){const d={command:"GridLinesChangeCommand",options:{property:"gridLines",value:!a.showGridLines()}};o.current.executeCommand(d)}}},[]);return e.createElement(N.Button,{type:"button",togglable:!0,icon:"borders-none",svgIcon:f.bordersNoneIcon,fillMode:"flat",title:L.useLocalization().toLanguageString(c.gridLines,I[c.gridLines]),onClick:r,selected:n})};de.displayName="GridLines";const me=t=>{const{spreadsheetRef:n}=t,o=e.useCallback(r=>{const a=r.item.value||null;setTimeout(()=>{if(n.current){const s={command:"PropertyChangeCommand",options:{property:"format",value:a}};n.current.executeCommand(s)}},0)},[]);return e.createElement(N.DropDownButton,{icon:"custom-format",svgIcon:f.customFormatIcon,fillMode:"flat",onItemClick:o,items:on,title:L.useLocalization().toLanguageString(c.format,I[c.format]),text:e.createElement(K.IconWrap,{name:"caret-alt-down"})})};me.displayName="Format";const U=t=>o=>{const{spreadsheetRef:r,value:a}=o,s=e.useCallback(()=>{if(r.current){const d={command:t.command,options:{value:t.value}};r.current.executeCommand(d)}},[]);return e.createElement(N.Button,{type:"button",icon:t.icon,svgIcon:t.svgIcon,fillMode:"flat",title:L.useLocalization().toLanguageString(t.titleKey,I[t.titleKey]),onClick:s,disabled:a&&t.disabled(a)})},pn={command:"AddColumnCommand",value:"left",icon:"table-column-insert-left",svgIcon:f.tableColumnInsertLeftIcon,titleKey:c.addColumnLeft,disabled:t=>t.allCols,displayName:"AddColumnLeft"},fn={command:"AddColumnCommand",value:"right",icon:"table-column-insert-right",svgIcon:f.tableColumnInsertRightIcon,titleKey:c.addColumnRight,disabled:t=>t.allCols,displayName:"AddColumnRight"},gn={command:"AddRowCommand",value:"below",icon:"table-row-insert-below",svgIcon:f.tableRowInsertBelowIcon,titleKey:c.addRowBelow,disabled:t=>t.allRows,displayName:"AddRowBelow"},bn={command:"AddRowCommand",value:"above",icon:"table-row-insert-above",svgIcon:f.tableRowInsertAboveIcon,titleKey:c.addRowAbove,disabled:t=>t.allRows,displayName:"AddRowAbove"},hn={command:"DeleteColumnCommand",icon:"table-column-delete",svgIcon:f.tableColumnDeleteIcon,titleKey:c.deleteColumn,disabled:t=>t.allCols,displayName:"DeleteColumn"},yn={command:"DeleteRowCommand",icon:"table-row-delete",svgIcon:f.tableRowDeleteIcon,titleKey:c.deleteRow,disabled:t=>t.allRows,displayName:"DeleteRow"},pe=U(pn),fe=U(fn),ge=U(gn),be=U(bn),he=U(hn),ye=U(yn);pe.displayName="AddColumnLeft",fe.displayName="AddColumnRight",ge.displayName="AddRowBelow",be.displayName="AddRowAbove",he.displayName="DeleteColumn",ye.displayName="DeleteRow";const Cn={action:"undo",icon:"reset",svgIcon:f.arrowRotateCcwIcon,titleKey:c.undo},Ce=It(Cn);Ce.displayName="Undo";const vn={action:"redo",icon:"reload",svgIcon:f.arrowRotateCwIcon,titleKey:c.redo},ve=It(vn);ve.displayName="Redo";const Kt=t=>o=>{const{icon:r,svgIcon:a,titleKey:s,value:d}=t,{spreadsheetRef:m}=o,i=e.useCallback(()=>{if(m.current){const v={command:"AdjustDecimalsCommand",options:{value:d}};m.current.executeCommand(v)}},[]);return e.createElement(N.Button,{type:"button",icon:r,svgIcon:a,fillMode:"flat",onClick:i,title:L.useLocalization().toLanguageString(s,I[s])})},En=Kt({icon:f.decimalIncreaseIcon.name,svgIcon:f.decimalIncreaseIcon,value:1,titleKey:c.increaseDecimal}),xn=Kt({icon:f.decimalDecreaseIcon.name,svgIcon:f.decimalDecreaseIcon,value:-1,titleKey:c.decreaseDecimal}),Ee=[{textKey:c.file,tools:[Y,Z]},{textKey:c.home,selected:!0,tools:[[Ce,ve],N.ToolbarSeparator,ae,se,At,Dt,N.ToolbarSeparator,[ee,te,ne],ce,N.ToolbarSeparator,ie,N.ToolbarSeparator,Tt,Ft,ue,N.ToolbarSeparator,de]},{textKey:c.insert,tools:[[pe,fe,ge,be],N.ToolbarSeparator,[he,ye]]},{textKey:c.formatTab,tools:[me,[xn,En]]}],zt={name:"@progress/kendo-react-spreadsheet",productName:"KendoReact",productCodes:["KENDOUIREACT","KENDOUICOMPLETE"],publishDate:1683639393,version:"",licensingDocsUrl:"https://www.telerik.com/kendo-react-ui/my-license/?utm_medium=product&utm_source=kendoreact&utm_campaign=kendo-ui-react-purchase-license-keys-warning"},Ot=["bold","italic","underline","fontFamily","fontSize","color","background","textAlign","verticalAlign","wrap","gridLines"],Pt={Bold:t=>t.bold,Italic:t=>t.italic,Underline:t=>t.underline,FontFamily:t=>t.fontFamily,FontSize:t=>t.fontSize,IncreaseFontSize:t=>t.fontSize,DecreaseFontSize:t=>t.fontSize,TextColor:t=>t.color,BackgroundColor:t=>t.background,Alignment:t=>({textAlign:t.textAlign,verticalAlign:t.verticalAlign}),AlignHorizontally:t=>t.textAlign,AlignVertically:t=>t.verticalAlign,TextWrap:t=>t.wrap,GridLines:t=>t.gridLines,AddColumnLeft:t=>t.selectedHeaders,AddColumnRight:t=>t.selectedHeaders,AddRowBelow:t=>t.selectedHeaders,AddRowAbove:t=>t.selectedHeaders,DeleteColumn:t=>t.selectedHeaders,DeleteRow:t=>t.selectedHeaders},Mt=":not(.k-dropdownlist button):not(.k-combobox button):not(.k-upload-button):not(.k-colorpicker button):not(.k-split-button .k-split-button-arrow)",wn=["button"+Mt,".k-button-group > button"+Mt,".k-dropdownlist",".k-combobox",".k-colorpicker"],xe=e.forwardRef((t,n)=>{K.validatePackage(zt);const o=K.shouldShowValidationUI(zt),{toolbar:r=Ee}=t,a=[];typeof r=="boolean"?a.push(...r?Ee:[]):a.push(...r);const[s,d]=e.useState(null),[m,i]=e.useState(a.findIndex(u=>u.selected)||0),[v,E]=e.useState(!1),C=e.useRef(null),R=e.useRef(null),x=e.useRef(null),g=e.useRef(null),y=e.useRef(null),[b,D]=e.useState({}),z=e.useRef({});z.current=b;const p=e.useRef({});p.current=t;const k=L.useLocalization(),P=e.useCallback(u=>{p.current.onSelect&&p.current.onSelect.call(void 0,u)},[]),w=e.useCallback(u=>{p.current.onChange&&p.current.onChange.call(void 0,u)},[]),T=e.useCallback(u=>{p.current.onChangeFormat&&p.current.onChangeFormat.call(void 0,u)},[]),M=e.useCallback(u=>{p.current.onExcelImport&&p.current.onExcelImport.call(void 0,u)},[]),F=e.useCallback(u=>{p.current.onExcelExport&&p.current.onExcelExport.call(void 0,u)},[]),W=e.useRef(null);e.useImperativeHandle(W,()=>({element:C.current,get instance(){return y.current},props:t,get view(){return y.current.view},get workbook(){return y.current.workbook},executeCommand(u){var h;(h=y.current)==null||h.executeCommand(u)},fromJSON(u){var h;return(h=y.current)==null?void 0:h.fromJSON(u)},toJSON(){return y.current.toJSON()},saveJSON(){return y.current.saveJSON()},fromFile(u){return y.current.fromFile(u)},saveAsExcel(u){var h;(h=y.current)==null||h.saveAsExcel({...y.current.options.excel,saveAs:Ne.saveAs,Workbook:Ie.Workbook,...u})},activeSheet(u){var h;return(h=y.current)==null?void 0:h.activeSheet(u)},sheets(){return y.current.sheets()},refresh(){var u;return(u=y.current)==null?void 0:u.refresh()}}),[t]),e.useImperativeHandle(n,()=>W.current);const Nn=e.useCallback(()=>y.current&&y.current.view.nameEditor,[]),Bt=e.useCallback(u=>{const h={};Ot.forEach(A=>{typeof u.range[A]=="function"?h[A]=u.range[A]():A==="gridLines"&&(h[A]=u.range.sheet().showGridLines())}),h.selectedHeaders=u.range.sheet().selectedHeaders(),(Ot.some(A=>h[A]!==z.current[A])||h.selectedHeaders.allCols!==z.current.selectedHeaders.allCols||h.selectedHeaders.allRows!==z.current.selectedHeaders.allRows)&&D(h)},[]),In=e.useCallback(u=>{const h=u.name,A=c[h];d({title:u.title==="Error"?k.toLanguageString(c.error,I[c.error]||u.title):u.title,message:A?k.toLanguageString(A,I[A]||u.text):u.text,close:u.close})},[]),jt=e.useCallback(()=>{d(null),s==null||s.close()},[s]),_=L.useInternationalization(),Ht=L.useLocalization();e.useEffect(()=>{var q;const u={...t.defaultProps,sheets:structuredClone((q=t.defaultProps)==null?void 0:q.sheets),messages:{workbook:{defaultSheetName:Ht.toLanguageString(c.defaultSheetName,I[c.defaultSheetName])}},intl:{localeInfo:()=>_.localeInfo(),localeCurrency:()=>_.localeCurrency(),parseDate:(B,j)=>_.parseDate(B,j),toString:(B,j)=>_.toString(B,j),format:(B,...j)=>_.format(B,...j)},formulaBarInputRef:R,formulaCellInputRef:x,nameBoxRef:g},h=new S.SpreadsheetWidget(C.current,u);y.current=h,h.bind("select",P),h.bind("change",w),h.bind("changeFormat",T),h.bind("excelImport",M),h.bind("excelExport",F),h.view.bind("update",Bt),h.view.bind("message",In);const A=h.activeSheet();return A&&Bt({range:A.range(A.activeCell())}),E(!0),()=>{h.destroy()}},[]);const Ut=e.useCallback((u,h)=>{const A=e.createElement(u,{spreadsheetRef:y,value:Pt[u.displayName]?Pt[u.displayName](b):void 0,key:h});return A.type===N.ToolbarSeparator?e.createElement(u,{key:h}):A},[b]);let Wt=null;return a.length&&(Wt=e.createElement(we.TabStrip,{selected:m,animation:!1,className:"k-floatwrap k-spreadsheet-tabstrip",style:{minHeight:"auto"},onSelect:u=>i(u.selected)},a.map(u=>{const h=u.textKey?Ht.toLanguageString(u.textKey,I[u.textKey]):u.text;return e.createElement(we.TabStripTab,{key:u.textKey||u.text,title:h},e.createElement(N.Toolbar,{buttons:wn,className:"k-spreadsheet-toolbar"},u.tools.map((A,q)=>Array.isArray(A)?e.createElement(N.ButtonGroup,{key:q},A.map((B,j)=>Ut(B,j))):Ut(A,q))))}))),e.createElement("div",{ref:C,style:t.style,className:K.classNames("k-widget k-spreadsheet",t.className),role:"application"},Wt,e.createElement("div",{className:"k-spreadsheet-action-bar"},e.createElement(X,{ref:g,nameEditor:Nn}),e.createElement("div",{className:"k-spreadsheet-formula-bar"},e.createElement(K.IconWrap,{name:"formula-fx",icon:f.formulaFxIcon}),e.createElement(J,{ref:R}))),e.createElement("div",{className:"k-spreadsheet-view"},e.createElement("div",{className:"k-spreadsheet-fixed-container"}),e.createElement("div",{className:"k-spreadsheet-scroller"},e.createElement("div",{className:"k-spreadsheet-view-size"})),e.createElement("div",{tabIndex:0,className:"k-spreadsheet-clipboard",contentEditable:"true"}),e.createElement(J,{ref:x,className:"k-spreadsheet-cell-editor"})),e.createElement(Qt,{spreadsheetRef:y}),s&&e.createElement(ke.Dialog,{title:s.title,onClose:jt},e.createElement("div",null,s.message),e.createElement(ke.DialogActionsBar,{layout:"start"},e.createElement(N.Button,{themeColor:"primary",onClick:jt,autoFocus:!0},k.toLanguageString(c.ok,I[c.ok])))),o&&e.createElement(K.WatermarkOverlay,null))});xe.displayName="KendoReactSpreadsheet",xe.propTypes={className:O.string,defaultProps:O.any,toolbar:O.oneOfType([O.bool,O.arrayOf(O.any)]),style:O.object,onSelect:O.func,onChange:O.func,onChangeFormat:O.func,onExcelImport:O.func,onExcelExport:O.func};const kn=t=>{const{spreadsheetRef:n}=t,o=e.useCallback(()=>{n.current&&n.current.executeCommand({command:"PropertyCleanCommand"})},[]);return e.createElement(N.Button,{type:"button",icon:"clean-css",svgIcon:f.clearCssIcon,fillMode:"flat",onClick:o,title:L.useLocalization().toLanguageString(c.cleanFormatting,I[c.cleanFormatting])})};Object.defineProperty(l,"CalcError",{enumerable:!0,get:()=>S.CalcError}),Object.defineProperty(l,"CellRef",{enumerable:!0,get:()=>S.CellRef}),Object.defineProperty(l,"Context",{enumerable:!0,get:()=>S.Context}),Object.defineProperty(l,"Matrix",{enumerable:!0,get:()=>S.Matrix}),Object.defineProperty(l,"NULLREF",{enumerable:!0,get:()=>S.NULLREF}),Object.defineProperty(l,"NameRef",{enumerable:!0,get:()=>S.NameRef}),Object.defineProperty(l,"Range",{enumerable:!0,get:()=>S.Range}),Object.defineProperty(l,"RangeRef",{enumerable:!0,get:()=>S.RangeRef}),Object.defineProperty(l,"Ref",{enumerable:!0,get:()=>S.Ref}),Object.defineProperty(l,"Sheet",{enumerable:!0,get:()=>S.Sheet}),Object.defineProperty(l,"SpreadsheetWidget",{enumerable:!0,get:()=>S.SpreadsheetWidget}),Object.defineProperty(l,"UnionRef",{enumerable:!0,get:()=>S.UnionRef}),Object.defineProperty(l,"View",{enumerable:!0,get:()=>S.View}),Object.defineProperty(l,"Workbook",{enumerable:!0,get:()=>S.Workbook}),Object.defineProperty(l,"dateToSerial",{enumerable:!0,get:()=>S.dateToSerial}),Object.defineProperty(l,"defineAlias",{enumerable:!0,get:()=>S.defineAlias}),Object.defineProperty(l,"defineFunction",{enumerable:!0,get:()=>S.defineFunction}),Object.defineProperty(l,"packDate",{enumerable:!0,get:()=>S.packDate}),Object.defineProperty(l,"packTime",{enumerable:!0,get:()=>S.packTime}),Object.defineProperty(l,"serialToDate",{enumerable:!0,get:()=>S.serialToDate}),Object.defineProperty(l,"unpackDate",{enumerable:!0,get:()=>S.unpackDate}),Object.defineProperty(l,"unpackTime",{enumerable:!0,get:()=>S.unpackTime}),l.AddColumnLeft=pe,l.AddColumnRight=fe,l.AddRowAbove=be,l.AddRowBelow=ge,l.AlignHorizontally=Tt,l.AlignVertically=Ft,l.Alignment=Lt,l.BackgroundColor=ie,l.Bold=ee,l.CleanFormatting=kn,l.DecreaseFontSize=Dt,l.DeleteColumn=he,l.DeleteRow=ye,l.ExcelExport=Z,l.FontFamily=ae,l.FontSize=se,l.Format=me,l.GridLines=de,l.IncreaseFontSize=At,l.Italic=te,l.Open=Y,l.Redo=ve,l.Spreadsheet=xe,l.TextColor=ce,l.TextWrap=ue,l.Underline=ne,l.Undo=Ce,l.defaultTabs=Ee,Object.defineProperty(l,Symbol.toStringTag,{value:"Module"})});
package/index.d.mts CHANGED
@@ -1,5 +1,5 @@
1
1
  /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2023 Progress Software Corporation. All rights reserved.
2
+ * Copyright © 2024 Progress Software Corporation. All rights reserved.
3
3
  * Licensed under commercial license. See LICENSE.md in the package root for more information
4
4
  *-------------------------------------------------------------------------------------------*/
5
5
  export * from './index';
package/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2023 Progress Software Corporation. All rights reserved.
2
+ * Copyright © 2024 Progress Software Corporation. All rights reserved.
3
3
  * Licensed under commercial license. See LICENSE.md in the package root for more information
4
4
  *-------------------------------------------------------------------------------------------*/
5
5
  export { Spreadsheet } from './Spreadsheet';
package/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2023 Progress Software Corporation. All rights reserved.
2
+ * Copyright © 2024 Progress Software Corporation. All rights reserved.
3
3
  * Licensed under commercial license. See LICENSE.md in the package root for more information
4
4
  *-------------------------------------------------------------------------------------------*/
5
5
  "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const Vt=require("react"),B=require("prop-types"),I=require("@progress/kendo-react-buttons"),we=require("@progress/kendo-react-layout"),Re=require("@progress/kendo-react-dialogs"),_t=require("@progress/kendo-react-popup"),F=require("@progress/kendo-react-common"),p=require("@progress/kendo-svg-icons"),X=require("@progress/kendo-react-dropdowns"),A=require("@progress/kendo-react-intl"),qt=require("@progress/kendo-react-sortable"),R=require("@progress/kendo-spreadsheet-common"),Te=require("@progress/kendo-file-saver"),Fe=require("@progress/kendo-ooxml"),Jt=require("@progress/kendo-react-upload"),$t=require("@progress/kendo-react-inputs");function Gt(t){const n=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const a in t)if(a!=="default"){const l=Object.getOwnPropertyDescriptor(t,a);Object.defineProperty(n,a,l.get?l:{enumerable:!0,get:()=>t[a]})}}return n.default=t,Object.freeze(n)}const e=Gt(Vt),Z=e.forwardRef((t,n)=>{const a=e.useRef(null),l=e.useRef(null);return e.useImperativeHandle(a,()=>({element:l.current,props:t})),e.useImperativeHandle(n,()=>a.current),e.createElement("div",{className:"k-list k-list-md"},e.createElement("div",{className:"k-list-content"},e.createElement("ul",{ref:l,className:"k-spreadsheet-formula-list k-list-ul",onMouseDown:o=>o.preventDefault(),style:{maxHeight:280}},t.data.map(o=>e.createElement("li",{key:o.text,className:"k-list-item",onClick:()=>t.onItemClick(o.value)},e.createElement(F.IconWrap,{name:"formula-fx",icon:p.formulaFxIcon}),e.createElement("span",{className:"k-list-item-text"},o.text))))))});Z.displayName="List";Z.propTypes={};const _=e.forwardRef((t,n)=>{const[a,l]=e.useState(!1),[o,r]=e.useState(0),[u,d]=e.useState([]),s=e.useMemo(()=>({}),[]);s.showPopup=a,s.popupContentKey=o,s.data=u;const C=e.useRef(null),v=e.useRef(null),y=e.useRef(null),D=e.useCallback(()=>{if(y.current&&y.current.element)return y.current.element.querySelector(".k-focus")},[]),k=e.useCallback(()=>{const g=D();g&&g.classList.remove("k-focus")},[]),f=e.useCallback(g=>{const N=Array.from(y.current&&y.current.element.children||[]),z=D();let m;if(z){const S=N.indexOf(z);z.classList.remove("k-focus"),m=N[S+g]?N[S+g]:g===1?N[0]:N[N.length-1]}else m=g===1?N[0]:N[N.length-1];m&&m.classList.add("k-focus")},[]);e.useImperativeHandle(C,()=>({element:v.current,props:t,popup:{open:()=>{l(!0)},close:()=>{l(!1)},position:()=>{r(s.popupContentKey+1)},visible:()=>s.showPopup},list:{get element(){return y.current&&y.current.element},data:g=>{if(g)d(g);else return s.data},value:()=>({}),focus:()=>Array.from(y.current&&y.current.element&&y.current.element.children||[]).indexOf(D()),focusNext:()=>{f(1)},focusPrev:()=>{f(-1)},focusFirst:()=>{const g=y.current&&y.current.element;g&&g.children.item(0)&&(k(),g.children.item(0).classList.add("k-focus"))},focusLast:()=>{const g=y.current&&y.current.element;g&&g.children.length&&(k(),g.children.item(g.children.length-1).classList.add("k-focus"))},itemClick:g=>{s.itemClick=g}}}),[]),e.useImperativeHandle(n,()=>C.current,[]);const h=e.useCallback(g=>{s.itemClick&&s.itemClick(g)},[]);return e.createElement(e.Fragment,null,e.createElement("div",{className:F.classNames("k-spreadsheet-formula-input",t.className),contentEditable:"true",spellCheck:"false",style:{whiteSpace:"pre"},ref:v}),e.createElement(_t.Popup,{show:a,anchor:v.current,animate:{openDuration:100,closeDuration:100},contentKey:o,popupClass:"k-list-container"},e.createElement(Z,{data:u,ref:y,onItemClick:h})))});_.displayName="FormulaInput";_.propTypes={};const ze="spreadsheet.bold",Ke="spreadsheet.italic",Pe="spreadsheet.underline",Be="spreadsheet.openFile",Oe="spreadsheet.textColor",Me="spreadsheet.background",je="spreadsheet.addRowAbove",He="spreadsheet.addRowBelow",Ue="spreadsheet.addColumnLeft",We="spreadsheet.addColumnRight",Ve="spreadsheet.deleteRow",_e="spreadsheet.deleteColumn",qe="spreadsheet.undo",Je="spreadsheet.redo",$e="spreadsheet.fontSize",Ge="spreadsheet.fontSizeIncrease",Xe="spreadsheet.fontSizeDecrease",Ze="spreadsheet.fontName",Ye="spreadsheet.cleanFormatting",Qe="spreadsheet.format",et="spreadsheet.alignHorizontally",tt="spreadsheet.alignVertically",nt="spreadsheet.align",ot="spreadsheet.alignLeft",at="spreadsheet.alignRight",lt="spreadsheet.alignCenter",rt="spreadsheet.center",st="spreadsheet.alignJustify",ct="spreadsheet.justify",it="spreadsheet.alignTop",ut="spreadsheet.alignMiddle",dt="spreadsheet.alignBottom",mt="spreadsheet.increaseDecimal",pt="spreadsheet.decreaseDecimal",ft="spreadsheet.textWrap",gt="spreadsheet.gridLines",bt="spreadsheet.exportToExcel",ht="spreadsheet.nameBox",yt="spreadsheet.defaultSheetName",Ct="spreadsheet.home",vt="spreadsheet.file",kt="spreadsheet.insert",xt="spreadsheet.formatTab",St="spreadsheet.addNewSheet",It="spreadsheet.error",Et="spreadsheet.ok",wt="spreadsheet.modifyMerged",Rt="spreadsheet.cannotModifyDisabled",Nt="spreadsheet.openUnsupported",At="spreadsheet.duplicateSheetName",E={[ze]:"Bold",[Ke]:"Italic",[Pe]:"Underline",[qe]:"Undo",[Je]:"Redo",[$e]:"Font size",[Ge]:"Increase Font size",[Xe]:"Decrease Font size",[Ze]:"Font",[Ye]:"Clean formatting",[Qe]:"Custom format...",[et]:"Align horizontally",[tt]:"Align vertically",[nt]:"Align",[ot]:"Align left",[at]:"Align right",[lt]:"Align center",[st]:"Align justify",[rt]:"Center",[ct]:"Justify",[it]:"Align top",[ut]:"Align middle",[dt]:"Align bottom",[mt]:"Increase decimal",[pt]:"Decrease decimal",[Oe]:"Text Color",[Me]:"Background color",[je]:"Add row above",[He]:"Add row below",[Ue]:"Add column left",[We]:"Add column right",[Ve]:"Delete row",[_e]:"Delete column",[Be]:"Open...",[bt]:"Export to Excel",[ft]:"Text Wrap",[gt]:"Toggle gridlines",[ht]:"Name Box",[yt]:"Sheet",[Ct]:"Home",[vt]:"File",[kt]:"Insert",[St]:"Add new sheet",[xt]:"Format",[wt]:"Cannot change part of a merged cell.",[Rt]:"Cannot modify disabled cells.",[Nt]:"Unsupported format. Please select an .xlsx file.",[At]:"There is an existing sheet with this name. Please enter another name.",[It]:"Error",[Et]:"OK"},c={bold:ze,italic:Ke,underline:Pe,undo:qe,redo:Je,fontSize:$e,fontSizeIncrease:Ge,fontSizeDecrease:Xe,fontName:Ze,cleanFormatting:Ye,format:Qe,alignHorizontally:et,alignVertically:tt,align:nt,alignLeft:ot,alignRight:at,alignCenter:lt,center:rt,alignJustify:st,justify:ct,alignTop:it,alignMiddle:ut,alignBottom:dt,increaseDecimal:mt,decreaseDecimal:pt,textColor:Oe,background:Me,addRowAbove:je,addRowBelow:He,addColumnLeft:Ue,addColumnRight:We,deleteRow:Ve,deleteColumn:_e,open:Be,exportToExcel:bt,textWrap:ft,gridLines:gt,nameBox:ht,defaultSheetName:yt,file:vt,home:Ct,insert:kt,addNewSheet:St,error:It,ok:Et,modifyMerged:wt,cannotModifyDisabled:Rt,openUnsupported:Nt,duplicateSheetName:At,formatTab:xt},Y=e.forwardRef((t,n)=>{const a=e.useRef(null),l=e.useRef(null),[o,r]=e.useState([]),[u,d]=e.useState(!1),[s,C]=e.useState(""),v=e.useMemo(()=>({}),[]);v.data=o,e.useImperativeHandle(a,()=>({value:m=>{if(m===void 0){const S=l.current&&l.current.value;return S&&(S.name||S)}else C(m||"")}}),[]),e.useImperativeHandle(n,()=>a.current,[]);const y=e.useCallback(m=>{const S=t.nameEditor();S&&S.trigger("delete",{name:m})},[]),D=e.useCallback((m,S)=>{const K=e.createElement(e.Fragment,null,m.props.children,e.createElement("span",{role:"button",className:"k-button-delete",onClick:()=>y(S.dataItem[S.textField]),onMouseDown:x=>x.preventDefault(),onPointerDown:x=>x.preventDefault(),"data-role":"delete"},e.createElement(F.IconWrap,{name:"x",icon:p.xIcon})));return e.cloneElement(m,m.props,K)},[]),k=e.useCallback(m=>e.cloneElement(m,{...m.props},e.createElement("div",null)),[]),f=e.useCallback(m=>{if(m.syntheticEvent&&m.syntheticEvent.type==="change")return;const S=t.nameEditor();S&&(r(S.readData()),d(!0))},[]),h=e.useCallback(()=>{d(!1)},[]),g=e.useCallback(m=>{if(m.syntheticEvent.target.closest("[data-role]"))return;const S=t.nameEditor();if(S&&m.value){const K=m.value.name;K!==s&&(S.trigger("select",{name:K}),C(K))}},[s]),N=e.useCallback(m=>{const S=t.nameEditor();if(S)if(m.key==="Enter"){const K=m.target.value;S.trigger("enter",{value:K}),C(K)}else m.key==="Escape"&&(S.trigger("cancel"),C(v.prevValue))},[]),z=e.useCallback(m=>{v.prevValue=m.value.name},[]);return e.createElement("div",{className:"k-spreadsheet-name-editor",onKeyDown:N},e.createElement(X.ComboBox,{ref:l,title:A.useLocalization().toLanguageString(c.nameBox,E[c.nameBox]),popupSettings:{className:"k-spreadsheet-names-popup"},fillMode:"flat",clearButton:!1,dataItemKey:"name",textField:"name",itemRender:D,data:o,value:s?o.find(m=>m.name===s)||{name:s}:null,onChange:g,opened:u,onOpen:f,onClose:h,onFocus:z,listNoDataRender:k,allowCustom:!0}))});Y.displayName="NameBox";Y.propTypes={};const Xt={onSelect:()=>{},onDelete:()=>{},onEnterEdit:()=>{},onCancelEdit:()=>{},onExitEdit:()=>{},onEdit:()=>{}},Dt=e.createContext(Xt),Zt=t=>{const n=t.dataItem,{onSelect:a,onDelete:l,onEnterEdit:o,onExitEdit:r,onCancelEdit:u,onEdit:d}=e.useContext(Dt),s=e.useCallback(f=>{f.target instanceof HTMLElement&&f.target.nodeName==="INPUT"||a.call(void 0,n,f)},[n,a]),C=e.useCallback(f=>{l.call(void 0,n,f)},[n,l]),v=e.useCallback(f=>{f.target instanceof HTMLElement&&f.target.nodeName==="INPUT"||o.call(void 0,n,f)},[n,o]),y=e.useCallback(f=>{r.call(void 0,n,f)},[n,r]),D=e.useCallback(f=>{f.key==="Enter"?r.call(void 0,n,f):f.key==="Escape"&&u.call(void 0,n,f)},[n,r,u]),k=e.useCallback(f=>{d.call(void 0,{...n,text:f.target.value},f)},[n,d]);return e.createElement("li",{style:t.style,...t.attributes,ref:t.forwardRef,role:"tab",className:F.classNames("k-item k-tabstrip-item",{"k-disabled":t.isDisabled,"k-active k-state-tab-on-top k-spreadsheet-sheets-bar-active":n.active,"k-spreadsheet-sheets-bar-inactive":!n.active,"k-first":n.first,"k-last":n.last}),onClick:s,onDoubleClick:v},n.inEdit?e.createElement("input",{type:"text",className:"k-textbox k-spreadsheet-sheets-editor",value:n.text,onChange:k,maxLength:50,autoFocus:!0,onBlur:y,onKeyDown:D}):e.createElement(e.Fragment,null,e.createElement("span",{className:"k-link"},n.text),n.first&&n.last?null:e.createElement("span",{className:"k-link k-spreadsheet-sheets-remove",onClick:C},e.createElement(F.IconWrap,{name:"x",icon:p.xIcon}))))},Lt=e.forwardRef((t,n)=>{const{children:a,className:l,...o}=t;return e.createElement("ul",{className:F.classNames("k-tabstrip-items k-reset",l),role:"tablist",...o,ref:n},a)});Lt.displayName="TabsList";const Yt=t=>{const{sheets:n,setSheets:a,onSheetSelect:l,onSheetDelete:o,onSheetEdit:r,onSheetReorderEnd:u}=t,[d,s]=e.useState(null),C=e.useRef(!1),v=e.useRef(-1),y=e.useCallback(x=>{a(x.map((L,P,T)=>({...L,first:P===0,last:P===T.length-1})))},[]),D=e.useCallback(x=>{y(x.newState)},[y,u]),k=e.useCallback(x=>{u.call(void 0,x)},[u]),f=e.useCallback(x=>{C.current=!0,v.current=x.prevIndex},[]),h=e.useCallback(x=>{setTimeout(()=>{C.current=!1},50),u.call(void 0,{...x,prevIndex:v.current})},[]),g=e.useCallback((x,L)=>{C.current||l.call(void 0,x,L)},[l]),N=e.useCallback((x,L)=>{L.stopPropagation(),o.call(void 0,x)},[n,o]),z=e.useCallback((x,L)=>{L.stopPropagation(),L.preventDefault();const P=n.map(T=>({...T,active:T.id===x.id,inEdit:T.id===x.id}));a(P),s({...x})},[n]),m=e.useCallback((x,L)=>{L.stopPropagation(),L.preventDefault();const P=n.map(T=>({...T,inEdit:!1,text:T.inEdit&&d?d.text:T.text}));a(P),s(null)},[n,d]),S=e.useCallback((x,L)=>{L.stopPropagation(),L.preventDefault();const P=n.map(j=>({...j,inEdit:!1})),T=n.findIndex(j=>j.id===x.id);a(P),s(null),r.call(void 0,x,T)},[n,r]),K=e.useCallback((x,L)=>{L.stopPropagation(),L.preventDefault();const P=n.map(T=>({...T,text:x.id===T.id?x.text:T.text}));a(P)},[n]);return e.createElement("div",{className:"k-spreadsheet-sheets-items k-tabstrip k-floatwrap k-tabstrip-bottom"},e.createElement("div",{className:"k-tabstrip-items-wrapper k-hstack"},e.createElement(Dt.Provider,{value:{onSelect:g,onDelete:N,onEnterEdit:z,onCancelEdit:m,onExitEdit:S,onEdit:K}},e.createElement(qt.Sortable,{idField:"id",data:n,itemUI:Zt,itemsWrapUI:Lt,onDragOver:D,onNavigate:k,onDragStart:f,onDragEnd:h}))))},Qt=(t,n,a)=>t.map((l,o,r)=>({text:l.name(),id:a+"-sheet-"+o,first:o===0,last:o===r.length-1,active:l.name()===n})),en=t=>{const{spreadsheetRef:n}=t,[a,l]=e.useState([]),o=e.useRef((a.find(k=>k.active)||{}).text),r=F.useId(),u=e.useCallback(()=>{n.current&&(n.current.view.sheetsbar.onSheetSelect(o.current),l(Qt(n.current.sheets(),o.current,r)))},[]),d=e.useCallback(()=>{if(n.current){const k=n.current.sheets();k.find(f=>f.name()===o.current)||(o.current=k[k.length-1].name()),u()}},[]);e.useEffect(()=>(n.current&&(n.current.sheets().length&&(o.current=n.current.sheets()[0].name(),u()),n.current.view.bind("update",d)),()=>{n.current&&n.current.view.unbind("update",d)}),[n.current]);const s=e.useCallback(k=>{o.current!==k.text&&(o.current=k.text,u())},[]),C=e.useCallback(()=>{if(n.current){n.current.view.sheetsbar.onAddSelect();const k=n.current.sheets();o.current=k[k.length-1].name(),u()}},[]),v=e.useCallback(k=>{if(n.current){if(o.current===k.text){const f=n.current.sheets(),h=f.findIndex(N=>N.name()===k.text),g=f[h+1]||f[h-1];o.current=g?g.name():""}n.current.view.sheetsbar.onSheetRemove(k.text),u()}},[]),y=e.useCallback((k,f)=>{if(n.current){let h=k.text;const g=n.current.sheets(),N=g[f];if(!h){o.current=N.name(),u();return}if(N&&N.name()===h)return;g.find(z=>z.name()===h)&&(h=N.name()),n.current.view.sheetsbar.onSheetRename(h,f),o.current=h,u()}},[]),D=e.useCallback(k=>{if(n.current){const{prevIndex:f,nextIndex:h}=k;o.current=n.current.sheets()[f].name(),n.current.view.sheetsbar.onSheetReorderEnd({oldIndex:f,newIndex:h}),u()}},[]);return e.createElement("div",{className:"k-spreadsheet-sheets-bar k-header"},e.createElement(I.Button,{fillMode:"flat",icon:"plus",className:"k-spreadsheet-sheets-bar-add",title:A.useLocalization().toLanguageString(c.addNewSheet,E[c.addNewSheet]),svgIcon:p.plusIcon,onClick:C}),e.createElement(Yt,{sheets:a,setSheets:l,onSheetSelect:s,onSheetDelete:v,onSheetEdit:y,onSheetReorderEnd:D}))},Q=t=>{const{spreadsheetRef:n}=t,a=e.useCallback(()=>{n.current&&n.current.saveAsExcel({...n.current.options.excel,saveAs:Te.saveAs,Workbook:Fe.Workbook})},[]);return e.createElement(I.Button,{className:"k-toolbar-button",title:"Export...",icon:"download",fillMode:"flat",svgIcon:p.downloadIcon,onClick:a})};Q.displayName="ExcelExport";const ee=t=>{const{spreadsheetRef:n}=t,a=e.useCallback(o=>{const r=o.target;if(r instanceof Element&&r.parentNode){const u=r.closest(".k-toolbar"),d=u&&u.querySelector(".k-upload input");d&&d.click()}},[]),l=e.useCallback(o=>{const r=o.newState;if(r[0]&&r[0].getRawFile){const u=r[0].getRawFile();n.current&&n.current.executeCommand({command:"OpenCommand",options:{file:u}})}},[]);return e.createElement(e.Fragment,null,e.createElement(I.Button,{className:"k-toolbar-button",title:A.useLocalization().toLanguageString(c.open,E[c.open]),icon:"folder-open",svgIcon:p.folderOpenIcon,fillMode:"flat",onClick:a}),e.createElement("div",{style:{display:"none"}},e.createElement(Jt.Upload,{restrictions:{allowedExtensions:[".xlsx"]},onAdd:l,autoUpload:!1,defaultFiles:[],multiple:!1,accept:".xlsx,.XLSX",withCredentials:!1})))};ee.displayName="Open";const tn=["Arial","Courier New","Georgia","Times New Roman","Trebuchet MS","Verdana"],nn="Arial",on=[8,9,10,11,12,13,14,16,18,20,22,24,26,28,36,48,72],an=12,ln=[{text:"Automatic",value:null},{text:"Text",value:"@"},{text:"Number",value:"#,0.00"},{text:"Percent",value:"0.00%"},{text:"Financial",value:'_("$"* #,##0.00_);_("$"* (#,##0.00);_("$"* "-"??_);_(@_)'},{text:"Currency",value:"$#,##0.00;[Red]$#,##0.00"},{text:"Date",value:"m/d/yyyy"},{text:"Time",value:"h:mm:ss AM/PM"},{text:"Date time",value:"m/d/yyyy h:mm"},{text:"Duration",value:"[h]:mm:ss"}],te=t=>a=>{const{property:l,icon:o,svgIcon:r,titleKey:u}=t,{spreadsheetRef:d,value:s}=a,C=e.useCallback(()=>{if(d.current){const y={command:"PropertyChangeCommand",options:{property:l,value:!s}};d.current.executeCommand(y)}},[s]);return e.createElement(I.Button,{type:"button",icon:o,svgIcon:r,fillMode:"flat",togglable:!0,onClick:C,selected:s,title:A.useLocalization().toLanguageString(u,E[u])})},Tt=t=>a=>{const{property:l,titleKey:o,...r}=t,{spreadsheetRef:u,value:d}=a,s=e.useCallback(C=>{if(u.current){const v={command:"PropertyChangeCommand",options:{property:l,value:C.value||null}};u.current.executeCommand(v)}},[l]);return e.createElement($t.ColorPicker,{onChange:s,onActiveColorClick:s,fillMode:"flat",...r,title:A.useLocalization().toLanguageString(o,E[o]),value:d})},Ft=t=>a=>{const{spreadsheetRef:l}=a,o=e.useCallback(()=>{l.current&&l.current.workbook.undoRedoStack[t.action]()},[]);return e.createElement(I.Button,{type:"button",icon:t.icon,svgIcon:t.svgIcon,fillMode:"flat",title:A.useLocalization().toLanguageString(t.titleKey,E[t.titleKey]),onClick:o})},rn={property:"bold",icon:"bold",svgIcon:p.boldIcon,titleKey:c.bold},ne=te(rn);ne.displayName="Bold";const sn={property:"italic",icon:"italic",svgIcon:p.italicIcon,titleKey:c.italic},oe=te(sn);oe.displayName="Italic";const cn={property:"underline",icon:"underline",svgIcon:p.underlineIcon,titleKey:c.underline},ae=te(cn);ae.displayName="Underline";const le=t=>{const{spreadsheetRef:n,value:a}=t,l=e.useCallback(o=>{if(n.current){const r={command:"PropertyChangeCommand",options:{property:"fontFamily",value:o.value||null}};n.current.executeCommand(r)}},[]);return e.createElement(X.DropDownList,{onChange:l,value:a,data:tn,defaultValue:nn,fillMode:"flat",title:A.useLocalization().toLanguageString(c.fontName,E[c.fontName]),leftRightKeysNavigation:!1})};le.displayName="FontFamily";const q=1,J=409,$=t=>typeof t=="string"?parseFloat(t):t,re=t=>{const{spreadsheetRef:n}=t,a=$(t.value),l=e.useCallback(o=>{var d;let r=o.value?$(o.value):a;r=isNaN(r)?a:r,r=Math.min(J,Math.max(q,r));const u={command:"PropertyChangeCommand",options:{property:"fontSize",value:r}};o.nativeEvent.type==="keydown"||o.nativeEvent.type==="focusout"?(d=n.current)==null||d.executeCommand(u):setTimeout(()=>{var s;(s=n.current)==null||s.executeCommand(u)},0)},[a]);return e.createElement(X.ComboBox,{onChange:l,value:a,data:on,defaultValue:an,allowCustom:!0,fillMode:"flat",title:A.useLocalization().toLanguageString(c.fontSize,E[c.fontSize]),tabIndex:-1,clearButton:!1})};re.displayName="FontSize";const zt=t=>{const n=a=>{const{property:l,icon:o,svgIcon:r,titleKey:u,step:d}=t,{spreadsheetRef:s}=a,C=$(a.value),v=e.useCallback(()=>{var D;const y={command:"PropertyChangeCommand",options:{property:l,value:Math.min(J,Math.max(q,C+d))}};(D=s.current)==null||D.executeCommand(y)},[C]);return e.createElement(I.Button,{type:"button",icon:o,svgIcon:r,fillMode:"flat",onClick:v,disabled:C+d<q||C+d>J,title:A.useLocalization().toLanguageString(u,E[u])})};return n.displayName=t.displayName,n},Kt=zt({property:"fontSize",icon:"font-grow",svgIcon:p.fontGrowIcon,titleKey:c.fontSizeIncrease,displayName:"IncreaseFontSize",step:1}),Pt=zt({property:"fontSize",icon:"font-shrink",svgIcon:p.fontShrinkIcon,titleKey:c.fontSizeDecrease,displayName:"DecreaseFontSize",step:-1}),se=Tt({icon:"foreground-color",svgIcon:p.foregroundColorIcon,view:"palette",property:"color",titleKey:c.textColor,ariaLabel:"Text Color"});se.displayName="TextColor";const ce=Tt({icon:"droplet",svgIcon:p.dropletIcon,view:"palette",property:"background",titleKey:c.background,ariaLabel:"Background"});ce.displayName="BackgroundColor";const H=[{icon:"align-left",svgIcon:p.alignLeftIcon,textKey:c.alignLeft,commandName:"textAlign",value:"left",selected:!1},{icon:"align-center",svgIcon:p.alignCenterIcon,textKey:c.alignCenter,commandName:"textAlign",value:"center",selected:!1},{icon:"align-right",svgIcon:p.alignRightIcon,textKey:c.alignRight,commandName:"textAlign",value:"right",selected:!1},{icon:"align-justify",svgIcon:p.alignJustifyIcon,textKey:c.alignJustify,commandName:"textAlign",value:"justify",selected:!1},{icon:"align-top",svgIcon:p.alignTopIcon,textKey:c.alignTop,commandName:"verticalAlign",value:"top",selected:!1},{icon:"align-middle",svgIcon:p.alignMiddleIcon,textKey:c.alignMiddle,commandName:"verticalAlign",value:"center",selected:!1},{icon:"align-bottom",svgIcon:p.alignBottomIcon,textKey:c.alignBottom,commandName:"verticalAlign",value:"bottom",selected:!1}],un=[H[0],{...H[1],textKey:c.center},H[2],{...H[3],textKey:c.justify}],dn=H.filter(t=>t.commandName==="verticalAlign"),Bt=t=>{const{value:n,spreadsheetRef:a}=t,{textAlign:l,verticalAlign:o}=n||{},r=A.useLocalization(),u=e.useCallback(s=>{if(a.current){const C=s.item,v={command:"PropertyChangeCommand",options:{property:C.commandName,value:C.value||null}};a.current.executeCommand(v)}},[]);let d=H.slice();return d=d.map(s=>({...s,text:r.toLanguageString(s.textKey,E[s.textKey])})),l&&(d=d.map(s=>s.commandName==="textAlign"?{...s,selected:s.value===l}:s)),o&&(d=d.map(s=>s.commandName==="verticalAlign"?{...s,selected:s.value===o}:s)),e.createElement(I.DropDownButton,{icon:"align-left",svgIcon:p.alignLeftIcon,items:d,fillMode:"flat",onItemClick:u,title:r.toLanguageString(c.align,E[c.align]),text:e.createElement(F.IconWrap,{name:"caret-alt-down",icon:p.caretAltDownIcon})})};Bt.displayName="Alignment";const mn={items:un,icon:{icon:"align-left",svgIcon:p.alignLeftIcon},displayName:"AlignHorizontally",titleKey:c.alignHorizontally},pn={items:dn,icon:{icon:"align-bottom",svgIcon:p.alignBottomIcon},displayName:"AlignVertically",titleKey:c.alignVertically},Ot=t=>{const n=a=>{const{value:l,spreadsheetRef:o}=a,r=A.useLocalization(),u=e.useCallback(v=>{if(o.current){const y=v.item,D={command:"PropertyChangeCommand",options:{property:y.commandName,value:y.value||null}};o.current.executeCommand(D)}},[]);let d=t.items.slice();d=d.map(v=>({...v,text:r.toLanguageString(v.textKey,E[v.textKey])})),d=d.map(v=>({...v,selected:v.value===l}));const s={...t.icon},C=d.find(v=>v.selected);return C&&(s.icon=C.icon,s.svgIcon=C.svgIcon),e.createElement(I.DropDownButton,{...s,items:d,fillMode:"flat",onItemClick:u,title:r.toLanguageString(t.titleKey,E[t.titleKey]),text:e.createElement(F.IconWrap,{name:"caret-alt-down",icon:p.caretAltDownIcon})})};return n.displayName=t.displayName,n},Mt=Ot(mn),jt=Ot(pn),ie=t=>{const{value:n,spreadsheetRef:a}=t,l=e.useCallback(()=>{if(a.current){const o=a.current.activeSheet();if(o){const d={command:"TextWrapCommand",options:{property:"wrap",value:!o.range(o.activeCell()).wrap()}};a.current.executeCommand(d)}}},[]);return e.createElement(I.Button,{type:"button",togglable:!0,icon:"text-wrap",svgIcon:p.textWrapIcon,fillMode:"flat",title:A.useLocalization().toLanguageString(c.textWrap,E[c.textWrap]),onClick:l,selected:n})};ie.displayName="TextWrap";const ue=t=>{const{value:n,spreadsheetRef:a}=t,l=e.useCallback(()=>{if(a.current){const o=a.current.activeSheet();if(o){const u={command:"GridLinesChangeCommand",options:{property:"gridLines",value:!o.showGridLines()}};a.current.executeCommand(u)}}},[]);return e.createElement(I.Button,{type:"button",togglable:!0,icon:"borders-none",svgIcon:p.bordersNoneIcon,fillMode:"flat",title:A.useLocalization().toLanguageString(c.gridLines,E[c.gridLines]),onClick:l,selected:n})};ue.displayName="GridLines";const de=t=>{const{spreadsheetRef:n}=t,a=e.useCallback(l=>{const o=l.item.value||null;setTimeout(()=>{if(n.current){const r={command:"PropertyChangeCommand",options:{property:"format",value:o}};n.current.executeCommand(r)}},0)},[]);return e.createElement(I.DropDownButton,{icon:"custom-format",svgIcon:p.customFormatIcon,fillMode:"flat",onItemClick:a,items:ln,title:A.useLocalization().toLanguageString(c.format,E[c.format]),text:e.createElement(F.IconWrap,{name:"caret-alt-down"})})};de.displayName="Format";const U=t=>a=>{const{spreadsheetRef:l,value:o}=a,r=e.useCallback(()=>{if(l.current){const u={command:t.command,options:{value:t.value}};l.current.executeCommand(u)}},[]);return e.createElement(I.Button,{type:"button",icon:t.icon,svgIcon:t.svgIcon,fillMode:"flat",title:A.useLocalization().toLanguageString(t.titleKey,E[t.titleKey]),onClick:r,disabled:o&&t.disabled(o)})},fn={command:"AddColumnCommand",value:"left",icon:"table-column-insert-left",svgIcon:p.tableColumnInsertLeftIcon,titleKey:c.addColumnLeft,disabled:t=>t.allCols,displayName:"AddColumnLeft"},gn={command:"AddColumnCommand",value:"right",icon:"table-column-insert-right",svgIcon:p.tableColumnInsertRightIcon,titleKey:c.addColumnRight,disabled:t=>t.allCols,displayName:"AddColumnRight"},bn={command:"AddRowCommand",value:"below",icon:"table-row-insert-below",svgIcon:p.tableRowInsertBelowIcon,titleKey:c.addRowBelow,disabled:t=>t.allRows,displayName:"AddRowBelow"},hn={command:"AddRowCommand",value:"above",icon:"table-row-insert-above",svgIcon:p.tableRowInsertAboveIcon,titleKey:c.addRowAbove,disabled:t=>t.allRows,displayName:"AddRowAbove"},yn={command:"DeleteColumnCommand",icon:"table-column-delete",svgIcon:p.tableColumnDeleteIcon,titleKey:c.deleteColumn,disabled:t=>t.allCols,displayName:"DeleteColumn"},Cn={command:"DeleteRowCommand",icon:"table-row-delete",svgIcon:p.tableRowDeleteIcon,titleKey:c.deleteRow,disabled:t=>t.allRows,displayName:"DeleteRow"},me=U(fn),pe=U(gn),fe=U(bn),ge=U(hn),be=U(yn),he=U(Cn);me.displayName="AddColumnLeft";pe.displayName="AddColumnRight";fe.displayName="AddRowBelow";ge.displayName="AddRowAbove";be.displayName="DeleteColumn";he.displayName="DeleteRow";const vn={action:"undo",icon:"reset",svgIcon:p.arrowRotateCcwIcon,titleKey:c.undo},ye=Ft(vn);ye.displayName="Undo";const kn={action:"redo",icon:"reload",svgIcon:p.arrowRotateCwIcon,titleKey:c.redo},Ce=Ft(kn);Ce.displayName="Redo";const Ht=t=>a=>{const{icon:l,svgIcon:o,titleKey:r,value:u}=t,{spreadsheetRef:d}=a,s=e.useCallback(()=>{if(d.current){const C={command:"AdjustDecimalsCommand",options:{value:u}};d.current.executeCommand(C)}},[]);return e.createElement(I.Button,{type:"button",icon:l,svgIcon:o,fillMode:"flat",onClick:s,title:A.useLocalization().toLanguageString(r,E[r])})},xn=Ht({icon:p.decimalIncreaseIcon.name,svgIcon:p.decimalIncreaseIcon,value:1,titleKey:c.increaseDecimal}),Sn=Ht({icon:p.decimalDecreaseIcon.name,svgIcon:p.decimalDecreaseIcon,value:-1,titleKey:c.decreaseDecimal}),G=[{textKey:c.file,tools:[ee,Q]},{textKey:c.home,selected:!0,tools:[[ye,Ce],I.ToolbarSeparator,le,re,Kt,Pt,I.ToolbarSeparator,[ne,oe,ae],se,I.ToolbarSeparator,ce,I.ToolbarSeparator,Mt,jt,ie,I.ToolbarSeparator,ue]},{textKey:c.insert,tools:[[me,pe,fe,ge],I.ToolbarSeparator,[be,he]]},{textKey:c.formatTab,tools:[de,[Sn,xn]]}],Ne={name:"@progress/kendo-react-spreadsheet",productName:"KendoReact",productCodes:["KENDOUIREACT","KENDOUICOMPLETE"],publishDate:1683639393,version:"",licensingDocsUrl:"https://www.telerik.com/kendo-react-ui/my-license/?utm_medium=product&utm_source=kendoreact&utm_campaign=kendo-ui-react-purchase-license-keys-warning"},Ae=["bold","italic","underline","fontFamily","fontSize","color","background","textAlign","verticalAlign","wrap","gridLines"],De={Bold:t=>t.bold,Italic:t=>t.italic,Underline:t=>t.underline,FontFamily:t=>t.fontFamily,FontSize:t=>t.fontSize,IncreaseFontSize:t=>t.fontSize,DecreaseFontSize:t=>t.fontSize,TextColor:t=>t.color,BackgroundColor:t=>t.background,Alignment:t=>({textAlign:t.textAlign,verticalAlign:t.verticalAlign}),AlignHorizontally:t=>t.textAlign,AlignVertically:t=>t.verticalAlign,TextWrap:t=>t.wrap,GridLines:t=>t.gridLines,AddColumnLeft:t=>t.selectedHeaders,AddColumnRight:t=>t.selectedHeaders,AddRowBelow:t=>t.selectedHeaders,AddRowAbove:t=>t.selectedHeaders,DeleteColumn:t=>t.selectedHeaders,DeleteRow:t=>t.selectedHeaders},Le=":not(.k-dropdownlist button):not(.k-combobox button):not(.k-upload-button):not(.k-colorpicker button):not(.k-split-button .k-split-button-arrow)",In=["button"+Le,".k-button-group > button"+Le,".k-dropdownlist",".k-combobox",".k-colorpicker"],ve=e.forwardRef((t,n)=>{F.validatePackage(Ne);const a=F.shouldShowValidationUI(Ne),{toolbar:l=G}=t,o=[];typeof l=="boolean"?o.push(...l?G:[]):o.push(...l);const[r,u]=e.useState(null),[d,s]=e.useState(o.findIndex(i=>i.selected)||0),[C,v]=e.useState(!1),y=e.useRef(null),D=e.useRef(null),k=e.useRef(null),f=e.useRef(null),h=e.useRef(null),[g,N]=e.useState({}),z=e.useRef({});z.current=g;const m=e.useRef({});m.current=t;const S=A.useLocalization(),K=e.useCallback(i=>{m.current.onSelect&&m.current.onSelect.call(void 0,i)},[]),x=e.useCallback(i=>{m.current.onChange&&m.current.onChange.call(void 0,i)},[]),L=e.useCallback(i=>{m.current.onChangeFormat&&m.current.onChangeFormat.call(void 0,i)},[]),P=e.useCallback(i=>{m.current.onExcelImport&&m.current.onExcelImport.call(void 0,i)},[]),T=e.useCallback(i=>{m.current.onExcelExport&&m.current.onExcelExport.call(void 0,i)},[]),j=e.useRef(null);e.useImperativeHandle(j,()=>({element:y.current,get instance(){return h.current},props:t,get view(){return h.current.view},get workbook(){return h.current.workbook},executeCommand(i){var b;(b=h.current)==null||b.executeCommand(i)},fromJSON(i){var b;return(b=h.current)==null?void 0:b.fromJSON(i)},toJSON(){return h.current.toJSON()},saveJSON(){return h.current.saveJSON()},fromFile(i){return h.current.fromFile(i)},saveAsExcel(i){var b;(b=h.current)==null||b.saveAsExcel({...h.current.options.excel,saveAs:Te.saveAs,Workbook:Fe.Workbook,...i})},activeSheet(i){var b;return(b=h.current)==null?void 0:b.activeSheet(i)},sheets(){return h.current.sheets()},refresh(){var i;return(i=h.current)==null?void 0:i.refresh()}}),[t]),e.useImperativeHandle(n,()=>j.current);const Ut=e.useCallback(()=>h.current&&h.current.view.nameEditor,[]),ke=e.useCallback(i=>{const b={};Ae.forEach(w=>{typeof i.range[w]=="function"?b[w]=i.range[w]():w==="gridLines"&&(b[w]=i.range.sheet().showGridLines())}),b.selectedHeaders=i.range.sheet().selectedHeaders(),(Ae.some(w=>b[w]!==z.current[w])||b.selectedHeaders.allCols!==z.current.selectedHeaders.allCols||b.selectedHeaders.allRows!==z.current.selectedHeaders.allRows)&&N(b)},[]),Wt=e.useCallback(i=>{const b=i.name,w=c[b];u({title:i.title==="Error"?S.toLanguageString(c.error,E[c.error]||i.title):i.title,message:w?S.toLanguageString(w,E[w]||i.text):i.text,close:i.close})},[]),xe=e.useCallback(()=>{u(null),r==null||r.close()},[r]),W=A.useInternationalization(),Se=A.useLocalization();e.useEffect(()=>{var V;const i={...t.defaultProps,sheets:structuredClone((V=t.defaultProps)==null?void 0:V.sheets),messages:{workbook:{defaultSheetName:Se.toLanguageString(c.defaultSheetName,E[c.defaultSheetName])}},intl:{localeInfo:()=>W.localeInfo(),localeCurrency:()=>W.localeCurrency(),parseDate:(O,M)=>W.parseDate(O,M),toString:(O,M)=>W.toString(O,M),format:(O,...M)=>W.format(O,...M)},formulaBarInputRef:D,formulaCellInputRef:k,nameBoxRef:f},b=new R.SpreadsheetWidget(y.current,i);h.current=b,b.bind("select",K),b.bind("change",x),b.bind("changeFormat",L),b.bind("excelImport",P),b.bind("excelExport",T),b.view.bind("update",ke),b.view.bind("message",Wt);const w=b.activeSheet();return w&&ke({range:w.range(w.activeCell())}),v(!0),()=>{b.destroy()}},[]);const Ie=e.useCallback((i,b)=>{const w=e.createElement(i,{spreadsheetRef:h,value:De[i.displayName]?De[i.displayName](g):void 0,key:b});return w.type===I.ToolbarSeparator?e.createElement(i,{key:b}):w},[g]);let Ee=null;return o.length&&(Ee=e.createElement(we.TabStrip,{selected:d,animation:!1,className:"k-floatwrap k-spreadsheet-tabstrip",style:{minHeight:"auto"},onSelect:i=>s(i.selected)},o.map(i=>{const b=i.textKey?Se.toLanguageString(i.textKey,E[i.textKey]):i.text;return e.createElement(we.TabStripTab,{key:i.textKey||i.text,title:b},e.createElement(I.Toolbar,{buttons:In,className:"k-spreadsheet-toolbar"},i.tools.map((w,V)=>Array.isArray(w)?e.createElement(I.ButtonGroup,{key:V},w.map((O,M)=>Ie(O,M))):Ie(w,V))))}))),e.createElement("div",{ref:y,style:t.style,className:F.classNames("k-widget k-spreadsheet",t.className),role:"application"},Ee,e.createElement("div",{className:"k-spreadsheet-action-bar"},e.createElement(Y,{ref:f,nameEditor:Ut}),e.createElement("div",{className:"k-spreadsheet-formula-bar"},e.createElement(F.IconWrap,{name:"formula-fx",icon:p.formulaFxIcon}),e.createElement(_,{ref:D}))),e.createElement("div",{className:"k-spreadsheet-view"},e.createElement("div",{className:"k-spreadsheet-fixed-container"}),e.createElement("div",{className:"k-spreadsheet-scroller"},e.createElement("div",{className:"k-spreadsheet-view-size"})),e.createElement("div",{tabIndex:0,className:"k-spreadsheet-clipboard",contentEditable:"true"}),e.createElement(_,{ref:k,className:"k-spreadsheet-cell-editor"})),e.createElement(en,{spreadsheetRef:h}),r&&e.createElement(Re.Dialog,{title:r.title,onClose:xe},e.createElement("div",null,r.message),e.createElement(Re.DialogActionsBar,{layout:"start"},e.createElement(I.Button,{themeColor:"primary",onClick:xe,autoFocus:!0},S.toLanguageString(c.ok,E[c.ok])))),a&&e.createElement(F.WatermarkOverlay,null))});ve.displayName="KendoReactSpreadsheet";ve.propTypes={className:B.string,defaultProps:B.any,toolbar:B.oneOfType([B.bool,B.arrayOf(B.any)]),style:B.object,onSelect:B.func,onChange:B.func,onChangeFormat:B.func,onExcelImport:B.func,onExcelExport:B.func};const En=t=>{const{spreadsheetRef:n}=t,a=e.useCallback(()=>{n.current&&n.current.executeCommand({command:"PropertyCleanCommand"})},[]);return e.createElement(I.Button,{type:"button",icon:"clean-css",svgIcon:p.clearCssIcon,fillMode:"flat",onClick:a,title:A.useLocalization().toLanguageString(c.cleanFormatting,E[c.cleanFormatting])})};Object.defineProperty(exports,"CalcError",{enumerable:!0,get:()=>R.CalcError});Object.defineProperty(exports,"CellRef",{enumerable:!0,get:()=>R.CellRef});Object.defineProperty(exports,"Context",{enumerable:!0,get:()=>R.Context});Object.defineProperty(exports,"Matrix",{enumerable:!0,get:()=>R.Matrix});Object.defineProperty(exports,"NULLREF",{enumerable:!0,get:()=>R.NULLREF});Object.defineProperty(exports,"NameRef",{enumerable:!0,get:()=>R.NameRef});Object.defineProperty(exports,"Range",{enumerable:!0,get:()=>R.Range});Object.defineProperty(exports,"RangeRef",{enumerable:!0,get:()=>R.RangeRef});Object.defineProperty(exports,"Ref",{enumerable:!0,get:()=>R.Ref});Object.defineProperty(exports,"Sheet",{enumerable:!0,get:()=>R.Sheet});Object.defineProperty(exports,"SpreadsheetWidget",{enumerable:!0,get:()=>R.SpreadsheetWidget});Object.defineProperty(exports,"UnionRef",{enumerable:!0,get:()=>R.UnionRef});Object.defineProperty(exports,"View",{enumerable:!0,get:()=>R.View});Object.defineProperty(exports,"Workbook",{enumerable:!0,get:()=>R.Workbook});Object.defineProperty(exports,"dateToSerial",{enumerable:!0,get:()=>R.dateToSerial});Object.defineProperty(exports,"defineAlias",{enumerable:!0,get:()=>R.defineAlias});Object.defineProperty(exports,"defineFunction",{enumerable:!0,get:()=>R.defineFunction});Object.defineProperty(exports,"packDate",{enumerable:!0,get:()=>R.packDate});Object.defineProperty(exports,"packTime",{enumerable:!0,get:()=>R.packTime});Object.defineProperty(exports,"serialToDate",{enumerable:!0,get:()=>R.serialToDate});Object.defineProperty(exports,"unpackDate",{enumerable:!0,get:()=>R.unpackDate});Object.defineProperty(exports,"unpackTime",{enumerable:!0,get:()=>R.unpackTime});exports.AddColumnLeft=me;exports.AddColumnRight=pe;exports.AddRowAbove=ge;exports.AddRowBelow=fe;exports.AlignHorizontally=Mt;exports.AlignVertically=jt;exports.Alignment=Bt;exports.BackgroundColor=ce;exports.Bold=ne;exports.CleanFormatting=En;exports.DecreaseFontSize=Pt;exports.DeleteColumn=be;exports.DeleteRow=he;exports.ExcelExport=Q;exports.FontFamily=le;exports.FontSize=re;exports.Format=de;exports.GridLines=ue;exports.IncreaseFontSize=Kt;exports.Italic=oe;exports.Open=ee;exports.Redo=Ce;exports.Spreadsheet=ve;exports.TextColor=se;exports.TextWrap=ie;exports.Underline=ae;exports.Undo=ye;exports.defaultTabs=G;
package/index.mjs CHANGED
@@ -1,5 +1,5 @@
1
1
  /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2023 Progress Software Corporation. All rights reserved.
2
+ * Copyright © 2024 Progress Software Corporation. All rights reserved.
3
3
  * Licensed under commercial license. See LICENSE.md in the package root for more information
4
4
  *-------------------------------------------------------------------------------------------*/
5
5
  "use client";
@@ -1086,7 +1086,7 @@ const Ut = (t) => (a) => {
1086
1086
  name: "@progress/kendo-react-spreadsheet",
1087
1087
  productName: "KendoReact",
1088
1088
  productCodes: ["KENDOUIREACT", "KENDOUICOMPLETE"],
1089
- publishDate: 1703228011,
1089
+ publishDate: 1704296208,
1090
1090
  version: "",
1091
1091
  licensingDocsUrl: "https://www.telerik.com/kendo-react-ui/my-license/?utm_medium=product&utm_source=kendoreact&utm_campaign=kendo-ui-react-purchase-license-keys-warning"
1092
1092
  }, ie = ["bold", "italic", "underline", "fontFamily", "fontSize", "color", "background", "textAlign", "verticalAlign", "wrap", "gridLines"], de = {
package/messages.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2023 Progress Software Corporation. All rights reserved.
2
+ * Copyright © 2024 Progress Software Corporation. All rights reserved.
3
3
  * Licensed under commercial license. See LICENSE.md in the package root for more information
4
4
  *-------------------------------------------------------------------------------------------*/
5
5
  /**
@@ -1,5 +1,5 @@
1
1
  /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2023 Progress Software Corporation. All rights reserved.
2
+ * Copyright © 2024 Progress Software Corporation. All rights reserved.
3
3
  * Licensed under commercial license. See LICENSE.md in the package root for more information
4
4
  *-------------------------------------------------------------------------------------------*/
5
5
  import { PackageMetadata } from '@progress/kendo-licensing';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@progress/kendo-react-spreadsheet",
3
- "version": "7.0.3-develop.4",
3
+ "version": "7.0.3-develop.5",
4
4
  "description": "KendoReact Spreadsheet package",
5
5
  "author": "Progress",
6
6
  "license": "SEE LICENSE IN LICENSE.md",
@@ -29,16 +29,16 @@
29
29
  "@progress/kendo-file-saver": "^1.1.1",
30
30
  "@progress/kendo-licensing": "^1.3.4",
31
31
  "@progress/kendo-ooxml": "^1.7.0",
32
- "@progress/kendo-react-buttons": "7.0.3-develop.4",
33
- "@progress/kendo-react-common": "7.0.3-develop.4",
34
- "@progress/kendo-react-dialogs": "7.0.3-develop.4",
35
- "@progress/kendo-react-dropdowns": "7.0.3-develop.4",
36
- "@progress/kendo-react-inputs": "7.0.3-develop.4",
37
- "@progress/kendo-react-intl": "7.0.3-develop.4",
38
- "@progress/kendo-react-layout": "7.0.3-develop.4",
39
- "@progress/kendo-react-popup": "7.0.3-develop.4",
40
- "@progress/kendo-react-sortable": "7.0.3-develop.4",
41
- "@progress/kendo-react-upload": "7.0.3-develop.4",
32
+ "@progress/kendo-react-buttons": "7.0.3-develop.5",
33
+ "@progress/kendo-react-common": "7.0.3-develop.5",
34
+ "@progress/kendo-react-dialogs": "7.0.3-develop.5",
35
+ "@progress/kendo-react-dropdowns": "7.0.3-develop.5",
36
+ "@progress/kendo-react-inputs": "7.0.3-develop.5",
37
+ "@progress/kendo-react-intl": "7.0.3-develop.5",
38
+ "@progress/kendo-react-layout": "7.0.3-develop.5",
39
+ "@progress/kendo-react-popup": "7.0.3-develop.5",
40
+ "@progress/kendo-react-sortable": "7.0.3-develop.5",
41
+ "@progress/kendo-react-upload": "7.0.3-develop.5",
42
42
  "@progress/kendo-spreadsheet-common": "v1.1.1",
43
43
  "@progress/kendo-svg-icons": "^2.1.0",
44
44
  "react": "^16.8.2 || ^17.0.0 || ^18.0.0",
@@ -1,5 +1,5 @@
1
1
  /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2023 Progress Software Corporation. All rights reserved.
2
+ * Copyright © 2024 Progress Software Corporation. All rights reserved.
3
3
  * Licensed under commercial license. See LICENSE.md in the package root for more information
4
4
  *-------------------------------------------------------------------------------------------*/
5
5
  import * as React from 'react';
package/tools/align.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2023 Progress Software Corporation. All rights reserved.
2
+ * Copyright © 2024 Progress Software Corporation. All rights reserved.
3
3
  * Licensed under commercial license. See LICENSE.md in the package root for more information
4
4
  *-------------------------------------------------------------------------------------------*/
5
5
  import * as React from 'react';
@@ -1,5 +1,5 @@
1
1
  /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2023 Progress Software Corporation. All rights reserved.
2
+ * Copyright © 2024 Progress Software Corporation. All rights reserved.
3
3
  * Licensed under commercial license. See LICENSE.md in the package root for more information
4
4
  *-------------------------------------------------------------------------------------------*/
5
5
  import { ColorToolProps } from './utils';
package/tools/bold.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2023 Progress Software Corporation. All rights reserved.
2
+ * Copyright © 2024 Progress Software Corporation. All rights reserved.
3
3
  * Licensed under commercial license. See LICENSE.md in the package root for more information
4
4
  *-------------------------------------------------------------------------------------------*/
5
5
  import { PropertyChangeToolProps } from './utils';
@@ -1,5 +1,5 @@
1
1
  /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2023 Progress Software Corporation. All rights reserved.
2
+ * Copyright © 2024 Progress Software Corporation. All rights reserved.
3
3
  * Licensed under commercial license. See LICENSE.md in the package root for more information
4
4
  *-------------------------------------------------------------------------------------------*/
5
5
  import * as React from 'react';
@@ -1,5 +1,5 @@
1
1
  /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2023 Progress Software Corporation. All rights reserved.
2
+ * Copyright © 2024 Progress Software Corporation. All rights reserved.
3
3
  * Licensed under commercial license. See LICENSE.md in the package root for more information
4
4
  *-------------------------------------------------------------------------------------------*/
5
5
  import { SpreadsheetTab } from '../SpreadsheetProps';
package/tools/export.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2023 Progress Software Corporation. All rights reserved.
2
+ * Copyright © 2024 Progress Software Corporation. All rights reserved.
3
3
  * Licensed under commercial license. See LICENSE.md in the package root for more information
4
4
  *-------------------------------------------------------------------------------------------*/
5
5
  import * as React from 'react';
@@ -1,5 +1,5 @@
1
1
  /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2023 Progress Software Corporation. All rights reserved.
2
+ * Copyright © 2024 Progress Software Corporation. All rights reserved.
3
3
  * Licensed under commercial license. See LICENSE.md in the package root for more information
4
4
  *-------------------------------------------------------------------------------------------*/
5
5
  import * as React from 'react';
@@ -1,5 +1,5 @@
1
1
  /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2023 Progress Software Corporation. All rights reserved.
2
+ * Copyright © 2024 Progress Software Corporation. All rights reserved.
3
3
  * Licensed under commercial license. See LICENSE.md in the package root for more information
4
4
  *-------------------------------------------------------------------------------------------*/
5
5
  import * as React from 'react';
package/tools/format.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2023 Progress Software Corporation. All rights reserved.
2
+ * Copyright © 2024 Progress Software Corporation. All rights reserved.
3
3
  * Licensed under commercial license. See LICENSE.md in the package root for more information
4
4
  *-------------------------------------------------------------------------------------------*/
5
5
  import * as React from 'react';
@@ -1,5 +1,5 @@
1
1
  /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2023 Progress Software Corporation. All rights reserved.
2
+ * Copyright © 2024 Progress Software Corporation. All rights reserved.
3
3
  * Licensed under commercial license. See LICENSE.md in the package root for more information
4
4
  *-------------------------------------------------------------------------------------------*/
5
5
  import * as React from 'react';
package/tools/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2023 Progress Software Corporation. All rights reserved.
2
+ * Copyright © 2024 Progress Software Corporation. All rights reserved.
3
3
  * Licensed under commercial license. See LICENSE.md in the package root for more information
4
4
  *-------------------------------------------------------------------------------------------*/
5
5
  export * from './align';
package/tools/italic.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2023 Progress Software Corporation. All rights reserved.
2
+ * Copyright © 2024 Progress Software Corporation. All rights reserved.
3
3
  * Licensed under commercial license. See LICENSE.md in the package root for more information
4
4
  *-------------------------------------------------------------------------------------------*/
5
5
  import { PropertyChangeToolProps } from './utils';
package/tools/open.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2023 Progress Software Corporation. All rights reserved.
2
+ * Copyright © 2024 Progress Software Corporation. All rights reserved.
3
3
  * Licensed under commercial license. See LICENSE.md in the package root for more information
4
4
  *-------------------------------------------------------------------------------------------*/
5
5
  import * as React from 'react';
package/tools/redo.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2023 Progress Software Corporation. All rights reserved.
2
+ * Copyright © 2024 Progress Software Corporation. All rights reserved.
3
3
  * Licensed under commercial license. See LICENSE.md in the package root for more information
4
4
  *-------------------------------------------------------------------------------------------*/
5
5
  import { SpreadsheetToolProps } from './utils';
@@ -1,5 +1,5 @@
1
1
  /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2023 Progress Software Corporation. All rights reserved.
2
+ * Copyright © 2024 Progress Software Corporation. All rights reserved.
3
3
  * Licensed under commercial license. See LICENSE.md in the package root for more information
4
4
  *-------------------------------------------------------------------------------------------*/
5
5
  import * as React from 'react';
@@ -1,5 +1,5 @@
1
1
  /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2023 Progress Software Corporation. All rights reserved.
2
+ * Copyright © 2024 Progress Software Corporation. All rights reserved.
3
3
  * Licensed under commercial license. See LICENSE.md in the package root for more information
4
4
  *-------------------------------------------------------------------------------------------*/
5
5
  import { ColorToolProps } from './utils';
@@ -1,5 +1,5 @@
1
1
  /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2023 Progress Software Corporation. All rights reserved.
2
+ * Copyright © 2024 Progress Software Corporation. All rights reserved.
3
3
  * Licensed under commercial license. See LICENSE.md in the package root for more information
4
4
  *-------------------------------------------------------------------------------------------*/
5
5
  import * as React from 'react';
@@ -1,5 +1,5 @@
1
1
  /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2023 Progress Software Corporation. All rights reserved.
2
+ * Copyright © 2024 Progress Software Corporation. All rights reserved.
3
3
  * Licensed under commercial license. See LICENSE.md in the package root for more information
4
4
  *-------------------------------------------------------------------------------------------*/
5
5
  import { PropertyChangeToolProps } from './utils';
package/tools/undo.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2023 Progress Software Corporation. All rights reserved.
2
+ * Copyright © 2024 Progress Software Corporation. All rights reserved.
3
3
  * Licensed under commercial license. See LICENSE.md in the package root for more information
4
4
  *-------------------------------------------------------------------------------------------*/
5
5
  import { SpreadsheetToolProps } from './utils';
package/tools/utils.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  /**-----------------------------------------------------------------------------------------
2
- * Copyright © 2023 Progress Software Corporation. All rights reserved.
2
+ * Copyright © 2024 Progress Software Corporation. All rights reserved.
3
3
  * Licensed under commercial license. See LICENSE.md in the package root for more information
4
4
  *-------------------------------------------------------------------------------------------*/
5
5
  import * as React from 'react';