@progress/kendo-react-spreadsheet 8.1.0-develop.9 → 8.1.0

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/Spreadsheet.js CHANGED
@@ -5,4 +5,4 @@
5
5
  * Licensed under commercial license. See LICENSE.md in the package root for more information
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
8
- "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const te=require("react"),s=require("prop-types"),y=require("@progress/kendo-react-buttons"),L=require("@progress/kendo-react-layout"),z=require("@progress/kendo-react-dialogs"),P=require("./FormulaInput.js"),re=require("./NameBox.js"),ne=require("./SheetsBar.js"),oe=require("@progress/kendo-spreadsheet-common"),M=require("./tools/defaultTools.js"),h=require("@progress/kendo-react-common"),W=require("./package-metadata.js"),ae=require("@progress/kendo-svg-icons"),C=require("@progress/kendo-react-intl"),se=require("@progress/kendo-file-saver"),le=require("@progress/kendo-ooxml"),l=require("./messages.js");function ce(e){const g=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const m in e)if(m!=="default"){const f=Object.getOwnPropertyDescriptor(e,m);Object.defineProperty(g,m,f.get?f:{enumerable:!0,get:()=>e[m]})}}return g.default=e,Object.freeze(g)}const r=ce(te),j=["bold","italic","underline","fontFamily","fontSize","color","background","textAlign","verticalAlign","wrap","gridLines"],D={Bold:e=>e.bold,Italic:e=>e.italic,Underline:e=>e.underline,FontFamily:e=>e.fontFamily,FontSize:e=>e.fontSize,IncreaseFontSize:e=>e.fontSize,DecreaseFontSize:e=>e.fontSize,TextColor:e=>e.color,BackgroundColor:e=>e.background,Alignment:e=>({textAlign:e.textAlign,verticalAlign:e.verticalAlign}),AlignHorizontally:e=>e.textAlign,AlignVertically:e=>e.verticalAlign,TextWrap:e=>e.wrap,GridLines:e=>e.gridLines,AddColumnLeft:e=>e.selectedHeaders,AddColumnRight:e=>e.selectedHeaders,AddRowBelow:e=>e.selectedHeaders,AddRowAbove:e=>e.selectedHeaders,DeleteColumn:e=>e.selectedHeaders,DeleteRow:e=>e.selectedHeaders},J=":not(.k-dropdownlist button):not(.k-combobox button):not(.k-upload-button):not(.k-colorpicker button):not(.k-split-button .k-split-button-arrow)",ie=["button"+J,".k-button-group > button"+J,".k-dropdownlist",".k-combobox",".k-colorpicker"],w=r.forwardRef((e,g)=>{h.validatePackage(W.packageMetadata);const m=h.shouldShowValidationUI(W.packageMetadata),{toolbar:f=M.defaultTabs}=e,p=[];typeof f=="boolean"?p.push(...f?M.defaultTabs:[]):p.push(...f);const[i,N]=r.useState(null),[K,_]=r.useState(p.findIndex(t=>t.selected)||0),[ue,G]=r.useState(!1),v=r.useRef(null),R=r.useRef(null),I=r.useRef(null),A=r.useRef(null),a=r.useRef(null),[E,U]=r.useState({}),S=r.useRef({});S.current=E;const c=r.useRef({});c.current=e;const x=C.useLocalization(),V=r.useCallback(t=>{c.current.onSelect&&c.current.onSelect.call(void 0,t)},[]),Q=r.useCallback(t=>{c.current.onChange&&c.current.onChange.call(void 0,t)},[]),X=r.useCallback(t=>{c.current.onChangeFormat&&c.current.onChangeFormat.call(void 0,t)},[]),Y=r.useCallback(t=>{c.current.onExcelImport&&c.current.onExcelImport.call(void 0,t)},[]),Z=r.useCallback(t=>{c.current.onExcelExport&&c.current.onExcelExport.call(void 0,t)},[]),F=r.useRef(null);r.useImperativeHandle(F,()=>({element:v.current,get instance(){return a.current},props:e,get view(){return a.current.view},get workbook(){return a.current.workbook},executeCommand(t){var n;(n=a.current)==null||n.executeCommand(t)},fromJSON(t){var n;return(n=a.current)==null?void 0:n.fromJSON(t)},toJSON(){return a.current.toJSON()},saveJSON(){return a.current.saveJSON()},fromFile(t){return a.current.fromFile(t)},saveAsExcel(t){var n;(n=a.current)==null||n.saveAsExcel({...a.current.options.excel,saveAs:se.saveAs,Workbook:le.Workbook,...t})},activeSheet(t){var n;return(n=a.current)==null?void 0:n.activeSheet(t)},sheets(){return a.current.sheets()},refresh(){var t;return(t=a.current)==null?void 0:t.refresh()}}),[e]),r.useImperativeHandle(g,()=>F.current);const $=r.useCallback(()=>a.current&&a.current.view.nameEditor,[]),q=r.useCallback(t=>{const n={};j.forEach(o=>{typeof t.range[o]=="function"?n[o]=t.range[o]():o==="gridLines"&&(n[o]=t.range.sheet().showGridLines())}),n.selectedHeaders=t.range.sheet().selectedHeaders(),(j.some(o=>n[o]!==S.current[o])||n.selectedHeaders.allCols!==S.current.selectedHeaders.allCols||n.selectedHeaders.allRows!==S.current.selectedHeaders.allRows)&&U(n)},[]),ee=r.useCallback(t=>{const n=t.name,o=l.keys[n];N({title:t.title==="Error"?x.toLanguageString(l.keys.error,l.messages[l.keys.error]||t.title):t.title,message:o?x.toLanguageString(o,l.messages[o]||t.text):t.text,close:t.close})},[]),T=r.useCallback(()=>{N(null),i==null||i.close()},[i]),k=C.useInternationalization(),H=C.useLocalization();r.useEffect(()=>{var b;const t={...e.defaultProps,sheets:structuredClone((b=e.defaultProps)==null?void 0:b.sheets),messages:{workbook:{defaultSheetName:H.toLanguageString(l.keys.defaultSheetName,l.messages[l.keys.defaultSheetName])}},intl:{localeInfo:()=>k.localeInfo(),localeCurrency:()=>k.localeCurrency(),parseDate:(u,d)=>k.parseDate(u,d),toString:(u,d)=>k.toString(u,d),format:(u,...d)=>k.format(u,...d)},formulaBarInputRef:R,formulaCellInputRef:I,nameBoxRef:A},n=new oe.SpreadsheetWidget(v.current,t);a.current=n,n.bind("select",V),n.bind("change",Q),n.bind("changeFormat",X),n.bind("excelImport",Y),n.bind("excelExport",Z),n.view.bind("update",q),n.view.bind("message",ee);const o=n.activeSheet();return o&&q({range:o.range(o.activeCell())}),G(!0),()=>{n.destroy()}},[]);const O=r.useCallback((t,n)=>{const o=r.createElement(t,{spreadsheetRef:a,value:D[t.displayName]?D[t.displayName](E):void 0,key:n});return o.type===y.ToolbarSeparator?r.createElement(t,{key:n}):o},[E]);let B=null;return p.length&&(B=r.createElement(L.TabStrip,{selected:K,animation:!1,className:"k-floatwrap k-spreadsheet-tabstrip",style:{minHeight:"auto"},onSelect:t=>_(t.selected)},p.map(t=>{const n=t.textKey?H.toLanguageString(t.textKey,l.messages[t.textKey]):t.text;return r.createElement(L.TabStripTab,{key:t.textKey||t.text,title:n},r.createElement(y.Toolbar,{buttons:ie,className:"k-spreadsheet-toolbar"},t.tools.map((o,b)=>Array.isArray(o)?r.createElement(y.ButtonGroup,{key:b},o.map((u,d)=>O(u,d))):O(o,b))))}))),r.createElement("div",{ref:v,style:e.style,className:h.classNames("k-widget k-spreadsheet",e.className),role:"application"},B,r.createElement("div",{className:"k-spreadsheet-action-bar"},r.createElement(re.NameBox,{ref:A,nameEditor:$}),r.createElement("div",{className:"k-spreadsheet-formula-bar"},r.createElement(h.IconWrap,{name:"formula-fx",icon:ae.formulaFxIcon}),r.createElement(P.FormulaInput,{ref:R}))),r.createElement("div",{className:"k-spreadsheet-view"},r.createElement("div",{className:"k-spreadsheet-fixed-container"}),r.createElement("div",{className:"k-spreadsheet-scroller"},r.createElement("div",{className:"k-spreadsheet-view-size"})),r.createElement("div",{tabIndex:0,className:"k-spreadsheet-clipboard",contentEditable:"true"}),r.createElement(P.FormulaInput,{ref:I,className:"k-spreadsheet-cell-editor"})),r.createElement(ne.SheetsBar,{spreadsheetRef:a}),i&&r.createElement(z.Dialog,{title:i.title,onClose:T},r.createElement("div",null,i.message),r.createElement(z.DialogActionsBar,{layout:"start"},r.createElement(y.Button,{themeColor:"primary",onClick:T,autoFocus:!0},x.toLanguageString(l.keys.ok,l.messages[l.keys.ok])))),m&&r.createElement(h.WatermarkOverlay,null))});w.displayName="KendoReactSpreadsheet";w.propTypes={className:s.string,defaultProps:s.any,toolbar:s.oneOfType([s.bool,s.arrayOf(s.any)]),style:s.object,onSelect:s.func,onChange:s.func,onChangeFormat:s.func,onExcelImport:s.func,onExcelExport:s.func};exports.Spreadsheet=w;
8
+ "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const te=require("react"),s=require("prop-types"),y=require("@progress/kendo-react-buttons"),z=require("@progress/kendo-react-layout"),M=require("@progress/kendo-react-dialogs"),P=require("./FormulaInput.js"),re=require("./NameBox.js"),ne=require("./SheetsBar.js"),oe=require("@progress/kendo-spreadsheet-common"),W=require("./tools/defaultTools.js"),h=require("@progress/kendo-react-common"),j=require("./package-metadata.js"),ae=require("@progress/kendo-svg-icons"),C=require("@progress/kendo-react-intl"),se=require("@progress/kendo-file-saver"),le=require("@progress/kendo-ooxml"),l=require("./messages.js");function ce(e){const g=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const m in e)if(m!=="default"){const f=Object.getOwnPropertyDescriptor(e,m);Object.defineProperty(g,m,f.get?f:{enumerable:!0,get:()=>e[m]})}}return g.default=e,Object.freeze(g)}const r=ce(te),D=["bold","italic","underline","fontFamily","fontSize","color","background","textAlign","verticalAlign","wrap","gridLines"],w={Bold:e=>e.bold,Italic:e=>e.italic,Underline:e=>e.underline,FontFamily:e=>e.fontFamily,FontSize:e=>e.fontSize,IncreaseFontSize:e=>e.fontSize,DecreaseFontSize:e=>e.fontSize,TextColor:e=>e.color,BackgroundColor:e=>e.background,Alignment:e=>({textAlign:e.textAlign,verticalAlign:e.verticalAlign}),AlignHorizontally:e=>e.textAlign,AlignVertically:e=>e.verticalAlign,TextWrap:e=>e.wrap,GridLines:e=>e.gridLines,AddColumnLeft:e=>e.selectedHeaders,AddColumnRight:e=>e.selectedHeaders,AddRowBelow:e=>e.selectedHeaders,AddRowAbove:e=>e.selectedHeaders,DeleteColumn:e=>e.selectedHeaders,DeleteRow:e=>e.selectedHeaders},J=":not(.k-dropdownlist button):not(.k-combobox button):not(.k-upload-button):not(.k-colorpicker button):not(.k-split-button .k-split-button-arrow)",ue=["button"+J,".k-button-group > button"+J,".k-dropdownlist",".k-combobox",".k-colorpicker"],N=r.forwardRef((e,g)=>{h.validatePackage(j.packageMetadata);const m=h.shouldShowValidationUI(j.packageMetadata),{toolbar:f=W.defaultTabs}=e,p=[];typeof f=="boolean"?p.push(...f?W.defaultTabs:[]):p.push(...f);const[u,R]=r.useState(null),[K,V]=r.useState(p.findIndex(t=>t.selected)||0),[ie,_]=r.useState(!1),v=r.useRef(null),I=r.useRef(null),A=r.useRef(null),F=r.useRef(null),a=r.useRef(null),[E,G]=r.useState({}),S=r.useRef({});S.current=E;const c=r.useRef({});c.current=e;const x=C.useLocalization(),U=r.useCallback(t=>{c.current.onSelect&&c.current.onSelect.call(void 0,t)},[]),Q=r.useCallback(t=>{c.current.onChange&&c.current.onChange.call(void 0,t)},[]),X=r.useCallback(t=>{c.current.onChangeFormat&&c.current.onChangeFormat.call(void 0,t)},[]),Y=r.useCallback(t=>{c.current.onExcelImport&&c.current.onExcelImport.call(void 0,t)},[]),Z=r.useCallback(t=>{c.current.onExcelExport&&c.current.onExcelExport.call(void 0,t)},[]),q=r.useRef(null);r.useImperativeHandle(q,()=>({element:v.current,get instance(){return a.current},props:e,get view(){return a.current.view},get workbook(){return a.current.workbook},executeCommand(t){var n;(n=a.current)==null||n.executeCommand(t)},fromJSON(t){var n;return(n=a.current)==null?void 0:n.fromJSON(t)},toJSON(){return a.current.toJSON()},saveJSON(){return a.current.saveJSON()},fromFile(t){return a.current.fromFile(t)},saveAsExcel(t){var n;(n=a.current)==null||n.saveAsExcel({...a.current.options.excel,saveAs:se.saveAs,Workbook:le.Workbook,...t})},activeSheet(t){var n;return(n=a.current)==null?void 0:n.activeSheet(t)},sheets(){return a.current.sheets()},refresh(){var t;return(t=a.current)==null?void 0:t.refresh()}}),[e]),r.useImperativeHandle(g,()=>q.current);const $=r.useCallback(()=>a.current&&a.current.view.nameEditor,[]),T=r.useCallback(t=>{const n={};D.forEach(o=>{typeof t.range[o]=="function"?n[o]=t.range[o]():o==="gridLines"&&(n[o]=t.range.sheet().showGridLines())}),n.selectedHeaders=t.range.sheet().selectedHeaders(),(D.some(o=>n[o]!==S.current[o])||n.selectedHeaders.allCols!==S.current.selectedHeaders.allCols||n.selectedHeaders.allRows!==S.current.selectedHeaders.allRows)&&G(n)},[]),ee=r.useCallback(t=>{const n=t.name,o=l.keys[n];R({title:t.title==="Error"?x.toLanguageString(l.keys.error,l.messages[l.keys.error]||t.title):t.title,message:o?x.toLanguageString(o,l.messages[o]||t.text):t.text,close:t.close})},[]),H=r.useCallback(()=>{R(null),u==null||u.close()},[u]),k=C.useInternationalization(),O=C.useLocalization();r.useEffect(()=>{var b;const t={...e.defaultProps,sheets:structuredClone((b=e.defaultProps)==null?void 0:b.sheets),messages:{workbook:{defaultSheetName:O.toLanguageString(l.keys.defaultSheetName,l.messages[l.keys.defaultSheetName])}},intl:{localeInfo:()=>k.localeInfo(),localeCurrency:()=>k.localeCurrency(),parseDate:(i,d)=>k.parseDate(i,d),toString:(i,d)=>k.toString(i,d),format:(i,...d)=>k.format(i,...d)},formulaBarInputRef:I,formulaCellInputRef:A,nameBoxRef:F},n=new oe.SpreadsheetWidget(v.current,t);a.current=n,n.bind("select",U),n.bind("change",Q),n.bind("changeFormat",X),n.bind("excelImport",Y),n.bind("excelExport",Z),n.view.bind("update",T),n.view.bind("message",ee);const o=n.activeSheet();return o&&T({range:o.range(o.activeCell())}),_(!0),()=>{n.destroy()}},[]);const B=r.useCallback((t,n)=>{const o=r.createElement(t,{spreadsheetRef:a,value:w[t.displayName]?w[t.displayName](E):void 0,key:n});return o.type===y.ToolbarSeparator?r.createElement(t,{key:n}):o},[E]);let L=null;return p.length&&(L=r.createElement(z.TabStrip,{selected:K,animation:!1,className:"k-floatwrap k-spreadsheet-tabstrip",style:{minHeight:"auto"},onSelect:t=>V(t.selected)},p.map(t=>{const n=t.textKey?O.toLanguageString(t.textKey,l.messages[t.textKey]):t.text;return r.createElement(z.TabStripTab,{key:t.textKey||t.text,title:n},r.createElement(y.Toolbar,{buttons:ue,className:"k-spreadsheet-toolbar"},t.tools.map((o,b)=>Array.isArray(o)?r.createElement(y.ButtonGroup,{key:b},o.map((i,d)=>B(i,d))):B(o,b))))}))),r.createElement("div",{ref:v,style:e.style,className:h.classNames("k-widget k-spreadsheet",e.className),role:"application"},L,r.createElement("div",{className:"k-spreadsheet-action-bar"},r.createElement(re.NameBox,{ref:F,nameEditor:$}),r.createElement("div",{className:"k-spreadsheet-formula-bar"},r.createElement(h.IconWrap,{name:"formula-fx",icon:ae.formulaFxIcon}),r.createElement(P.FormulaInput,{ref:I}))),r.createElement("div",{className:"k-spreadsheet-view"},r.createElement("div",{className:"k-spreadsheet-fixed-container"}),r.createElement("div",{className:"k-spreadsheet-scroller"},r.createElement("div",{className:"k-spreadsheet-view-size"})),r.createElement("div",{tabIndex:0,className:"k-spreadsheet-clipboard",contentEditable:"true"}),r.createElement(P.FormulaInput,{ref:A,className:"k-spreadsheet-cell-editor"})),r.createElement(ne.SheetsBar,{spreadsheetRef:a}),u&&r.createElement(M.Dialog,{title:u.title,onClose:H},r.createElement("div",null,u.message),r.createElement(M.DialogActionsBar,{layout:"start"},r.createElement(y.Button,{themeColor:"primary",onClick:H,autoFocus:!0},x.toLanguageString(l.keys.ok,l.messages[l.keys.ok])))),m&&r.createElement(h.WatermarkOverlay,null))});N.displayName="KendoReactSpreadsheet";N.propTypes={className:s.string,defaultProps:s.any,toolbar:s.oneOfType([s.bool,s.arrayOf(s.any)]),style:s.object,onSelect:s.func,onChange:s.func,onChangeFormat:s.func,onExcelImport:s.func,onExcelExport:s.func};exports.Spreadsheet=N;exports.toolsValueMap=w;
package/Spreadsheet.mjs CHANGED
@@ -223,5 +223,6 @@ W.propTypes = {
223
223
  onExcelExport: l.func
224
224
  };
225
225
  export {
226
- W as Spreadsheet
226
+ W as Spreadsheet,
227
+ O as toolsValueMap
227
228
  };
@@ -5,4 +5,4 @@
5
5
  * Licensed under commercial license. See LICENSE.md in the package root for more information
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
8
- !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(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")):"function"==typeof define&&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"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).KendoReactSpreadsheet={},e.React,e.PropTypes,e.KendoReactButtons,e.KendoReactLayout,e.KendoReactDialogs,e.KendoReactPopup,e.KendoReactCommon,e.KendoSvgIcons,e.KendoReactDropdowns,e.KendoReactIntl,e.KendoReactSortable,e.KendoSpreadsheetCommon,e.KendoFileSaver,e.KendoOoxml,e.KendoReactUpload,e.KendoReactInputs)}(this,(function(e,t,n,a,o,r,l,s,c,i,d,u,m,p,g,f,b){"use strict";function v(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(n){if("default"!==n){var a=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,a.get?a:{enumerable:!0,get:function(){return e[n]}})}})),t.default=e,Object.freeze(t)}var h=v(t);const y=h.forwardRef(((e,t)=>{const n=h.useRef(null),a=h.useRef(null);return h.useImperativeHandle(n,(()=>({element:a.current,props:e}))),h.useImperativeHandle(t,(()=>n.current)),h.createElement("div",{className:"k-list k-list-md"},h.createElement("div",{className:"k-list-content"},h.createElement("ul",{ref:a,className:"k-spreadsheet-formula-list k-list-ul",onMouseDown:e=>e.preventDefault(),style:{maxHeight:280}},e.data.map((t=>h.createElement("li",{key:t.text,className:"k-list-item",onClick:()=>e.onItemClick(t.value)},h.createElement(s.IconWrap,{name:"formula-fx",icon:c.formulaFxIcon}),h.createElement("span",{className:"k-list-item-text"},t.text)))))))}));y.displayName="List",y.propTypes={};const k=h.forwardRef(((e,t)=>{const[n,a]=h.useState(!1),[o,r]=h.useState(0),[c,i]=h.useState([]),d=h.useMemo((()=>({})),[]);d.showPopup=n,d.popupContentKey=o,d.data=c;const u=h.useRef(null),m=h.useRef(null),p=h.useRef(null),g=h.useCallback((()=>{if(p.current&&p.current.element)return p.current.element.querySelector(".k-focus")}),[]),f=h.useCallback((()=>{const e=g();e&&e.classList.remove("k-focus")}),[]),b=h.useCallback((e=>{const t=Array.from(p.current&&p.current.element.children||[]),n=g();let a;if(n){const o=t.indexOf(n);n.classList.remove("k-focus"),a=t[o+e]?t[o+e]:1===e?t[0]:t[t.length-1]}else a=1===e?t[0]:t[t.length-1];a&&a.classList.add("k-focus")}),[]);h.useImperativeHandle(u,(()=>({element:m.current,props:e,popup:{open:()=>{a(!0)},close:()=>{a(!1)},position:()=>{r(d.popupContentKey+1)},visible:()=>d.showPopup},list:{get element(){return p.current&&p.current.element},data:e=>{if(!e)return d.data;i(e)},value:()=>({}),focus:()=>Array.from(p.current&&p.current.element&&p.current.element.children||[]).indexOf(g()),focusNext:()=>{b(1)},focusPrev:()=>{b(-1)},focusFirst:()=>{const e=p.current&&p.current.element;e&&e.children.item(0)&&(f(),e.children.item(0).classList.add("k-focus"))},focusLast:()=>{const e=p.current&&p.current.element;e&&e.children.length&&(f(),e.children.item(e.children.length-1).classList.add("k-focus"))},itemClick:e=>{d.itemClick=e}}})),[]),h.useImperativeHandle(t,(()=>u.current),[]);const v=h.useCallback((e=>{d.itemClick&&d.itemClick(e)}),[]);return h.createElement(h.Fragment,null,h.createElement("div",{className:s.classNames("k-spreadsheet-formula-input",e.className),contentEditable:"true",spellCheck:"false",style:{whiteSpace:"pre"},ref:m}),h.createElement(l.Popup,{show:n,anchor:m.current,animate:{openDuration:100,closeDuration:100},contentKey:o,popupClass:"k-list-container"},h.createElement(y,{data:c,ref:p,onItemClick:v})))}));k.displayName="FormulaInput",k.propTypes={};const C="spreadsheet.bold",x="spreadsheet.italic",E="spreadsheet.underline",I="spreadsheet.openFile",S="spreadsheet.textColor",w="spreadsheet.background",R="spreadsheet.addRowAbove",N="spreadsheet.addRowBelow",A="spreadsheet.addColumnLeft",L="spreadsheet.addColumnRight",D="spreadsheet.deleteRow",K="spreadsheet.deleteColumn",F="spreadsheet.undo",T="spreadsheet.redo",z="spreadsheet.fontSize",P="spreadsheet.fontSizeIncrease",B="spreadsheet.fontSizeDecrease",O="spreadsheet.fontName",M="spreadsheet.cleanFormatting",j="spreadsheet.format",H="spreadsheet.alignHorizontally",W="spreadsheet.alignVertically",U="spreadsheet.align",q="spreadsheet.alignLeft",V="spreadsheet.alignRight",J="spreadsheet.alignCenter",_="spreadsheet.center",G="spreadsheet.alignJustify",$="spreadsheet.justify",X="spreadsheet.alignTop",Q="spreadsheet.alignMiddle",Y="spreadsheet.alignBottom",Z="spreadsheet.increaseDecimal",ee="spreadsheet.decreaseDecimal",te="spreadsheet.textWrap",ne="spreadsheet.gridLines",ae="spreadsheet.exportToExcel",oe="spreadsheet.nameBox",re="spreadsheet.defaultSheetName",le="spreadsheet.home",se="spreadsheet.file",ce="spreadsheet.insert",ie="spreadsheet.formatTab",de="spreadsheet.addNewSheet",ue="spreadsheet.error",me="spreadsheet.ok",pe="spreadsheet.modifyMerged",ge="spreadsheet.cannotModifyDisabled",fe="spreadsheet.openUnsupported",be="spreadsheet.duplicateSheetName",ve={[C]:"Bold",[x]:"Italic",[E]:"Underline",[F]:"Undo",[T]:"Redo",[z]:"Font size",[P]:"Increase Font size",[B]:"Decrease Font size",[O]:"Font",[M]:"Clean formatting",[j]:"Custom format...",[H]:"Align horizontally",[W]:"Align vertically",[U]:"Align",[q]:"Align left",[V]:"Align right",[J]:"Align center",[G]:"Align justify",[_]:"Center",[$]:"Justify",[X]:"Align top",[Q]:"Align middle",[Y]:"Align bottom",[Z]:"Increase decimal",[ee]:"Decrease decimal",[S]:"Text Color",[w]:"Background color",[R]:"Add row above",[N]:"Add row below",[A]:"Add column left",[L]:"Add column right",[D]:"Delete row",[K]:"Delete column",[I]:"Open...",[ae]:"Export to Excel",[te]:"Text Wrap",[ne]:"Toggle gridlines",[oe]:"Name Box",[re]:"Sheet",[le]:"Home",[se]:"File",[ce]:"Insert",[de]:"Add new sheet",[ie]:"Format",[pe]:"Cannot change part of a merged cell.",[ge]:"Cannot modify disabled cells.",[fe]:"Unsupported format. Please select an .xlsx file.",[be]:"There is an existing sheet with this name. Please enter another name.",[ue]:"Error",[me]:"OK"},he={bold:C,italic:x,underline:E,undo:F,redo:T,fontSize:z,fontSizeIncrease:P,fontSizeDecrease:B,fontName:O,cleanFormatting:M,format:j,alignHorizontally:H,alignVertically:W,align:U,alignLeft:q,alignRight:V,alignCenter:J,center:_,alignJustify:G,justify:$,alignTop:X,alignMiddle:Q,alignBottom:Y,increaseDecimal:Z,decreaseDecimal:ee,textColor:S,background:w,addRowAbove:R,addRowBelow:N,addColumnLeft:A,addColumnRight:L,deleteRow:D,deleteColumn:K,open:I,exportToExcel:ae,textWrap:te,gridLines:ne,nameBox:oe,defaultSheetName:re,file:se,home:le,insert:ce,addNewSheet:de,error:ue,ok:me,modifyMerged:pe,cannotModifyDisabled:ge,openUnsupported:fe,duplicateSheetName:be,formatTab:ie},ye=h.forwardRef(((e,t)=>{const n=h.useRef(null),a=h.useRef(null),[o,r]=h.useState([]),[l,u]=h.useState(!1),[m,p]=h.useState(""),g=h.useMemo((()=>({})),[]);g.data=o,h.useImperativeHandle(n,(()=>({value:e=>{if(void 0===e){const e=a.current&&a.current.value;return e&&(e.name||e)}p(e||"")}})),[]),h.useImperativeHandle(t,(()=>n.current),[]);const f=h.useCallback((t=>{const n=e.nameEditor();n&&n.trigger("delete",{name:t})}),[]),b=h.useCallback(((e,t)=>{const n=h.createElement(h.Fragment,null,e.props.children,h.createElement("span",{role:"button",className:"k-button-delete",onClick:()=>f(t.dataItem[t.textField]),onMouseDown:e=>e.preventDefault(),onPointerDown:e=>e.preventDefault(),"data-role":"delete"},h.createElement(s.IconWrap,{name:"x",icon:c.xIcon})));return h.cloneElement(e,e.props,n)}),[]),v=h.useCallback((e=>h.cloneElement(e,{...e.props},h.createElement("div",null))),[]),y=h.useCallback((t=>{if(t.syntheticEvent&&"change"===t.syntheticEvent.type)return;const n=e.nameEditor();n&&(r(n.readData()),u(!0))}),[]),k=h.useCallback((()=>{u(!1)}),[]),C=h.useCallback((t=>{if(t.syntheticEvent.target.closest("[data-role]"))return;const n=e.nameEditor();if(n&&t.value){const e=t.value.name;e!==m&&(n.trigger("select",{name:e}),p(e))}}),[m]),x=h.useCallback((t=>{const n=e.nameEditor();if(n)if("Enter"===t.key){const e=t.target.value;n.trigger("enter",{value:e}),p(e)}else"Escape"===t.key&&(n.trigger("cancel"),p(g.prevValue))}),[]),E=h.useCallback((e=>{g.prevValue=e.value.name}),[]);return h.createElement("div",{className:"k-spreadsheet-name-editor",onKeyDown:x},h.createElement(i.ComboBox,{ref:a,title:d.useLocalization().toLanguageString(he.nameBox,ve[he.nameBox]),popupSettings:{className:"k-spreadsheet-names-popup"},fillMode:"flat",clearButton:!1,dataItemKey:"name",textField:"name",itemRender:b,data:o,value:m?o.find((e=>e.name===m))||{name:m}:null,onChange:C,opened:l,onOpen:y,onClose:k,onFocus:E,listNoDataRender:v,allowCustom:!0}))}));ye.displayName="NameBox",ye.propTypes={};const ke=h.createContext({onSelect:()=>{},onDelete:()=>{},onEnterEdit:()=>{},onCancelEdit:()=>{},onExitEdit:()=>{},onEdit:()=>{}}),Ce=e=>{const t=e.dataItem,{onSelect:n,onDelete:a,onEnterEdit:o,onExitEdit:r,onCancelEdit:l,onEdit:i}=h.useContext(ke),d=h.useCallback((e=>{e.target instanceof HTMLElement&&"INPUT"===e.target.nodeName||n.call(void 0,t,e)}),[t,n]),u=h.useCallback((e=>{a.call(void 0,t,e)}),[t,a]),m=h.useCallback((e=>{e.target instanceof HTMLElement&&"INPUT"===e.target.nodeName||o.call(void 0,t,e)}),[t,o]),p=h.useCallback((e=>{r.call(void 0,t,e)}),[t,r]),g=h.useCallback((e=>{"Enter"===e.key?r.call(void 0,t,e):"Escape"===e.key&&l.call(void 0,t,e)}),[t,r,l]),f=h.useCallback((e=>{i.call(void 0,{...t,text:e.target.value},e)}),[t,i]);return h.createElement("li",{style:e.style,...e.attributes,ref:e.forwardRef,role:"tab",className:s.classNames("k-item k-tabstrip-item",{"k-disabled":e.isDisabled,"k-active k-state-tab-on-top k-spreadsheet-sheets-bar-active":t.active,"k-spreadsheet-sheets-bar-inactive":!t.active,"k-first":t.first,"k-last":t.last}),onClick:d,onDoubleClick:m},t.inEdit?h.createElement("input",{type:"text",className:"k-textbox k-spreadsheet-sheets-editor",value:t.text,onChange:f,maxLength:50,autoFocus:!0,onBlur:p,onKeyDown:g}):h.createElement(h.Fragment,null,h.createElement("span",{className:"k-link"},t.text),t.first&&t.last?null:h.createElement("span",{className:"k-link k-spreadsheet-sheets-remove",onClick:u},h.createElement(s.IconWrap,{name:"x",icon:c.xIcon}))))},xe=h.forwardRef(((e,t)=>{const{children:n,className:a,...o}=e;return h.createElement("ul",{className:s.classNames("k-tabstrip-items k-reset",a),role:"tablist",...o,ref:t},n)}));xe.displayName="TabsList";const Ee=e=>{const{sheets:t,setSheets:n,onSheetSelect:a,onSheetDelete:o,onSheetEdit:r,onSheetReorderEnd:l}=e,[s,c]=h.useState(null),i=h.useRef(!1),d=h.useRef(-1),m=h.useCallback((e=>{n(e.map(((e,t,n)=>({...e,first:0===t,last:t===n.length-1}))))}),[]),p=h.useCallback((e=>{m(e.newState)}),[m,l]),g=h.useCallback((e=>{l.call(void 0,e)}),[l]),f=h.useCallback((e=>{i.current=!0,d.current=e.prevIndex}),[]),b=h.useCallback((e=>{setTimeout((()=>{i.current=!1}),50),l.call(void 0,{...e,prevIndex:d.current})}),[]),v=h.useCallback(((e,t)=>{i.current||a.call(void 0,e,t)}),[a]),y=h.useCallback(((e,t)=>{t.stopPropagation(),o.call(void 0,e)}),[t,o]),k=h.useCallback(((e,a)=>{a.stopPropagation(),a.preventDefault();const o=t.map((t=>({...t,active:t.id===e.id,inEdit:t.id===e.id})));n(o),c({...e})}),[t]),C=h.useCallback(((e,a)=>{a.stopPropagation(),a.preventDefault();const o=t.map((e=>({...e,inEdit:!1,text:e.inEdit&&s?s.text:e.text})));n(o),c(null)}),[t,s]),x=h.useCallback(((e,a)=>{a.stopPropagation(),a.preventDefault();const o=t.map((e=>({...e,inEdit:!1}))),l=t.findIndex((t=>t.id===e.id));n(o),c(null),r.call(void 0,e,l)}),[t,r]),E=h.useCallback(((e,a)=>{a.stopPropagation(),a.preventDefault();const o=t.map((t=>({...t,text:e.id===t.id?e.text:t.text})));n(o)}),[t]);return h.createElement("div",{className:"k-spreadsheet-sheets-items k-tabstrip k-floatwrap k-tabstrip-bottom"},h.createElement("div",{className:"k-tabstrip-items-wrapper k-hstack"},h.createElement(ke.Provider,{value:{onSelect:v,onDelete:y,onEnterEdit:k,onCancelEdit:C,onExitEdit:x,onEdit:E}},h.createElement(u.Sortable,{idField:"id",data:t,itemUI:Ce,itemsWrapUI:xe,onDragOver:p,onNavigate:g,onDragStart:f,onDragEnd:b}))))},Ie=e=>{const{spreadsheetRef:t}=e,[n,o]=h.useState([]),r=h.useRef((n.find((e=>e.active))||{}).text),l=s.useId(),i=h.useCallback((()=>{t.current&&(t.current.view.sheetsbar.onSheetSelect(r.current),o(((e,t,n)=>e.map(((e,a,o)=>({text:e.name(),id:n+"-sheet-"+a,first:0===a,last:a===o.length-1,active:e.name()===t}))))(t.current.sheets(),r.current,l)))}),[]),u=h.useCallback((()=>{if(t.current){const e=t.current.sheets();e.find((e=>e.name()===r.current))||(r.current=e[e.length-1].name()),i()}}),[]);h.useEffect((()=>(t.current&&(t.current.sheets().length&&(r.current=t.current.sheets()[0].name(),i()),t.current.view.bind("update",u)),()=>{t.current&&t.current.view.unbind("update",u)})),[t.current]);const m=h.useCallback((e=>{r.current!==e.text&&(r.current=e.text,i())}),[]),p=h.useCallback((()=>{if(t.current){t.current.view.sheetsbar.onAddSelect();const e=t.current.sheets();r.current=e[e.length-1].name(),i()}}),[]),g=h.useCallback((e=>{if(t.current){if(r.current===e.text){const n=t.current.sheets(),a=n.findIndex((t=>t.name()===e.text)),o=n[a+1]||n[a-1];r.current=o?o.name():""}t.current.view.sheetsbar.onSheetRemove(e.text),i()}}),[]),f=h.useCallback(((e,n)=>{if(t.current){let a=e.text;const o=t.current.sheets(),l=o[n];if(!a)return r.current=l.name(),void i();if(l&&l.name()===a)return;o.find((e=>e.name()===a))&&(a=l.name()),t.current.view.sheetsbar.onSheetRename(a,n),r.current=a,i()}}),[]),b=h.useCallback((e=>{if(t.current){const{prevIndex:n,nextIndex:a}=e;r.current=t.current.sheets()[n].name(),t.current.view.sheetsbar.onSheetReorderEnd({oldIndex:n,newIndex:a}),i()}}),[]);return h.createElement("div",{className:"k-spreadsheet-sheets-bar k-header"},h.createElement(a.Button,{fillMode:"flat",icon:"plus",className:"k-spreadsheet-sheets-bar-add",title:d.useLocalization().toLanguageString(he.addNewSheet,ve[he.addNewSheet]),svgIcon:c.plusIcon,onClick:p}),h.createElement(Ee,{sheets:n,setSheets:o,onSheetSelect:m,onSheetDelete:g,onSheetEdit:f,onSheetReorderEnd:b}))},Se=e=>{const{spreadsheetRef:t}=e,n=h.useCallback((()=>{t.current&&t.current.saveAsExcel({...t.current.options.excel,saveAs:p.saveAs,Workbook:g.Workbook})}),[]);return h.createElement(a.Button,{className:"k-toolbar-button",title:"Export...",icon:"download",fillMode:"flat",svgIcon:c.downloadIcon,onClick:n})};Se.displayName="ExcelExport";const we=e=>{const{spreadsheetRef:t}=e,n=h.useCallback((e=>{const t=e.target;if(t instanceof Element&&t.parentNode){const e=t.closest(".k-toolbar"),n=e&&e.querySelector(".k-upload input");n&&n.click()}}),[]),o=h.useCallback((e=>{const n=e.newState;if(n[0]&&n[0].getRawFile){const e=n[0].getRawFile();t.current&&t.current.executeCommand({command:"OpenCommand",options:{file:e}})}}),[]);return h.createElement(h.Fragment,null,h.createElement(a.Button,{className:"k-toolbar-button",title:d.useLocalization().toLanguageString(he.open,ve[he.open]),icon:"folder-open",svgIcon:c.folderOpenIcon,fillMode:"flat",onClick:n}),h.createElement("div",{style:{display:"none"}},h.createElement(f.Upload,{restrictions:{allowedExtensions:[".xlsx"]},onAdd:o,autoUpload:!1,defaultFiles:[],multiple:!1,accept:".xlsx,.XLSX",withCredentials:!1})))};we.displayName="Open";const Re=["Arial","Courier New","Georgia","Times New Roman","Trebuchet MS","Verdana"],Ne=[8,9,10,11,12,13,14,16,18,20,22,24,26,28,36,48,72],Ae=[{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"}],Le=e=>t=>{const{property:n,icon:o,svgIcon:r,titleKey:l}=e,{spreadsheetRef:s,value:c}=t,i=h.useCallback((()=>{if(s.current){const e={command:"PropertyChangeCommand",options:{property:n,value:!c}};s.current.executeCommand(e)}}),[c]);return h.createElement(a.Button,{type:"button",icon:o,svgIcon:r,fillMode:"flat",togglable:!0,onClick:i,selected:c,title:d.useLocalization().toLanguageString(l,ve[l])})},De=e=>t=>{const{property:n,titleKey:a,...o}=e,{spreadsheetRef:r,value:l}=t,s=h.useCallback((e=>{if(r.current){const t={command:"PropertyChangeCommand",options:{property:n,value:e.value||null}};r.current.executeCommand(t)}}),[n]);return h.createElement(b.ColorPicker,{onChange:s,onActiveColorClick:s,fillMode:"flat",...o,title:d.useLocalization().toLanguageString(a,ve[a]),value:l})},Ke=e=>t=>{const{spreadsheetRef:n}=t,o=h.useCallback((()=>{n.current&&n.current.workbook.undoRedoStack[e.action]()}),[]);return h.createElement(a.Button,{type:"button",icon:e.icon,svgIcon:e.svgIcon,fillMode:"flat",title:d.useLocalization().toLanguageString(e.titleKey,ve[e.titleKey]),onClick:o})},Fe=Le({property:"bold",icon:"bold",svgIcon:c.boldIcon,titleKey:he.bold});Fe.displayName="Bold";const Te=Le({property:"italic",icon:"italic",svgIcon:c.italicIcon,titleKey:he.italic});Te.displayName="Italic";const ze=Le({property:"underline",icon:"underline",svgIcon:c.underlineIcon,titleKey:he.underline});ze.displayName="Underline";const Pe=e=>{const{spreadsheetRef:t,value:n}=e,a=h.useCallback((e=>{if(t.current){const n={command:"PropertyChangeCommand",options:{property:"fontFamily",value:e.value||null}};t.current.executeCommand(n)}}),[]);return h.createElement(i.DropDownList,{onChange:a,value:n,data:Re,defaultValue:"Arial",fillMode:"flat",title:d.useLocalization().toLanguageString(he.fontName,ve[he.fontName]),leftRightKeysNavigation:!1})};Pe.displayName="FontFamily";const Be=e=>"string"==typeof e?parseFloat(e):e,Oe=e=>{const{spreadsheetRef:t}=e,n=Be(e.value),a=h.useCallback((e=>{var a;let o=e.value?Be(e.value):n;o=isNaN(o)?n:o,o=Math.min(409,Math.max(1,o));const r={command:"PropertyChangeCommand",options:{property:"fontSize",value:o}};"keydown"===e.nativeEvent.type||"focusout"===e.nativeEvent.type?null==(a=t.current)||a.executeCommand(r):setTimeout((()=>{var e;null==(e=t.current)||e.executeCommand(r)}),0)}),[n]);return h.createElement(i.ComboBox,{onChange:a,value:n,data:Ne,defaultValue:12,allowCustom:!0,fillMode:"flat",title:d.useLocalization().toLanguageString(he.fontSize,ve[he.fontSize]),tabIndex:-1,clearButton:!1})};Oe.displayName="FontSize";const Me=e=>{const t=t=>{const{property:n,icon:o,svgIcon:r,titleKey:l,step:s}=e,{spreadsheetRef:c}=t,i=Be(t.value),u=h.useCallback((()=>{var e;const t={command:"PropertyChangeCommand",options:{property:n,value:Math.min(409,Math.max(1,i+s))}};null==(e=c.current)||e.executeCommand(t)}),[i]);return h.createElement(a.Button,{type:"button",icon:o,svgIcon:r,fillMode:"flat",onClick:u,disabled:i+s<1||i+s>409,title:d.useLocalization().toLanguageString(l,ve[l])})};return t.displayName=e.displayName,t},je=Me({property:"fontSize",icon:"font-grow",svgIcon:c.fontGrowIcon,titleKey:he.fontSizeIncrease,displayName:"IncreaseFontSize",step:1}),He=Me({property:"fontSize",icon:"font-shrink",svgIcon:c.fontShrinkIcon,titleKey:he.fontSizeDecrease,displayName:"DecreaseFontSize",step:-1}),We=De({icon:"foreground-color",svgIcon:c.foregroundColorIcon,view:"palette",property:"color",titleKey:he.textColor,ariaLabel:"Text Color"});We.displayName="TextColor";const Ue=De({icon:"droplet",svgIcon:c.dropletIcon,view:"palette",property:"background",titleKey:he.background,ariaLabel:"Background"});Ue.displayName="BackgroundColor";const qe=[{icon:"align-left",svgIcon:c.alignLeftIcon,textKey:he.alignLeft,commandName:"textAlign",value:"left",selected:!1},{icon:"align-center",svgIcon:c.alignCenterIcon,textKey:he.alignCenter,commandName:"textAlign",value:"center",selected:!1},{icon:"align-right",svgIcon:c.alignRightIcon,textKey:he.alignRight,commandName:"textAlign",value:"right",selected:!1},{icon:"align-justify",svgIcon:c.alignJustifyIcon,textKey:he.alignJustify,commandName:"textAlign",value:"justify",selected:!1},{icon:"align-top",svgIcon:c.alignTopIcon,textKey:he.alignTop,commandName:"verticalAlign",value:"top",selected:!1},{icon:"align-middle",svgIcon:c.alignMiddleIcon,textKey:he.alignMiddle,commandName:"verticalAlign",value:"center",selected:!1},{icon:"align-bottom",svgIcon:c.alignBottomIcon,textKey:he.alignBottom,commandName:"verticalAlign",value:"bottom",selected:!1}],Ve=[qe[0],{...qe[1],textKey:he.center},qe[2],{...qe[3],textKey:he.justify}],Je=qe.filter((e=>"verticalAlign"===e.commandName)),_e=e=>{const{value:t,spreadsheetRef:n}=e,{textAlign:o,verticalAlign:r}=t||{},l=d.useLocalization(),i=h.useCallback((e=>{if(n.current){const t=e.item,a={command:"PropertyChangeCommand",options:{property:t.commandName,value:t.value||null}};n.current.executeCommand(a)}}),[]);let u=qe.slice();return u=u.map((e=>({...e,text:l.toLanguageString(e.textKey,ve[e.textKey])}))),o&&(u=u.map((e=>"textAlign"===e.commandName?{...e,selected:e.value===o}:e))),r&&(u=u.map((e=>"verticalAlign"===e.commandName?{...e,selected:e.value===r}:e))),h.createElement(a.DropDownButton,{icon:"align-left",svgIcon:c.alignLeftIcon,items:u,fillMode:"flat",onItemClick:i,title:l.toLanguageString(he.align,ve[he.align]),text:h.createElement(s.IconWrap,{name:"caret-alt-down",icon:c.caretAltDownIcon})})};_e.displayName="Alignment";const Ge={items:Ve,icon:{icon:"align-left",svgIcon:c.alignLeftIcon},displayName:"AlignHorizontally",titleKey:he.alignHorizontally},$e={items:Je,icon:{icon:"align-bottom",svgIcon:c.alignBottomIcon},displayName:"AlignVertically",titleKey:he.alignVertically},Xe=e=>{const t=t=>{const{value:n,spreadsheetRef:o}=t,r=d.useLocalization(),l=h.useCallback((e=>{if(o.current){const t=e.item,n={command:"PropertyChangeCommand",options:{property:t.commandName,value:t.value||null}};o.current.executeCommand(n)}}),[]);let i=e.items.slice();i=i.map((e=>({...e,text:r.toLanguageString(e.textKey,ve[e.textKey])}))),i=i.map((e=>({...e,selected:e.value===n})));const u={...e.icon},m=i.find((e=>e.selected));return m&&(u.icon=m.icon,u.svgIcon=m.svgIcon),h.createElement(a.DropDownButton,{...u,items:i,fillMode:"flat",onItemClick:l,title:r.toLanguageString(e.titleKey,ve[e.titleKey]),text:h.createElement(s.IconWrap,{name:"caret-alt-down",icon:c.caretAltDownIcon})})};return t.displayName=e.displayName,t},Qe=Xe(Ge),Ye=Xe($e),Ze=e=>{const{value:t,spreadsheetRef:n}=e,o=h.useCallback((()=>{if(n.current){const e=n.current.activeSheet();if(e){const t={command:"TextWrapCommand",options:{property:"wrap",value:!e.range(e.activeCell()).wrap()}};n.current.executeCommand(t)}}}),[]);return h.createElement(a.Button,{type:"button",togglable:!0,icon:"text-wrap",svgIcon:c.textWrapIcon,fillMode:"flat",title:d.useLocalization().toLanguageString(he.textWrap,ve[he.textWrap]),onClick:o,selected:t})};Ze.displayName="TextWrap";const et=e=>{const{value:t,spreadsheetRef:n}=e,o=h.useCallback((()=>{if(n.current){const e=n.current.activeSheet();if(e){const t={command:"GridLinesChangeCommand",options:{property:"gridLines",value:!e.showGridLines()}};n.current.executeCommand(t)}}}),[]);return h.createElement(a.Button,{type:"button",togglable:!0,icon:"borders-none",svgIcon:c.bordersNoneIcon,fillMode:"flat",title:d.useLocalization().toLanguageString(he.gridLines,ve[he.gridLines]),onClick:o,selected:t})};et.displayName="GridLines";const tt=e=>{const{spreadsheetRef:t}=e,n=h.useCallback((e=>{const n=e.item.value||null;setTimeout((()=>{if(t.current){const e={command:"PropertyChangeCommand",options:{property:"format",value:n}};t.current.executeCommand(e)}}),0)}),[]);return h.createElement(a.DropDownButton,{icon:"custom-format",svgIcon:c.customFormatIcon,fillMode:"flat",onItemClick:n,items:Ae,title:d.useLocalization().toLanguageString(he.format,ve[he.format]),text:h.createElement(s.IconWrap,{name:"caret-alt-down"})})};tt.displayName="Format";const nt=e=>t=>{const{spreadsheetRef:n,value:o}=t,r=h.useCallback((()=>{if(n.current){const t={command:e.command,options:{value:e.value}};n.current.executeCommand(t)}}),[]);return h.createElement(a.Button,{type:"button",icon:e.icon,svgIcon:e.svgIcon,fillMode:"flat",title:d.useLocalization().toLanguageString(e.titleKey,ve[e.titleKey]),onClick:r,disabled:o&&e.disabled(o)})},at={command:"AddColumnCommand",value:"left",icon:"table-column-insert-left",svgIcon:c.tableColumnInsertLeftIcon,titleKey:he.addColumnLeft,disabled:e=>e.allCols,displayName:"AddColumnLeft"},ot={command:"AddColumnCommand",value:"right",icon:"table-column-insert-right",svgIcon:c.tableColumnInsertRightIcon,titleKey:he.addColumnRight,disabled:e=>e.allCols,displayName:"AddColumnRight"},rt={command:"AddRowCommand",value:"below",icon:"table-row-insert-below",svgIcon:c.tableRowInsertBelowIcon,titleKey:he.addRowBelow,disabled:e=>e.allRows,displayName:"AddRowBelow"},lt={command:"AddRowCommand",value:"above",icon:"table-row-insert-above",svgIcon:c.tableRowInsertAboveIcon,titleKey:he.addRowAbove,disabled:e=>e.allRows,displayName:"AddRowAbove"},st={command:"DeleteColumnCommand",icon:"table-column-delete",svgIcon:c.tableColumnDeleteIcon,titleKey:he.deleteColumn,disabled:e=>e.allCols,displayName:"DeleteColumn"},ct={command:"DeleteRowCommand",icon:"table-row-delete",svgIcon:c.tableRowDeleteIcon,titleKey:he.deleteRow,disabled:e=>e.allRows,displayName:"DeleteRow"},it=nt(at),dt=nt(ot),ut=nt(rt),mt=nt(lt),pt=nt(st),gt=nt(ct);it.displayName="AddColumnLeft",dt.displayName="AddColumnRight",ut.displayName="AddRowBelow",mt.displayName="AddRowAbove",pt.displayName="DeleteColumn",gt.displayName="DeleteRow";const ft=Ke({action:"undo",icon:"reset",svgIcon:c.arrowRotateCcwIcon,titleKey:he.undo});ft.displayName="Undo";const bt=Ke({action:"redo",icon:"reload",svgIcon:c.arrowRotateCwIcon,titleKey:he.redo});bt.displayName="Redo";const vt=e=>t=>{const{icon:n,svgIcon:o,titleKey:r,value:l}=e,{spreadsheetRef:s}=t,c=h.useCallback((()=>{if(s.current){const e={command:"AdjustDecimalsCommand",options:{value:l}};s.current.executeCommand(e)}}),[]);return h.createElement(a.Button,{type:"button",icon:n,svgIcon:o,fillMode:"flat",onClick:c,title:d.useLocalization().toLanguageString(r,ve[r])})},ht=vt({icon:c.decimalIncreaseIcon.name,svgIcon:c.decimalIncreaseIcon,value:1,titleKey:he.increaseDecimal}),yt=vt({icon:c.decimalDecreaseIcon.name,svgIcon:c.decimalDecreaseIcon,value:-1,titleKey:he.decreaseDecimal}),kt=[{textKey:he.file,tools:[we,Se]},{textKey:he.home,selected:!0,tools:[[ft,bt],a.ToolbarSeparator,Pe,Oe,je,He,a.ToolbarSeparator,[Fe,Te,ze],We,a.ToolbarSeparator,Ue,a.ToolbarSeparator,Qe,Ye,Ze,a.ToolbarSeparator,et]},{textKey:he.insert,tools:[[it,dt,ut,mt],a.ToolbarSeparator,[pt,gt]]},{textKey:he.formatTab,tools:[tt,[yt,ht]]}],Ct={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"},xt=["bold","italic","underline","fontFamily","fontSize","color","background","textAlign","verticalAlign","wrap","gridLines"],Et={Bold:e=>e.bold,Italic:e=>e.italic,Underline:e=>e.underline,FontFamily:e=>e.fontFamily,FontSize:e=>e.fontSize,IncreaseFontSize:e=>e.fontSize,DecreaseFontSize:e=>e.fontSize,TextColor:e=>e.color,BackgroundColor:e=>e.background,Alignment:e=>({textAlign:e.textAlign,verticalAlign:e.verticalAlign}),AlignHorizontally:e=>e.textAlign,AlignVertically:e=>e.verticalAlign,TextWrap:e=>e.wrap,GridLines:e=>e.gridLines,AddColumnLeft:e=>e.selectedHeaders,AddColumnRight:e=>e.selectedHeaders,AddRowBelow:e=>e.selectedHeaders,AddRowAbove:e=>e.selectedHeaders,DeleteColumn:e=>e.selectedHeaders,DeleteRow:e=>e.selectedHeaders},It=":not(.k-dropdownlist button):not(.k-combobox button):not(.k-upload-button):not(.k-colorpicker button):not(.k-split-button .k-split-button-arrow)",St=["button"+It,".k-button-group > button"+It,".k-dropdownlist",".k-combobox",".k-colorpicker"],wt=h.forwardRef(((e,t)=>{s.validatePackage(Ct);const n=s.shouldShowValidationUI(Ct),{toolbar:l=kt}=e,i=[];"boolean"==typeof l?i.push(...l?kt:[]):i.push(...l);const[u,f]=h.useState(null),[b,v]=h.useState(i.findIndex((e=>e.selected))||0),[y,C]=h.useState(!1),x=h.useRef(null),E=h.useRef(null),I=h.useRef(null),S=h.useRef(null),w=h.useRef(null),[R,N]=h.useState({}),A=h.useRef({});A.current=R;const L=h.useRef({});L.current=e;const D=d.useLocalization(),K=h.useCallback((e=>{L.current.onSelect&&L.current.onSelect.call(void 0,e)}),[]),F=h.useCallback((e=>{L.current.onChange&&L.current.onChange.call(void 0,e)}),[]),T=h.useCallback((e=>{L.current.onChangeFormat&&L.current.onChangeFormat.call(void 0,e)}),[]),z=h.useCallback((e=>{L.current.onExcelImport&&L.current.onExcelImport.call(void 0,e)}),[]),P=h.useCallback((e=>{L.current.onExcelExport&&L.current.onExcelExport.call(void 0,e)}),[]),B=h.useRef(null);h.useImperativeHandle(B,(()=>({element:x.current,get instance(){return w.current},props:e,get view(){return w.current.view},get workbook(){return w.current.workbook},executeCommand(e){var t;null==(t=w.current)||t.executeCommand(e)},fromJSON(e){var t;return null==(t=w.current)?void 0:t.fromJSON(e)},toJSON:()=>w.current.toJSON(),saveJSON:()=>w.current.saveJSON(),fromFile:e=>w.current.fromFile(e),saveAsExcel(e){var t;null==(t=w.current)||t.saveAsExcel({...w.current.options.excel,saveAs:p.saveAs,Workbook:g.Workbook,...e})},activeSheet(e){var t;return null==(t=w.current)?void 0:t.activeSheet(e)},sheets:()=>w.current.sheets(),refresh(){var e;return null==(e=w.current)?void 0:e.refresh()}})),[e]),h.useImperativeHandle(t,(()=>B.current));const O=h.useCallback((()=>w.current&&w.current.view.nameEditor),[]),M=h.useCallback((e=>{const t={};xt.forEach((n=>{"function"==typeof e.range[n]?t[n]=e.range[n]():"gridLines"===n&&(t[n]=e.range.sheet().showGridLines())})),t.selectedHeaders=e.range.sheet().selectedHeaders(),(xt.some((e=>t[e]!==A.current[e]))||t.selectedHeaders.allCols!==A.current.selectedHeaders.allCols||t.selectedHeaders.allRows!==A.current.selectedHeaders.allRows)&&N(t)}),[]),j=h.useCallback((e=>{const t=e.name,n=he[t];f({title:"Error"===e.title?D.toLanguageString(he.error,ve[he.error]):e.title,message:n?D.toLanguageString(n,ve[n]||e.text):e.text,close:e.close})}),[]),H=h.useCallback((()=>{f(null),null==u||u.close()}),[u]),W=d.useInternationalization(),U=d.useLocalization();h.useEffect((()=>{var t;const n={...e.defaultProps,sheets:structuredClone(null==(t=e.defaultProps)?void 0:t.sheets),messages:{workbook:{defaultSheetName:U.toLanguageString(he.defaultSheetName,ve[he.defaultSheetName])}},intl:{localeInfo:()=>W.localeInfo(),localeCurrency:()=>W.localeCurrency(),parseDate:(e,t)=>W.parseDate(e,t),toString:(e,t)=>W.toString(e,t),format:(e,...t)=>W.format(e,...t)},formulaBarInputRef:E,formulaCellInputRef:I,nameBoxRef:S},a=new m.SpreadsheetWidget(x.current,n);w.current=a,a.bind("select",K),a.bind("change",F),a.bind("changeFormat",T),a.bind("excelImport",z),a.bind("excelExport",P),a.view.bind("update",M),a.view.bind("message",j);const o=a.activeSheet();return o&&M({range:o.range(o.activeCell())}),C(!0),()=>{a.destroy()}}),[]);const q=h.useCallback(((e,t)=>{const n=h.createElement(e,{spreadsheetRef:w,value:Et[e.displayName]?Et[e.displayName](R):void 0,key:t});return n.type===a.ToolbarSeparator?h.createElement(e,{key:t}):n}),[R]);let V=null;return i.length&&(V=h.createElement(o.TabStrip,{selected:b,animation:!1,className:"k-floatwrap k-spreadsheet-tabstrip",style:{minHeight:"auto"},onSelect:e=>v(e.selected)},i.map((e=>{const t=e.textKey?U.toLanguageString(e.textKey,ve[e.textKey]):e.text;return h.createElement(o.TabStripTab,{key:e.textKey||e.text,title:t},h.createElement(a.Toolbar,{buttons:St,className:"k-spreadsheet-toolbar"},e.tools.map(((e,t)=>Array.isArray(e)?h.createElement(a.ButtonGroup,{key:t},e.map(((e,t)=>q(e,t)))):q(e,t)))))})))),h.createElement("div",{ref:x,style:e.style,className:s.classNames("k-widget k-spreadsheet",e.className),role:"application"},V,h.createElement("div",{className:"k-spreadsheet-action-bar"},h.createElement(ye,{ref:S,nameEditor:O}),h.createElement("div",{className:"k-spreadsheet-formula-bar"},h.createElement(s.IconWrap,{name:"formula-fx",icon:c.formulaFxIcon}),h.createElement(k,{ref:E}))),h.createElement("div",{className:"k-spreadsheet-view"},h.createElement("div",{className:"k-spreadsheet-fixed-container"}),h.createElement("div",{className:"k-spreadsheet-scroller"},h.createElement("div",{className:"k-spreadsheet-view-size"})),h.createElement("div",{tabIndex:0,className:"k-spreadsheet-clipboard",contentEditable:"true"}),h.createElement(k,{ref:I,className:"k-spreadsheet-cell-editor"})),h.createElement(Ie,{spreadsheetRef:w}),u&&h.createElement(r.Dialog,{title:u.title,onClose:H},h.createElement("div",null,u.message),h.createElement(r.DialogActionsBar,{layout:"start"},h.createElement(a.Button,{themeColor:"primary",onClick:H,autoFocus:!0},D.toLanguageString(he.ok,ve[he.ok])))),n&&h.createElement(s.WatermarkOverlay,null))}));wt.displayName="KendoReactSpreadsheet",wt.propTypes={className:n.string,defaultProps:n.any,toolbar:n.oneOfType([n.bool,n.arrayOf(n.any)]),style:n.object,onSelect:n.func,onChange:n.func,onChangeFormat:n.func,onExcelImport:n.func,onExcelExport:n.func};Object.defineProperty(e,"CalcError",{enumerable:!0,get:function(){return m.CalcError}}),Object.defineProperty(e,"CellRef",{enumerable:!0,get:function(){return m.CellRef}}),Object.defineProperty(e,"Context",{enumerable:!0,get:function(){return m.Context}}),Object.defineProperty(e,"Matrix",{enumerable:!0,get:function(){return m.Matrix}}),Object.defineProperty(e,"NULLREF",{enumerable:!0,get:function(){return m.NULLREF}}),Object.defineProperty(e,"NameRef",{enumerable:!0,get:function(){return m.NameRef}}),Object.defineProperty(e,"Range",{enumerable:!0,get:function(){return m.Range}}),Object.defineProperty(e,"RangeRef",{enumerable:!0,get:function(){return m.RangeRef}}),Object.defineProperty(e,"Ref",{enumerable:!0,get:function(){return m.Ref}}),Object.defineProperty(e,"Sheet",{enumerable:!0,get:function(){return m.Sheet}}),Object.defineProperty(e,"SpreadsheetWidget",{enumerable:!0,get:function(){return m.SpreadsheetWidget}}),Object.defineProperty(e,"UnionRef",{enumerable:!0,get:function(){return m.UnionRef}}),Object.defineProperty(e,"View",{enumerable:!0,get:function(){return m.View}}),Object.defineProperty(e,"Workbook",{enumerable:!0,get:function(){return m.Workbook}}),Object.defineProperty(e,"dateToSerial",{enumerable:!0,get:function(){return m.dateToSerial}}),Object.defineProperty(e,"defineAlias",{enumerable:!0,get:function(){return m.defineAlias}}),Object.defineProperty(e,"defineFunction",{enumerable:!0,get:function(){return m.defineFunction}}),Object.defineProperty(e,"packDate",{enumerable:!0,get:function(){return m.packDate}}),Object.defineProperty(e,"packTime",{enumerable:!0,get:function(){return m.packTime}}),Object.defineProperty(e,"serialToDate",{enumerable:!0,get:function(){return m.serialToDate}}),Object.defineProperty(e,"unpackDate",{enumerable:!0,get:function(){return m.unpackDate}}),Object.defineProperty(e,"unpackTime",{enumerable:!0,get:function(){return m.unpackTime}}),e.AddColumnLeft=it,e.AddColumnRight=dt,e.AddRowAbove=mt,e.AddRowBelow=ut,e.AlignHorizontally=Qe,e.AlignVertically=Ye,e.Alignment=_e,e.BackgroundColor=Ue,e.Bold=Fe,e.CleanFormatting=e=>{const{spreadsheetRef:t}=e,n=h.useCallback((()=>{t.current&&t.current.executeCommand({command:"PropertyCleanCommand"})}),[]);return h.createElement(a.Button,{type:"button",icon:"clean-css",svgIcon:c.clearCssIcon,fillMode:"flat",onClick:n,title:d.useLocalization().toLanguageString(he.cleanFormatting,ve[he.cleanFormatting])})},e.DecreaseFontSize=He,e.DeleteColumn=pt,e.DeleteRow=gt,e.ExcelExport=Se,e.FontFamily=Pe,e.FontSize=Oe,e.Format=tt,e.GridLines=et,e.IncreaseFontSize=je,e.Italic=Te,e.Open=we,e.Redo=bt,e.Spreadsheet=wt,e.TextColor=We,e.TextWrap=Ze,e.Underline=ze,e.Undo=ft,e.defaultTabs=kt}));
8
+ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(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")):"function"==typeof define&&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"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).KendoReactSpreadsheet={},e.React,e.PropTypes,e.KendoReactButtons,e.KendoReactLayout,e.KendoReactDialogs,e.KendoReactPopup,e.KendoReactCommon,e.KendoSvgIcons,e.KendoReactDropdowns,e.KendoReactIntl,e.KendoReactSortable,e.KendoSpreadsheetCommon,e.KendoFileSaver,e.KendoOoxml,e.KendoReactUpload,e.KendoReactInputs)}(this,(function(e,t,n,a,o,r,l,s,c,i,d,u,m,p,g,f,b){"use strict";function v(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(n){if("default"!==n){var a=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,a.get?a:{enumerable:!0,get:function(){return e[n]}})}})),t.default=e,Object.freeze(t)}var h=v(t);const y=h.forwardRef(((e,t)=>{const n=h.useRef(null),a=h.useRef(null);return h.useImperativeHandle(n,(()=>({element:a.current,props:e}))),h.useImperativeHandle(t,(()=>n.current)),h.createElement("div",{className:"k-list k-list-md"},h.createElement("div",{className:"k-list-content"},h.createElement("ul",{ref:a,className:"k-spreadsheet-formula-list k-list-ul",onMouseDown:e=>e.preventDefault(),style:{maxHeight:280}},e.data.map((t=>h.createElement("li",{key:t.text,className:"k-list-item",onClick:()=>e.onItemClick(t.value)},h.createElement(s.IconWrap,{name:"formula-fx",icon:c.formulaFxIcon}),h.createElement("span",{className:"k-list-item-text"},t.text)))))))}));y.displayName="List",y.propTypes={};const k=h.forwardRef(((e,t)=>{const[n,a]=h.useState(!1),[o,r]=h.useState(0),[c,i]=h.useState([]),d=h.useMemo((()=>({})),[]);d.showPopup=n,d.popupContentKey=o,d.data=c;const u=h.useRef(null),m=h.useRef(null),p=h.useRef(null),g=h.useCallback((()=>{if(p.current&&p.current.element)return p.current.element.querySelector(".k-focus")}),[]),f=h.useCallback((()=>{const e=g();e&&e.classList.remove("k-focus")}),[]),b=h.useCallback((e=>{const t=Array.from(p.current&&p.current.element.children||[]),n=g();let a;if(n){const o=t.indexOf(n);n.classList.remove("k-focus"),a=t[o+e]?t[o+e]:1===e?t[0]:t[t.length-1]}else a=1===e?t[0]:t[t.length-1];a&&a.classList.add("k-focus")}),[]);h.useImperativeHandle(u,(()=>({element:m.current,props:e,popup:{open:()=>{a(!0)},close:()=>{a(!1)},position:()=>{r(d.popupContentKey+1)},visible:()=>d.showPopup},list:{get element(){return p.current&&p.current.element},data:e=>{if(!e)return d.data;i(e)},value:()=>({}),focus:()=>Array.from(p.current&&p.current.element&&p.current.element.children||[]).indexOf(g()),focusNext:()=>{b(1)},focusPrev:()=>{b(-1)},focusFirst:()=>{const e=p.current&&p.current.element;e&&e.children.item(0)&&(f(),e.children.item(0).classList.add("k-focus"))},focusLast:()=>{const e=p.current&&p.current.element;e&&e.children.length&&(f(),e.children.item(e.children.length-1).classList.add("k-focus"))},itemClick:e=>{d.itemClick=e}}})),[]),h.useImperativeHandle(t,(()=>u.current),[]);const v=h.useCallback((e=>{d.itemClick&&d.itemClick(e)}),[]);return h.createElement(h.Fragment,null,h.createElement("div",{className:s.classNames("k-spreadsheet-formula-input",e.className),contentEditable:"true",spellCheck:"false",style:{whiteSpace:"pre"},ref:m}),h.createElement(l.Popup,{show:n,anchor:m.current,animate:{openDuration:100,closeDuration:100},contentKey:o,popupClass:"k-list-container"},h.createElement(y,{data:c,ref:p,onItemClick:v})))}));k.displayName="FormulaInput",k.propTypes={};const C="spreadsheet.bold",x="spreadsheet.italic",E="spreadsheet.underline",I="spreadsheet.openFile",S="spreadsheet.textColor",w="spreadsheet.background",N="spreadsheet.addRowAbove",R="spreadsheet.addRowBelow",A="spreadsheet.addColumnLeft",D="spreadsheet.addColumnRight",L="spreadsheet.deleteRow",K="spreadsheet.deleteColumn",F="spreadsheet.undo",T="spreadsheet.redo",z="spreadsheet.fontSize",P="spreadsheet.fontSizeIncrease",B="spreadsheet.fontSizeDecrease",O="spreadsheet.fontName",M="spreadsheet.cleanFormatting",j="spreadsheet.format",H="spreadsheet.alignHorizontally",W="spreadsheet.alignVertically",U="spreadsheet.align",q="spreadsheet.alignLeft",V="spreadsheet.alignRight",J="spreadsheet.alignCenter",_="spreadsheet.center",G="spreadsheet.alignJustify",$="spreadsheet.justify",X="spreadsheet.alignTop",Q="spreadsheet.alignMiddle",Y="spreadsheet.alignBottom",Z="spreadsheet.increaseDecimal",ee="spreadsheet.decreaseDecimal",te="spreadsheet.textWrap",ne="spreadsheet.gridLines",ae="spreadsheet.exportToExcel",oe="spreadsheet.nameBox",re="spreadsheet.defaultSheetName",le="spreadsheet.home",se="spreadsheet.file",ce="spreadsheet.insert",ie="spreadsheet.formatTab",de="spreadsheet.addNewSheet",ue="spreadsheet.error",me="spreadsheet.ok",pe="spreadsheet.modifyMerged",ge="spreadsheet.cannotModifyDisabled",fe="spreadsheet.openUnsupported",be="spreadsheet.duplicateSheetName",ve={[C]:"Bold",[x]:"Italic",[E]:"Underline",[F]:"Undo",[T]:"Redo",[z]:"Font size",[P]:"Increase Font size",[B]:"Decrease Font size",[O]:"Font",[M]:"Clean formatting",[j]:"Custom format...",[H]:"Align horizontally",[W]:"Align vertically",[U]:"Align",[q]:"Align left",[V]:"Align right",[J]:"Align center",[G]:"Align justify",[_]:"Center",[$]:"Justify",[X]:"Align top",[Q]:"Align middle",[Y]:"Align bottom",[Z]:"Increase decimal",[ee]:"Decrease decimal",[S]:"Text Color",[w]:"Background color",[N]:"Add row above",[R]:"Add row below",[A]:"Add column left",[D]:"Add column right",[L]:"Delete row",[K]:"Delete column",[I]:"Open...",[ae]:"Export to Excel",[te]:"Text Wrap",[ne]:"Toggle gridlines",[oe]:"Name Box",[re]:"Sheet",[le]:"Home",[se]:"File",[ce]:"Insert",[de]:"Add new sheet",[ie]:"Format",[pe]:"Cannot change part of a merged cell.",[ge]:"Cannot modify disabled cells.",[fe]:"Unsupported format. Please select an .xlsx file.",[be]:"There is an existing sheet with this name. Please enter another name.",[ue]:"Error",[me]:"OK"},he={bold:C,italic:x,underline:E,undo:F,redo:T,fontSize:z,fontSizeIncrease:P,fontSizeDecrease:B,fontName:O,cleanFormatting:M,format:j,alignHorizontally:H,alignVertically:W,align:U,alignLeft:q,alignRight:V,alignCenter:J,center:_,alignJustify:G,justify:$,alignTop:X,alignMiddle:Q,alignBottom:Y,increaseDecimal:Z,decreaseDecimal:ee,textColor:S,background:w,addRowAbove:N,addRowBelow:R,addColumnLeft:A,addColumnRight:D,deleteRow:L,deleteColumn:K,open:I,exportToExcel:ae,textWrap:te,gridLines:ne,nameBox:oe,defaultSheetName:re,file:se,home:le,insert:ce,addNewSheet:de,error:ue,ok:me,modifyMerged:pe,cannotModifyDisabled:ge,openUnsupported:fe,duplicateSheetName:be,formatTab:ie},ye=h.forwardRef(((e,t)=>{const n=h.useRef(null),a=h.useRef(null),[o,r]=h.useState([]),[l,u]=h.useState(!1),[m,p]=h.useState(""),g=h.useMemo((()=>({})),[]);g.data=o,h.useImperativeHandle(n,(()=>({value:e=>{if(void 0===e){const e=a.current&&a.current.value;return e&&(e.name||e)}p(e||"")}})),[]),h.useImperativeHandle(t,(()=>n.current),[]);const f=h.useCallback((t=>{const n=e.nameEditor();n&&n.trigger("delete",{name:t})}),[]),b=h.useCallback(((e,t)=>{const n=h.createElement(h.Fragment,null,e.props.children,h.createElement("span",{role:"button",className:"k-button-delete",onClick:()=>f(t.dataItem[t.textField]),onMouseDown:e=>e.preventDefault(),onPointerDown:e=>e.preventDefault(),"data-role":"delete"},h.createElement(s.IconWrap,{name:"x",icon:c.xIcon})));return h.cloneElement(e,e.props,n)}),[]),v=h.useCallback((e=>h.cloneElement(e,{...e.props},h.createElement("div",null))),[]),y=h.useCallback((t=>{if(t.syntheticEvent&&"change"===t.syntheticEvent.type)return;const n=e.nameEditor();n&&(r(n.readData()),u(!0))}),[]),k=h.useCallback((()=>{u(!1)}),[]),C=h.useCallback((t=>{if(t.syntheticEvent.target.closest("[data-role]"))return;const n=e.nameEditor();if(n&&t.value){const e=t.value.name;e!==m&&(n.trigger("select",{name:e}),p(e))}}),[m]),x=h.useCallback((t=>{const n=e.nameEditor();if(n)if("Enter"===t.key){const e=t.target.value;n.trigger("enter",{value:e}),p(e)}else"Escape"===t.key&&(n.trigger("cancel"),p(g.prevValue))}),[]),E=h.useCallback((e=>{g.prevValue=e.value.name}),[]);return h.createElement("div",{className:"k-spreadsheet-name-editor",onKeyDown:x},h.createElement(i.ComboBox,{ref:a,title:d.useLocalization().toLanguageString(he.nameBox,ve[he.nameBox]),popupSettings:{className:"k-spreadsheet-names-popup"},fillMode:"flat",clearButton:!1,dataItemKey:"name",textField:"name",itemRender:b,data:o,value:m?o.find((e=>e.name===m))||{name:m}:null,onChange:C,opened:l,onOpen:y,onClose:k,onFocus:E,listNoDataRender:v,allowCustom:!0}))}));ye.displayName="NameBox",ye.propTypes={};const ke=h.createContext({onSelect:()=>{},onDelete:()=>{},onEnterEdit:()=>{},onCancelEdit:()=>{},onExitEdit:()=>{},onEdit:()=>{}}),Ce=e=>{const t=e.dataItem,{onSelect:n,onDelete:a,onEnterEdit:o,onExitEdit:r,onCancelEdit:l,onEdit:i}=h.useContext(ke),d=h.useCallback((e=>{e.target instanceof HTMLElement&&"INPUT"===e.target.nodeName||n.call(void 0,t,e)}),[t,n]),u=h.useCallback((e=>{a.call(void 0,t,e)}),[t,a]),m=h.useCallback((e=>{e.target instanceof HTMLElement&&"INPUT"===e.target.nodeName||o.call(void 0,t,e)}),[t,o]),p=h.useCallback((e=>{r.call(void 0,t,e)}),[t,r]),g=h.useCallback((e=>{"Enter"===e.key?r.call(void 0,t,e):"Escape"===e.key&&l.call(void 0,t,e)}),[t,r,l]),f=h.useCallback((e=>{i.call(void 0,{...t,text:e.target.value},e)}),[t,i]);return h.createElement("li",{style:e.style,...e.attributes,ref:e.forwardRef,role:"tab",className:s.classNames("k-item k-tabstrip-item",{"k-disabled":e.isDisabled,"k-active k-state-tab-on-top k-spreadsheet-sheets-bar-active":t.active,"k-spreadsheet-sheets-bar-inactive":!t.active,"k-first":t.first,"k-last":t.last}),onClick:d,onDoubleClick:m},t.inEdit?h.createElement("input",{type:"text",className:"k-textbox k-spreadsheet-sheets-editor",value:t.text,onChange:f,maxLength:50,autoFocus:!0,onBlur:p,onKeyDown:g}):h.createElement(h.Fragment,null,h.createElement("span",{className:"k-link"},t.text),t.first&&t.last?null:h.createElement("span",{className:"k-link k-spreadsheet-sheets-remove",onClick:u},h.createElement(s.IconWrap,{name:"x",icon:c.xIcon}))))},xe=h.forwardRef(((e,t)=>{const{children:n,className:a,...o}=e;return h.createElement("ul",{className:s.classNames("k-tabstrip-items k-reset",a),role:"tablist",...o,ref:t},n)}));xe.displayName="TabsList";const Ee=e=>{const{sheets:t,setSheets:n,onSheetSelect:a,onSheetDelete:o,onSheetEdit:r,onSheetReorderEnd:l}=e,[s,c]=h.useState(null),i=h.useRef(!1),d=h.useRef(-1),m=h.useCallback((e=>{n(e.map(((e,t,n)=>({...e,first:0===t,last:t===n.length-1}))))}),[]),p=h.useCallback((e=>{m(e.newState)}),[m,l]),g=h.useCallback((e=>{l.call(void 0,e)}),[l]),f=h.useCallback((e=>{i.current=!0,d.current=e.prevIndex}),[]),b=h.useCallback((e=>{setTimeout((()=>{i.current=!1}),50),l.call(void 0,{...e,prevIndex:d.current})}),[]),v=h.useCallback(((e,t)=>{i.current||a.call(void 0,e,t)}),[a]),y=h.useCallback(((e,t)=>{t.stopPropagation(),o.call(void 0,e)}),[t,o]),k=h.useCallback(((e,a)=>{a.stopPropagation(),a.preventDefault();const o=t.map((t=>({...t,active:t.id===e.id,inEdit:t.id===e.id})));n(o),c({...e})}),[t]),C=h.useCallback(((e,a)=>{a.stopPropagation(),a.preventDefault();const o=t.map((e=>({...e,inEdit:!1,text:e.inEdit&&s?s.text:e.text})));n(o),c(null)}),[t,s]),x=h.useCallback(((e,a)=>{a.stopPropagation(),a.preventDefault();const o=t.map((e=>({...e,inEdit:!1}))),l=t.findIndex((t=>t.id===e.id));n(o),c(null),r.call(void 0,e,l)}),[t,r]),E=h.useCallback(((e,a)=>{a.stopPropagation(),a.preventDefault();const o=t.map((t=>({...t,text:e.id===t.id?e.text:t.text})));n(o)}),[t]);return h.createElement("div",{className:"k-spreadsheet-sheets-items k-tabstrip k-floatwrap k-tabstrip-bottom"},h.createElement("div",{className:"k-tabstrip-items-wrapper k-hstack"},h.createElement(ke.Provider,{value:{onSelect:v,onDelete:y,onEnterEdit:k,onCancelEdit:C,onExitEdit:x,onEdit:E}},h.createElement(u.Sortable,{idField:"id",data:t,itemUI:Ce,itemsWrapUI:xe,onDragOver:p,onNavigate:g,onDragStart:f,onDragEnd:b}))))},Ie=e=>{const{spreadsheetRef:t}=e,[n,o]=h.useState([]),r=h.useRef((n.find((e=>e.active))||{}).text),l=s.useId(),i=h.useCallback((()=>{t.current&&(t.current.view.sheetsbar.onSheetSelect(r.current),o(((e,t,n)=>e.map(((e,a,o)=>({text:e.name(),id:n+"-sheet-"+a,first:0===a,last:a===o.length-1,active:e.name()===t}))))(t.current.sheets(),r.current,l)))}),[]),u=h.useCallback((()=>{if(t.current){const e=t.current.sheets();e.find((e=>e.name()===r.current))||(r.current=e[e.length-1].name()),i()}}),[]);h.useEffect((()=>(t.current&&(t.current.sheets().length&&(r.current=t.current.sheets()[0].name(),i()),t.current.view.bind("update",u)),()=>{t.current&&t.current.view.unbind("update",u)})),[t.current]);const m=h.useCallback((e=>{r.current!==e.text&&(r.current=e.text,i())}),[]),p=h.useCallback((()=>{if(t.current){t.current.view.sheetsbar.onAddSelect();const e=t.current.sheets();r.current=e[e.length-1].name(),i()}}),[]),g=h.useCallback((e=>{if(t.current){if(r.current===e.text){const n=t.current.sheets(),a=n.findIndex((t=>t.name()===e.text)),o=n[a+1]||n[a-1];r.current=o?o.name():""}t.current.view.sheetsbar.onSheetRemove(e.text),i()}}),[]),f=h.useCallback(((e,n)=>{if(t.current){let a=e.text;const o=t.current.sheets(),l=o[n];if(!a)return r.current=l.name(),void i();if(l&&l.name()===a)return;o.find((e=>e.name()===a))&&(a=l.name()),t.current.view.sheetsbar.onSheetRename(a,n),r.current=a,i()}}),[]),b=h.useCallback((e=>{if(t.current){const{prevIndex:n,nextIndex:a}=e;r.current=t.current.sheets()[n].name(),t.current.view.sheetsbar.onSheetReorderEnd({oldIndex:n,newIndex:a}),i()}}),[]);return h.createElement("div",{className:"k-spreadsheet-sheets-bar k-header"},h.createElement(a.Button,{fillMode:"flat",icon:"plus",className:"k-spreadsheet-sheets-bar-add",title:d.useLocalization().toLanguageString(he.addNewSheet,ve[he.addNewSheet]),svgIcon:c.plusIcon,onClick:p}),h.createElement(Ee,{sheets:n,setSheets:o,onSheetSelect:m,onSheetDelete:g,onSheetEdit:f,onSheetReorderEnd:b}))},Se=e=>{const{spreadsheetRef:t}=e,n=h.useCallback((()=>{t.current&&t.current.saveAsExcel({...t.current.options.excel,saveAs:p.saveAs,Workbook:g.Workbook})}),[]);return h.createElement(a.Button,{className:"k-toolbar-button",title:"Export...",icon:"download",fillMode:"flat",svgIcon:c.downloadIcon,onClick:n})};Se.displayName="ExcelExport";const we=e=>{const{spreadsheetRef:t}=e,n=h.useCallback((e=>{const t=e.target;if(t instanceof Element&&t.parentNode){const e=t.closest(".k-toolbar"),n=e&&e.querySelector(".k-upload input");n&&n.click()}}),[]),o=h.useCallback((e=>{const n=e.newState;if(n[0]&&n[0].getRawFile){const e=n[0].getRawFile();t.current&&t.current.executeCommand({command:"OpenCommand",options:{file:e}})}}),[]);return h.createElement(h.Fragment,null,h.createElement(a.Button,{className:"k-toolbar-button",title:d.useLocalization().toLanguageString(he.open,ve[he.open]),icon:"folder-open",svgIcon:c.folderOpenIcon,fillMode:"flat",onClick:n}),h.createElement("div",{style:{display:"none"}},h.createElement(f.Upload,{restrictions:{allowedExtensions:[".xlsx"]},onAdd:o,autoUpload:!1,defaultFiles:[],multiple:!1,accept:".xlsx,.XLSX",withCredentials:!1})))};we.displayName="Open";const Ne=["Arial","Courier New","Georgia","Times New Roman","Trebuchet MS","Verdana"],Re=[8,9,10,11,12,13,14,16,18,20,22,24,26,28,36,48,72],Ae=[{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"}],De=e=>t=>{const{property:n,icon:o,svgIcon:r,titleKey:l}=e,{spreadsheetRef:s,value:c}=t,i=h.useCallback((()=>{if(s.current){const e={command:"PropertyChangeCommand",options:{property:n,value:!c}};s.current.executeCommand(e)}}),[c]);return h.createElement(a.Button,{type:"button",icon:o,svgIcon:r,fillMode:"flat",togglable:!0,onClick:i,selected:c,title:d.useLocalization().toLanguageString(l,ve[l])})},Le=e=>t=>{const{property:n,titleKey:a,...o}=e,{spreadsheetRef:r,value:l}=t,s=h.useCallback((e=>{if(r.current){const t={command:"PropertyChangeCommand",options:{property:n,value:e.value||null}};r.current.executeCommand(t)}}),[n]);return h.createElement(b.ColorPicker,{onChange:s,onActiveColorClick:s,fillMode:"flat",...o,title:d.useLocalization().toLanguageString(a,ve[a]),value:l})},Ke=e=>t=>{const{spreadsheetRef:n}=t,o=h.useCallback((()=>{n.current&&n.current.workbook.undoRedoStack[e.action]()}),[]);return h.createElement(a.Button,{type:"button",icon:e.icon,svgIcon:e.svgIcon,fillMode:"flat",title:d.useLocalization().toLanguageString(e.titleKey,ve[e.titleKey]),onClick:o})},Fe=De({property:"bold",icon:"bold",svgIcon:c.boldIcon,titleKey:he.bold});Fe.displayName="Bold";const Te=De({property:"italic",icon:"italic",svgIcon:c.italicIcon,titleKey:he.italic});Te.displayName="Italic";const ze=De({property:"underline",icon:"underline",svgIcon:c.underlineIcon,titleKey:he.underline});ze.displayName="Underline";const Pe=e=>{const{spreadsheetRef:t,value:n}=e,a=h.useCallback((e=>{if(t.current){const n={command:"PropertyChangeCommand",options:{property:"fontFamily",value:e.value||null}};t.current.executeCommand(n)}}),[]);return h.createElement(i.DropDownList,{onChange:a,value:n,data:Ne,defaultValue:"Arial",fillMode:"flat",title:d.useLocalization().toLanguageString(he.fontName,ve[he.fontName]),leftRightKeysNavigation:!1})};Pe.displayName="FontFamily";const Be=e=>"string"==typeof e?parseFloat(e):e,Oe=e=>{const{spreadsheetRef:t}=e,n=Be(e.value),a=h.useCallback((e=>{var a;let o=e.value?Be(e.value):n;o=isNaN(o)?n:o,o=Math.min(409,Math.max(1,o));const r={command:"PropertyChangeCommand",options:{property:"fontSize",value:o}};"keydown"===e.nativeEvent.type||"focusout"===e.nativeEvent.type?null==(a=t.current)||a.executeCommand(r):setTimeout((()=>{var e;null==(e=t.current)||e.executeCommand(r)}),0)}),[n]);return h.createElement(i.ComboBox,{onChange:a,value:n,data:Re,defaultValue:12,allowCustom:!0,fillMode:"flat",title:d.useLocalization().toLanguageString(he.fontSize,ve[he.fontSize]),tabIndex:-1,clearButton:!1})};Oe.displayName="FontSize";const Me=e=>{const t=t=>{const{property:n,icon:o,svgIcon:r,titleKey:l,step:s}=e,{spreadsheetRef:c}=t,i=Be(t.value),u=h.useCallback((()=>{var e;const t={command:"PropertyChangeCommand",options:{property:n,value:Math.min(409,Math.max(1,i+s))}};null==(e=c.current)||e.executeCommand(t)}),[i]);return h.createElement(a.Button,{type:"button",icon:o,svgIcon:r,fillMode:"flat",onClick:u,disabled:i+s<1||i+s>409,title:d.useLocalization().toLanguageString(l,ve[l])})};return t.displayName=e.displayName,t},je=Me({property:"fontSize",icon:"font-grow",svgIcon:c.fontGrowIcon,titleKey:he.fontSizeIncrease,displayName:"IncreaseFontSize",step:1}),He=Me({property:"fontSize",icon:"font-shrink",svgIcon:c.fontShrinkIcon,titleKey:he.fontSizeDecrease,displayName:"DecreaseFontSize",step:-1}),We=Le({icon:"foreground-color",svgIcon:c.foregroundColorIcon,view:"palette",property:"color",titleKey:he.textColor,ariaLabel:"Text Color"});We.displayName="TextColor";const Ue=Le({icon:"droplet",svgIcon:c.dropletIcon,view:"palette",property:"background",titleKey:he.background,ariaLabel:"Background"});Ue.displayName="BackgroundColor";const qe=[{icon:"align-left",svgIcon:c.alignLeftIcon,textKey:he.alignLeft,commandName:"textAlign",value:"left",selected:!1},{icon:"align-center",svgIcon:c.alignCenterIcon,textKey:he.alignCenter,commandName:"textAlign",value:"center",selected:!1},{icon:"align-right",svgIcon:c.alignRightIcon,textKey:he.alignRight,commandName:"textAlign",value:"right",selected:!1},{icon:"align-justify",svgIcon:c.alignJustifyIcon,textKey:he.alignJustify,commandName:"textAlign",value:"justify",selected:!1},{icon:"align-top",svgIcon:c.alignTopIcon,textKey:he.alignTop,commandName:"verticalAlign",value:"top",selected:!1},{icon:"align-middle",svgIcon:c.alignMiddleIcon,textKey:he.alignMiddle,commandName:"verticalAlign",value:"center",selected:!1},{icon:"align-bottom",svgIcon:c.alignBottomIcon,textKey:he.alignBottom,commandName:"verticalAlign",value:"bottom",selected:!1}],Ve=[qe[0],{...qe[1],textKey:he.center},qe[2],{...qe[3],textKey:he.justify}],Je=qe.filter((e=>"verticalAlign"===e.commandName)),_e=e=>{const{value:t,spreadsheetRef:n}=e,{textAlign:o,verticalAlign:r}=t||{},l=d.useLocalization(),i=h.useCallback((e=>{if(n.current){const t=e.item,a={command:"PropertyChangeCommand",options:{property:t.commandName,value:t.value||null}};n.current.executeCommand(a)}}),[]);let u=qe.slice();return u=u.map((e=>({...e,text:l.toLanguageString(e.textKey,ve[e.textKey])}))),o&&(u=u.map((e=>"textAlign"===e.commandName?{...e,selected:e.value===o}:e))),r&&(u=u.map((e=>"verticalAlign"===e.commandName?{...e,selected:e.value===r}:e))),h.createElement(a.DropDownButton,{icon:"align-left",svgIcon:c.alignLeftIcon,items:u,fillMode:"flat",onItemClick:i,title:l.toLanguageString(he.align,ve[he.align]),text:h.createElement(s.IconWrap,{name:"caret-alt-down",icon:c.caretAltDownIcon})})};_e.displayName="Alignment";const Ge={items:Ve,icon:{icon:"align-left",svgIcon:c.alignLeftIcon},displayName:"AlignHorizontally",titleKey:he.alignHorizontally},$e={items:Je,icon:{icon:"align-bottom",svgIcon:c.alignBottomIcon},displayName:"AlignVertically",titleKey:he.alignVertically},Xe=e=>{const t=t=>{const{value:n,spreadsheetRef:o}=t,r=d.useLocalization(),l=h.useCallback((e=>{if(o.current){const t=e.item,n={command:"PropertyChangeCommand",options:{property:t.commandName,value:t.value||null}};o.current.executeCommand(n)}}),[]);let i=e.items.slice();i=i.map((e=>({...e,text:r.toLanguageString(e.textKey,ve[e.textKey])}))),i=i.map((e=>({...e,selected:e.value===n})));const u={...e.icon},m=i.find((e=>e.selected));return m&&(u.icon=m.icon,u.svgIcon=m.svgIcon),h.createElement(a.DropDownButton,{...u,items:i,fillMode:"flat",onItemClick:l,title:r.toLanguageString(e.titleKey,ve[e.titleKey]),text:h.createElement(s.IconWrap,{name:"caret-alt-down",icon:c.caretAltDownIcon})})};return t.displayName=e.displayName,t},Qe=Xe(Ge),Ye=Xe($e),Ze=e=>{const{value:t,spreadsheetRef:n}=e,o=h.useCallback((()=>{if(n.current){const e=n.current.activeSheet();if(e){const t={command:"TextWrapCommand",options:{property:"wrap",value:!e.range(e.activeCell()).wrap()}};n.current.executeCommand(t)}}}),[]);return h.createElement(a.Button,{type:"button",togglable:!0,icon:"text-wrap",svgIcon:c.textWrapIcon,fillMode:"flat",title:d.useLocalization().toLanguageString(he.textWrap,ve[he.textWrap]),onClick:o,selected:t})};Ze.displayName="TextWrap";const et=e=>{const{value:t,spreadsheetRef:n}=e,o=h.useCallback((()=>{if(n.current){const e=n.current.activeSheet();if(e){const t={command:"GridLinesChangeCommand",options:{property:"gridLines",value:!e.showGridLines()}};n.current.executeCommand(t)}}}),[]);return h.createElement(a.Button,{type:"button",togglable:!0,icon:"borders-none",svgIcon:c.bordersNoneIcon,fillMode:"flat",title:d.useLocalization().toLanguageString(he.gridLines,ve[he.gridLines]),onClick:o,selected:t})};et.displayName="GridLines";const tt=e=>{const{spreadsheetRef:t}=e,n=h.useCallback((e=>{const n=e.item.value||null;setTimeout((()=>{if(t.current){const e={command:"PropertyChangeCommand",options:{property:"format",value:n}};t.current.executeCommand(e)}}),0)}),[]);return h.createElement(a.DropDownButton,{icon:"custom-format",svgIcon:c.customFormatIcon,fillMode:"flat",onItemClick:n,items:Ae,title:d.useLocalization().toLanguageString(he.format,ve[he.format]),text:h.createElement(s.IconWrap,{name:"caret-alt-down"})})};tt.displayName="Format";const nt=e=>t=>{const{spreadsheetRef:n,value:o}=t,r=h.useCallback((()=>{if(n.current){const t={command:e.command,options:{value:e.value}};n.current.executeCommand(t)}}),[]);return h.createElement(a.Button,{type:"button",icon:e.icon,svgIcon:e.svgIcon,fillMode:"flat",title:d.useLocalization().toLanguageString(e.titleKey,ve[e.titleKey]),onClick:r,disabled:o&&e.disabled(o)})},at={command:"AddColumnCommand",value:"left",icon:"table-column-insert-left",svgIcon:c.tableColumnInsertLeftIcon,titleKey:he.addColumnLeft,disabled:e=>e.allCols,displayName:"AddColumnLeft"},ot={command:"AddColumnCommand",value:"right",icon:"table-column-insert-right",svgIcon:c.tableColumnInsertRightIcon,titleKey:he.addColumnRight,disabled:e=>e.allCols,displayName:"AddColumnRight"},rt={command:"AddRowCommand",value:"below",icon:"table-row-insert-below",svgIcon:c.tableRowInsertBelowIcon,titleKey:he.addRowBelow,disabled:e=>e.allRows,displayName:"AddRowBelow"},lt={command:"AddRowCommand",value:"above",icon:"table-row-insert-above",svgIcon:c.tableRowInsertAboveIcon,titleKey:he.addRowAbove,disabled:e=>e.allRows,displayName:"AddRowAbove"},st={command:"DeleteColumnCommand",icon:"table-column-delete",svgIcon:c.tableColumnDeleteIcon,titleKey:he.deleteColumn,disabled:e=>e.allCols,displayName:"DeleteColumn"},ct={command:"DeleteRowCommand",icon:"table-row-delete",svgIcon:c.tableRowDeleteIcon,titleKey:he.deleteRow,disabled:e=>e.allRows,displayName:"DeleteRow"},it=nt(at),dt=nt(ot),ut=nt(rt),mt=nt(lt),pt=nt(st),gt=nt(ct);it.displayName="AddColumnLeft",dt.displayName="AddColumnRight",ut.displayName="AddRowBelow",mt.displayName="AddRowAbove",pt.displayName="DeleteColumn",gt.displayName="DeleteRow";const ft=Ke({action:"undo",icon:"reset",svgIcon:c.arrowRotateCcwIcon,titleKey:he.undo});ft.displayName="Undo";const bt=Ke({action:"redo",icon:"reload",svgIcon:c.arrowRotateCwIcon,titleKey:he.redo});bt.displayName="Redo";const vt=e=>t=>{const{icon:n,svgIcon:o,titleKey:r,value:l}=e,{spreadsheetRef:s}=t,c=h.useCallback((()=>{if(s.current){const e={command:"AdjustDecimalsCommand",options:{value:l}};s.current.executeCommand(e)}}),[]);return h.createElement(a.Button,{type:"button",icon:n,svgIcon:o,fillMode:"flat",onClick:c,title:d.useLocalization().toLanguageString(r,ve[r])})},ht=vt({icon:c.decimalIncreaseIcon.name,svgIcon:c.decimalIncreaseIcon,value:1,titleKey:he.increaseDecimal});ht.displayName="IncreaseDecimal";const yt=vt({icon:c.decimalDecreaseIcon.name,svgIcon:c.decimalDecreaseIcon,value:-1,titleKey:he.decreaseDecimal});yt.displayName="DecreaseDecimal";const kt=[{textKey:he.file,tools:[we,Se]},{textKey:he.home,selected:!0,tools:[[ft,bt],a.ToolbarSeparator,Pe,Oe,je,He,a.ToolbarSeparator,[Fe,Te,ze],We,a.ToolbarSeparator,Ue,a.ToolbarSeparator,Qe,Ye,Ze,a.ToolbarSeparator,et]},{textKey:he.insert,tools:[[it,dt,ut,mt],a.ToolbarSeparator,[pt,gt]]},{textKey:he.formatTab,tools:[tt,[yt,ht]]}],Ct={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"},xt=["bold","italic","underline","fontFamily","fontSize","color","background","textAlign","verticalAlign","wrap","gridLines"],Et={Bold:e=>e.bold,Italic:e=>e.italic,Underline:e=>e.underline,FontFamily:e=>e.fontFamily,FontSize:e=>e.fontSize,IncreaseFontSize:e=>e.fontSize,DecreaseFontSize:e=>e.fontSize,TextColor:e=>e.color,BackgroundColor:e=>e.background,Alignment:e=>({textAlign:e.textAlign,verticalAlign:e.verticalAlign}),AlignHorizontally:e=>e.textAlign,AlignVertically:e=>e.verticalAlign,TextWrap:e=>e.wrap,GridLines:e=>e.gridLines,AddColumnLeft:e=>e.selectedHeaders,AddColumnRight:e=>e.selectedHeaders,AddRowBelow:e=>e.selectedHeaders,AddRowAbove:e=>e.selectedHeaders,DeleteColumn:e=>e.selectedHeaders,DeleteRow:e=>e.selectedHeaders},It=":not(.k-dropdownlist button):not(.k-combobox button):not(.k-upload-button):not(.k-colorpicker button):not(.k-split-button .k-split-button-arrow)",St=["button"+It,".k-button-group > button"+It,".k-dropdownlist",".k-combobox",".k-colorpicker"],wt=h.forwardRef(((e,t)=>{s.validatePackage(Ct);const n=s.shouldShowValidationUI(Ct),{toolbar:l=kt}=e,i=[];"boolean"==typeof l?i.push(...l?kt:[]):i.push(...l);const[u,f]=h.useState(null),[b,v]=h.useState(i.findIndex((e=>e.selected))||0),[y,C]=h.useState(!1),x=h.useRef(null),E=h.useRef(null),I=h.useRef(null),S=h.useRef(null),w=h.useRef(null),[N,R]=h.useState({}),A=h.useRef({});A.current=N;const D=h.useRef({});D.current=e;const L=d.useLocalization(),K=h.useCallback((e=>{D.current.onSelect&&D.current.onSelect.call(void 0,e)}),[]),F=h.useCallback((e=>{D.current.onChange&&D.current.onChange.call(void 0,e)}),[]),T=h.useCallback((e=>{D.current.onChangeFormat&&D.current.onChangeFormat.call(void 0,e)}),[]),z=h.useCallback((e=>{D.current.onExcelImport&&D.current.onExcelImport.call(void 0,e)}),[]),P=h.useCallback((e=>{D.current.onExcelExport&&D.current.onExcelExport.call(void 0,e)}),[]),B=h.useRef(null);h.useImperativeHandle(B,(()=>({element:x.current,get instance(){return w.current},props:e,get view(){return w.current.view},get workbook(){return w.current.workbook},executeCommand(e){var t;null==(t=w.current)||t.executeCommand(e)},fromJSON(e){var t;return null==(t=w.current)?void 0:t.fromJSON(e)},toJSON:()=>w.current.toJSON(),saveJSON:()=>w.current.saveJSON(),fromFile:e=>w.current.fromFile(e),saveAsExcel(e){var t;null==(t=w.current)||t.saveAsExcel({...w.current.options.excel,saveAs:p.saveAs,Workbook:g.Workbook,...e})},activeSheet(e){var t;return null==(t=w.current)?void 0:t.activeSheet(e)},sheets:()=>w.current.sheets(),refresh(){var e;return null==(e=w.current)?void 0:e.refresh()}})),[e]),h.useImperativeHandle(t,(()=>B.current));const O=h.useCallback((()=>w.current&&w.current.view.nameEditor),[]),M=h.useCallback((e=>{const t={};xt.forEach((n=>{"function"==typeof e.range[n]?t[n]=e.range[n]():"gridLines"===n&&(t[n]=e.range.sheet().showGridLines())})),t.selectedHeaders=e.range.sheet().selectedHeaders(),(xt.some((e=>t[e]!==A.current[e]))||t.selectedHeaders.allCols!==A.current.selectedHeaders.allCols||t.selectedHeaders.allRows!==A.current.selectedHeaders.allRows)&&R(t)}),[]),j=h.useCallback((e=>{const t=e.name,n=he[t];f({title:"Error"===e.title?L.toLanguageString(he.error,ve[he.error]):e.title,message:n?L.toLanguageString(n,ve[n]||e.text):e.text,close:e.close})}),[]),H=h.useCallback((()=>{f(null),null==u||u.close()}),[u]),W=d.useInternationalization(),U=d.useLocalization();h.useEffect((()=>{var t;const n={...e.defaultProps,sheets:structuredClone(null==(t=e.defaultProps)?void 0:t.sheets),messages:{workbook:{defaultSheetName:U.toLanguageString(he.defaultSheetName,ve[he.defaultSheetName])}},intl:{localeInfo:()=>W.localeInfo(),localeCurrency:()=>W.localeCurrency(),parseDate:(e,t)=>W.parseDate(e,t),toString:(e,t)=>W.toString(e,t),format:(e,...t)=>W.format(e,...t)},formulaBarInputRef:E,formulaCellInputRef:I,nameBoxRef:S},a=new m.SpreadsheetWidget(x.current,n);w.current=a,a.bind("select",K),a.bind("change",F),a.bind("changeFormat",T),a.bind("excelImport",z),a.bind("excelExport",P),a.view.bind("update",M),a.view.bind("message",j);const o=a.activeSheet();return o&&M({range:o.range(o.activeCell())}),C(!0),()=>{a.destroy()}}),[]);const q=h.useCallback(((e,t)=>{const n=h.createElement(e,{spreadsheetRef:w,value:Et[e.displayName]?Et[e.displayName](N):void 0,key:t});return n.type===a.ToolbarSeparator?h.createElement(e,{key:t}):n}),[N]);let V=null;return i.length&&(V=h.createElement(o.TabStrip,{selected:b,animation:!1,className:"k-floatwrap k-spreadsheet-tabstrip",style:{minHeight:"auto"},onSelect:e=>v(e.selected)},i.map((e=>{const t=e.textKey?U.toLanguageString(e.textKey,ve[e.textKey]):e.text;return h.createElement(o.TabStripTab,{key:e.textKey||e.text,title:t},h.createElement(a.Toolbar,{buttons:St,className:"k-spreadsheet-toolbar"},e.tools.map(((e,t)=>Array.isArray(e)?h.createElement(a.ButtonGroup,{key:t},e.map(((e,t)=>q(e,t)))):q(e,t)))))})))),h.createElement("div",{ref:x,style:e.style,className:s.classNames("k-widget k-spreadsheet",e.className),role:"application"},V,h.createElement("div",{className:"k-spreadsheet-action-bar"},h.createElement(ye,{ref:S,nameEditor:O}),h.createElement("div",{className:"k-spreadsheet-formula-bar"},h.createElement(s.IconWrap,{name:"formula-fx",icon:c.formulaFxIcon}),h.createElement(k,{ref:E}))),h.createElement("div",{className:"k-spreadsheet-view"},h.createElement("div",{className:"k-spreadsheet-fixed-container"}),h.createElement("div",{className:"k-spreadsheet-scroller"},h.createElement("div",{className:"k-spreadsheet-view-size"})),h.createElement("div",{tabIndex:0,className:"k-spreadsheet-clipboard",contentEditable:"true"}),h.createElement(k,{ref:I,className:"k-spreadsheet-cell-editor"})),h.createElement(Ie,{spreadsheetRef:w}),u&&h.createElement(r.Dialog,{title:u.title,onClose:H},h.createElement("div",null,u.message),h.createElement(r.DialogActionsBar,{layout:"start"},h.createElement(a.Button,{themeColor:"primary",onClick:H,autoFocus:!0},L.toLanguageString(he.ok,ve[he.ok])))),n&&h.createElement(s.WatermarkOverlay,null))}));wt.displayName="KendoReactSpreadsheet",wt.propTypes={className:n.string,defaultProps:n.any,toolbar:n.oneOfType([n.bool,n.arrayOf(n.any)]),style:n.object,onSelect:n.func,onChange:n.func,onChangeFormat:n.func,onExcelImport:n.func,onExcelExport:n.func};Object.defineProperty(e,"CalcError",{enumerable:!0,get:function(){return m.CalcError}}),Object.defineProperty(e,"CellRef",{enumerable:!0,get:function(){return m.CellRef}}),Object.defineProperty(e,"Context",{enumerable:!0,get:function(){return m.Context}}),Object.defineProperty(e,"Matrix",{enumerable:!0,get:function(){return m.Matrix}}),Object.defineProperty(e,"NULLREF",{enumerable:!0,get:function(){return m.NULLREF}}),Object.defineProperty(e,"NameRef",{enumerable:!0,get:function(){return m.NameRef}}),Object.defineProperty(e,"Range",{enumerable:!0,get:function(){return m.Range}}),Object.defineProperty(e,"RangeRef",{enumerable:!0,get:function(){return m.RangeRef}}),Object.defineProperty(e,"Ref",{enumerable:!0,get:function(){return m.Ref}}),Object.defineProperty(e,"Sheet",{enumerable:!0,get:function(){return m.Sheet}}),Object.defineProperty(e,"SpreadsheetWidget",{enumerable:!0,get:function(){return m.SpreadsheetWidget}}),Object.defineProperty(e,"UnionRef",{enumerable:!0,get:function(){return m.UnionRef}}),Object.defineProperty(e,"View",{enumerable:!0,get:function(){return m.View}}),Object.defineProperty(e,"Workbook",{enumerable:!0,get:function(){return m.Workbook}}),Object.defineProperty(e,"dateToSerial",{enumerable:!0,get:function(){return m.dateToSerial}}),Object.defineProperty(e,"defineAlias",{enumerable:!0,get:function(){return m.defineAlias}}),Object.defineProperty(e,"defineFunction",{enumerable:!0,get:function(){return m.defineFunction}}),Object.defineProperty(e,"packDate",{enumerable:!0,get:function(){return m.packDate}}),Object.defineProperty(e,"packTime",{enumerable:!0,get:function(){return m.packTime}}),Object.defineProperty(e,"serialToDate",{enumerable:!0,get:function(){return m.serialToDate}}),Object.defineProperty(e,"unpackDate",{enumerable:!0,get:function(){return m.unpackDate}}),Object.defineProperty(e,"unpackTime",{enumerable:!0,get:function(){return m.unpackTime}}),e.AddColumnLeft=it,e.AddColumnRight=dt,e.AddRowAbove=mt,e.AddRowBelow=ut,e.AlignHorizontally=Qe,e.AlignVertically=Ye,e.Alignment=_e,e.BackgroundColor=Ue,e.Bold=Fe,e.CleanFormatting=e=>{const{spreadsheetRef:t}=e,n=h.useCallback((()=>{t.current&&t.current.executeCommand({command:"PropertyCleanCommand"})}),[]);return h.createElement(a.Button,{type:"button",icon:"clean-css",svgIcon:c.clearCssIcon,fillMode:"flat",onClick:n,title:d.useLocalization().toLanguageString(he.cleanFormatting,ve[he.cleanFormatting])})},e.DecreaseDecimal=yt,e.DecreaseFontSize=He,e.DeleteColumn=pt,e.DeleteRow=gt,e.ExcelExport=Se,e.FontFamily=Pe,e.FontSize=Oe,e.Format=tt,e.GridLines=et,e.IncreaseDecimal=ht,e.IncreaseFontSize=je,e.Italic=Te,e.Open=we,e.Redo=bt,e.Spreadsheet=wt,e.TextColor=We,e.TextWrap=Ze,e.Underline=ze,e.Undo=ft,e.defaultTabs=kt,e.toolsValueMap=Et}));
package/index.d.mts CHANGED
@@ -189,6 +189,17 @@ export { Context }
189
189
 
190
190
  export { dateToSerial }
191
191
 
192
+ /**
193
+ * The DecreaseDecimal tool component.
194
+ */
195
+ export declare const DecreaseDecimal: React_2.FunctionComponent<DecreaseDecimalProps>;
196
+
197
+ /**
198
+ * The props of the DecreaseDecimal tool component.
199
+ */
200
+ export declare interface DecreaseDecimalProps extends SpreadsheetToolProps {
201
+ }
202
+
192
203
  /**
193
204
  * The DecreaseFontSize tool component.
194
205
  */
@@ -314,6 +325,17 @@ export declare interface GridLinesProps extends SpreadsheetToolProps {
314
325
  value?: boolean;
315
326
  }
316
327
 
328
+ /**
329
+ * The IncreaseDecimal tool component.
330
+ */
331
+ export declare const IncreaseDecimal: React_2.FunctionComponent<IncreaseDecimalProps>;
332
+
333
+ /**
334
+ * The props of the IncreaseDecimal tool component.
335
+ */
336
+ export declare interface IncreaseDecimalProps extends SpreadsheetToolProps {
337
+ }
338
+
317
339
  /**
318
340
  * The IncreaseFontSize tool component.
319
341
  */
@@ -680,6 +702,11 @@ export declare interface TextWrapProps extends SpreadsheetToolProps {
680
702
  value?: boolean;
681
703
  }
682
704
 
705
+ /**
706
+ * @hidden
707
+ */
708
+ export declare const toolsValueMap: any;
709
+
683
710
  /**
684
711
  * The Underline tool component.
685
712
  */
package/index.d.ts CHANGED
@@ -189,6 +189,17 @@ export { Context }
189
189
 
190
190
  export { dateToSerial }
191
191
 
192
+ /**
193
+ * The DecreaseDecimal tool component.
194
+ */
195
+ export declare const DecreaseDecimal: React_2.FunctionComponent<DecreaseDecimalProps>;
196
+
197
+ /**
198
+ * The props of the DecreaseDecimal tool component.
199
+ */
200
+ export declare interface DecreaseDecimalProps extends SpreadsheetToolProps {
201
+ }
202
+
192
203
  /**
193
204
  * The DecreaseFontSize tool component.
194
205
  */
@@ -314,6 +325,17 @@ export declare interface GridLinesProps extends SpreadsheetToolProps {
314
325
  value?: boolean;
315
326
  }
316
327
 
328
+ /**
329
+ * The IncreaseDecimal tool component.
330
+ */
331
+ export declare const IncreaseDecimal: React_2.FunctionComponent<IncreaseDecimalProps>;
332
+
333
+ /**
334
+ * The props of the IncreaseDecimal tool component.
335
+ */
336
+ export declare interface IncreaseDecimalProps extends SpreadsheetToolProps {
337
+ }
338
+
317
339
  /**
318
340
  * The IncreaseFontSize tool component.
319
341
  */
@@ -680,6 +702,11 @@ export declare interface TextWrapProps extends SpreadsheetToolProps {
680
702
  value?: boolean;
681
703
  }
682
704
 
705
+ /**
706
+ * @hidden
707
+ */
708
+ export declare const toolsValueMap: any;
709
+
683
710
  /**
684
711
  * The Underline tool component.
685
712
  */
package/index.js CHANGED
@@ -5,4 +5,4 @@
5
5
  * Licensed under commercial license. See LICENSE.md in the package root for more information
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
8
- "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("./Spreadsheet.js"),e=require("@progress/kendo-spreadsheet-common"),r=require("./tools/align.js"),i=require("./tools/backgroundColor.js"),a=require("./tools/bold.js"),l=require("./tools/defaultTools.js"),u=require("./tools/export.js"),d=require("./tools/fontFamily.js"),n=require("./tools/fontSize.js"),c=require("./tools/cleanFormat.js"),b=require("./tools/format.js"),m=require("./tools/gridLines.js"),p=require("./tools/italic.js"),f=require("./tools/open.js"),g=require("./tools/redo.js"),t=require("./tools/tableTools.js"),s=require("./tools/textColor.js"),y=require("./tools/textWrap.js"),R=require("./tools/underline.js"),O=require("./tools/undo.js");exports.Spreadsheet=o.Spreadsheet;Object.defineProperty(exports,"CalcError",{enumerable:!0,get:()=>e.CalcError});Object.defineProperty(exports,"CellRef",{enumerable:!0,get:()=>e.CellRef});Object.defineProperty(exports,"Context",{enumerable:!0,get:()=>e.Context});Object.defineProperty(exports,"Matrix",{enumerable:!0,get:()=>e.Matrix});Object.defineProperty(exports,"NULLREF",{enumerable:!0,get:()=>e.NULLREF});Object.defineProperty(exports,"NameRef",{enumerable:!0,get:()=>e.NameRef});Object.defineProperty(exports,"Range",{enumerable:!0,get:()=>e.Range});Object.defineProperty(exports,"RangeRef",{enumerable:!0,get:()=>e.RangeRef});Object.defineProperty(exports,"Ref",{enumerable:!0,get:()=>e.Ref});Object.defineProperty(exports,"Sheet",{enumerable:!0,get:()=>e.Sheet});Object.defineProperty(exports,"SpreadsheetWidget",{enumerable:!0,get:()=>e.SpreadsheetWidget});Object.defineProperty(exports,"UnionRef",{enumerable:!0,get:()=>e.UnionRef});Object.defineProperty(exports,"View",{enumerable:!0,get:()=>e.View});Object.defineProperty(exports,"Workbook",{enumerable:!0,get:()=>e.Workbook});Object.defineProperty(exports,"dateToSerial",{enumerable:!0,get:()=>e.dateToSerial});Object.defineProperty(exports,"defineAlias",{enumerable:!0,get:()=>e.defineAlias});Object.defineProperty(exports,"defineFunction",{enumerable:!0,get:()=>e.defineFunction});Object.defineProperty(exports,"packDate",{enumerable:!0,get:()=>e.packDate});Object.defineProperty(exports,"packTime",{enumerable:!0,get:()=>e.packTime});Object.defineProperty(exports,"serialToDate",{enumerable:!0,get:()=>e.serialToDate});Object.defineProperty(exports,"unpackDate",{enumerable:!0,get:()=>e.unpackDate});Object.defineProperty(exports,"unpackTime",{enumerable:!0,get:()=>e.unpackTime});exports.AlignHorizontally=r.AlignHorizontally;exports.AlignVertically=r.AlignVertically;exports.Alignment=r.Alignment;exports.BackgroundColor=i.BackgroundColor;exports.Bold=a.Bold;exports.defaultTabs=l.defaultTabs;exports.ExcelExport=u.ExcelExport;exports.FontFamily=d.FontFamily;exports.DecreaseFontSize=n.DecreaseFontSize;exports.FontSize=n.FontSize;exports.IncreaseFontSize=n.IncreaseFontSize;exports.CleanFormatting=c.CleanFormatting;exports.Format=b.Format;exports.GridLines=m.GridLines;exports.Italic=p.Italic;exports.Open=f.Open;exports.Redo=g.Redo;exports.AddColumnLeft=t.AddColumnLeft;exports.AddColumnRight=t.AddColumnRight;exports.AddRowAbove=t.AddRowAbove;exports.AddRowBelow=t.AddRowBelow;exports.DeleteColumn=t.DeleteColumn;exports.DeleteRow=t.DeleteRow;exports.TextColor=s.TextColor;exports.TextWrap=y.TextWrap;exports.Underline=R.Underline;exports.Undo=O.Undo;
8
+ "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("./Spreadsheet.js"),e=require("@progress/kendo-spreadsheet-common"),i=require("./tools/adjustDecimals.js"),r=require("./tools/align.js"),a=require("./tools/backgroundColor.js"),l=require("./tools/bold.js"),u=require("./tools/defaultTools.js"),c=require("./tools/export.js"),d=require("./tools/fontFamily.js"),n=require("./tools/fontSize.js"),b=require("./tools/cleanFormat.js"),m=require("./tools/format.js"),s=require("./tools/gridLines.js"),p=require("./tools/italic.js"),f=require("./tools/open.js"),g=require("./tools/redo.js"),t=require("./tools/tableTools.js"),y=require("./tools/textColor.js"),R=require("./tools/textWrap.js"),O=require("./tools/underline.js"),j=require("./tools/undo.js");exports.Spreadsheet=o.Spreadsheet;exports.toolsValueMap=o.toolsValueMap;Object.defineProperty(exports,"CalcError",{enumerable:!0,get:()=>e.CalcError});Object.defineProperty(exports,"CellRef",{enumerable:!0,get:()=>e.CellRef});Object.defineProperty(exports,"Context",{enumerable:!0,get:()=>e.Context});Object.defineProperty(exports,"Matrix",{enumerable:!0,get:()=>e.Matrix});Object.defineProperty(exports,"NULLREF",{enumerable:!0,get:()=>e.NULLREF});Object.defineProperty(exports,"NameRef",{enumerable:!0,get:()=>e.NameRef});Object.defineProperty(exports,"Range",{enumerable:!0,get:()=>e.Range});Object.defineProperty(exports,"RangeRef",{enumerable:!0,get:()=>e.RangeRef});Object.defineProperty(exports,"Ref",{enumerable:!0,get:()=>e.Ref});Object.defineProperty(exports,"Sheet",{enumerable:!0,get:()=>e.Sheet});Object.defineProperty(exports,"SpreadsheetWidget",{enumerable:!0,get:()=>e.SpreadsheetWidget});Object.defineProperty(exports,"UnionRef",{enumerable:!0,get:()=>e.UnionRef});Object.defineProperty(exports,"View",{enumerable:!0,get:()=>e.View});Object.defineProperty(exports,"Workbook",{enumerable:!0,get:()=>e.Workbook});Object.defineProperty(exports,"dateToSerial",{enumerable:!0,get:()=>e.dateToSerial});Object.defineProperty(exports,"defineAlias",{enumerable:!0,get:()=>e.defineAlias});Object.defineProperty(exports,"defineFunction",{enumerable:!0,get:()=>e.defineFunction});Object.defineProperty(exports,"packDate",{enumerable:!0,get:()=>e.packDate});Object.defineProperty(exports,"packTime",{enumerable:!0,get:()=>e.packTime});Object.defineProperty(exports,"serialToDate",{enumerable:!0,get:()=>e.serialToDate});Object.defineProperty(exports,"unpackDate",{enumerable:!0,get:()=>e.unpackDate});Object.defineProperty(exports,"unpackTime",{enumerable:!0,get:()=>e.unpackTime});exports.DecreaseDecimal=i.DecreaseDecimal;exports.IncreaseDecimal=i.IncreaseDecimal;exports.AlignHorizontally=r.AlignHorizontally;exports.AlignVertically=r.AlignVertically;exports.Alignment=r.Alignment;exports.BackgroundColor=a.BackgroundColor;exports.Bold=l.Bold;exports.defaultTabs=u.defaultTabs;exports.ExcelExport=c.ExcelExport;exports.FontFamily=d.FontFamily;exports.DecreaseFontSize=n.DecreaseFontSize;exports.FontSize=n.FontSize;exports.IncreaseFontSize=n.IncreaseFontSize;exports.CleanFormatting=b.CleanFormatting;exports.Format=m.Format;exports.GridLines=s.GridLines;exports.Italic=p.Italic;exports.Open=f.Open;exports.Redo=g.Redo;exports.AddColumnLeft=t.AddColumnLeft;exports.AddColumnRight=t.AddColumnRight;exports.AddRowAbove=t.AddRowAbove;exports.AddRowBelow=t.AddRowBelow;exports.DeleteColumn=t.DeleteColumn;exports.DeleteRow=t.DeleteRow;exports.TextColor=y.TextColor;exports.TextWrap=R.TextWrap;exports.Underline=O.Underline;exports.Undo=j.Undo;
package/index.mjs CHANGED
@@ -6,75 +6,79 @@
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
8
8
  "use client";
9
- import { Spreadsheet as r } from "./Spreadsheet.mjs";
10
- import { CalcError as n, CellRef as a, Context as m, Matrix as f, NULLREF as l, NameRef as p, Range as i, RangeRef as x, Ref as d, Sheet as c, SpreadsheetWidget as R, UnionRef as g, View as s, Workbook as u, dateToSerial as A, defineAlias as C, defineFunction as F, packDate as k, packTime as S, serialToDate as T, unpackDate as D, unpackTime as w } from "@progress/kendo-spreadsheet-common";
11
- import { AlignHorizontally as z, AlignVertically as E, Alignment as L } from "./tools/align.mjs";
12
- import { BackgroundColor as b } from "./tools/backgroundColor.mjs";
13
- import { Bold as B } from "./tools/bold.mjs";
14
- import { defaultTabs as I } from "./tools/defaultTools.mjs";
15
- import { ExcelExport as V } from "./tools/export.mjs";
16
- import { FontFamily as G } from "./tools/fontFamily.mjs";
17
- import { DecreaseFontSize as M, FontSize as O, IncreaseFontSize as j } from "./tools/fontSize.mjs";
18
- import { CleanFormatting as J } from "./tools/cleanFormat.mjs";
19
- import { Format as P } from "./tools/format.mjs";
20
- import { GridLines as X } from "./tools/gridLines.mjs";
21
- import { Italic as Z } from "./tools/italic.mjs";
22
- import { Open as $ } from "./tools/open.mjs";
23
- import { Redo as oe } from "./tools/redo.mjs";
24
- import { AddColumnLeft as te, AddColumnRight as ne, AddRowAbove as ae, AddRowBelow as me, DeleteColumn as fe, DeleteRow as le } from "./tools/tableTools.mjs";
25
- import { TextColor as ie } from "./tools/textColor.mjs";
26
- import { TextWrap as de } from "./tools/textWrap.mjs";
27
- import { Underline as Re } from "./tools/underline.mjs";
28
- import { Undo as se } from "./tools/undo.mjs";
9
+ import { Spreadsheet as r, toolsValueMap as t } from "./Spreadsheet.mjs";
10
+ import { CalcError as n, CellRef as l, Context as m, Matrix as p, NULLREF as f, NameRef as i, Range as x, RangeRef as d, Ref as c, Sheet as R, SpreadsheetWidget as s, UnionRef as u, View as g, Workbook as A, dateToSerial as C, defineAlias as D, defineFunction as F, packDate as k, packTime as S, serialToDate as T, unpackDate as w, unpackTime as h } from "@progress/kendo-spreadsheet-common";
11
+ import { DecreaseDecimal as E, IncreaseDecimal as L } from "./tools/adjustDecimals.mjs";
12
+ import { AlignHorizontally as b, AlignVertically as y, Alignment as B } from "./tools/align.mjs";
13
+ import { BackgroundColor as V } from "./tools/backgroundColor.mjs";
14
+ import { Bold as M } from "./tools/bold.mjs";
15
+ import { defaultTabs as v } from "./tools/defaultTools.mjs";
16
+ import { ExcelExport as H } from "./tools/export.mjs";
17
+ import { FontFamily as j } from "./tools/fontFamily.mjs";
18
+ import { DecreaseFontSize as J, FontSize as K, IncreaseFontSize as P } from "./tools/fontSize.mjs";
19
+ import { CleanFormatting as X } from "./tools/cleanFormat.mjs";
20
+ import { Format as Z } from "./tools/format.mjs";
21
+ import { GridLines as $ } from "./tools/gridLines.mjs";
22
+ import { Italic as oe } from "./tools/italic.mjs";
23
+ import { Open as te } from "./tools/open.mjs";
24
+ import { Redo as ne } from "./tools/redo.mjs";
25
+ import { AddColumnLeft as me, AddColumnRight as pe, AddRowAbove as fe, AddRowBelow as ie, DeleteColumn as xe, DeleteRow as de } from "./tools/tableTools.mjs";
26
+ import { TextColor as Re } from "./tools/textColor.mjs";
27
+ import { TextWrap as ue } from "./tools/textWrap.mjs";
28
+ import { Underline as Ae } from "./tools/underline.mjs";
29
+ import { Undo as De } from "./tools/undo.mjs";
29
30
  export {
30
- te as AddColumnLeft,
31
- ne as AddColumnRight,
32
- ae as AddRowAbove,
33
- me as AddRowBelow,
34
- z as AlignHorizontally,
35
- E as AlignVertically,
36
- L as Alignment,
37
- b as BackgroundColor,
38
- B as Bold,
31
+ me as AddColumnLeft,
32
+ pe as AddColumnRight,
33
+ fe as AddRowAbove,
34
+ ie as AddRowBelow,
35
+ b as AlignHorizontally,
36
+ y as AlignVertically,
37
+ B as Alignment,
38
+ V as BackgroundColor,
39
+ M as Bold,
39
40
  n as CalcError,
40
- a as CellRef,
41
- J as CleanFormatting,
41
+ l as CellRef,
42
+ X as CleanFormatting,
42
43
  m as Context,
43
- M as DecreaseFontSize,
44
- fe as DeleteColumn,
45
- le as DeleteRow,
46
- V as ExcelExport,
47
- G as FontFamily,
48
- O as FontSize,
49
- P as Format,
50
- X as GridLines,
51
- j as IncreaseFontSize,
52
- Z as Italic,
53
- f as Matrix,
54
- l as NULLREF,
55
- p as NameRef,
56
- $ as Open,
57
- i as Range,
58
- x as RangeRef,
59
- oe as Redo,
60
- d as Ref,
61
- c as Sheet,
44
+ E as DecreaseDecimal,
45
+ J as DecreaseFontSize,
46
+ xe as DeleteColumn,
47
+ de as DeleteRow,
48
+ H as ExcelExport,
49
+ j as FontFamily,
50
+ K as FontSize,
51
+ Z as Format,
52
+ $ as GridLines,
53
+ L as IncreaseDecimal,
54
+ P as IncreaseFontSize,
55
+ oe as Italic,
56
+ p as Matrix,
57
+ f as NULLREF,
58
+ i as NameRef,
59
+ te as Open,
60
+ x as Range,
61
+ d as RangeRef,
62
+ ne as Redo,
63
+ c as Ref,
64
+ R as Sheet,
62
65
  r as Spreadsheet,
63
- R as SpreadsheetWidget,
64
- ie as TextColor,
65
- de as TextWrap,
66
- Re as Underline,
67
- se as Undo,
68
- g as UnionRef,
69
- s as View,
70
- u as Workbook,
71
- A as dateToSerial,
72
- I as defaultTabs,
73
- C as defineAlias,
66
+ s as SpreadsheetWidget,
67
+ Re as TextColor,
68
+ ue as TextWrap,
69
+ Ae as Underline,
70
+ De as Undo,
71
+ u as UnionRef,
72
+ g as View,
73
+ A as Workbook,
74
+ C as dateToSerial,
75
+ v as defaultTabs,
76
+ D as defineAlias,
74
77
  F as defineFunction,
75
78
  k as packDate,
76
79
  S as packTime,
77
80
  T as serialToDate,
78
- D as unpackDate,
79
- w as unpackTime
81
+ t as toolsValueMap,
82
+ w as unpackDate,
83
+ h as unpackTime
80
84
  };
@@ -10,7 +10,7 @@ const e = {
10
10
  name: "@progress/kendo-react-spreadsheet",
11
11
  productName: "KendoReact",
12
12
  productCodes: ["KENDOUIREACT", "KENDOUICOMPLETE"],
13
- publishDate: 1718182623,
13
+ publishDate: 1719467686,
14
14
  version: "",
15
15
  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"
16
16
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@progress/kendo-react-spreadsheet",
3
- "version": "8.1.0-develop.9",
3
+ "version": "8.1.0",
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": "8.1.0-develop.9",
33
- "@progress/kendo-react-common": "8.1.0-develop.9",
34
- "@progress/kendo-react-dialogs": "8.1.0-develop.9",
35
- "@progress/kendo-react-dropdowns": "8.1.0-develop.9",
36
- "@progress/kendo-react-inputs": "8.1.0-develop.9",
37
- "@progress/kendo-react-intl": "8.1.0-develop.9",
38
- "@progress/kendo-react-layout": "8.1.0-develop.9",
39
- "@progress/kendo-react-popup": "8.1.0-develop.9",
40
- "@progress/kendo-react-sortable": "8.1.0-develop.9",
41
- "@progress/kendo-react-upload": "8.1.0-develop.9",
32
+ "@progress/kendo-react-buttons": "8.1.0",
33
+ "@progress/kendo-react-common": "8.1.0",
34
+ "@progress/kendo-react-dialogs": "8.1.0",
35
+ "@progress/kendo-react-dropdowns": "8.1.0",
36
+ "@progress/kendo-react-inputs": "8.1.0",
37
+ "@progress/kendo-react-intl": "8.1.0",
38
+ "@progress/kendo-react-layout": "8.1.0",
39
+ "@progress/kendo-react-popup": "8.1.0",
40
+ "@progress/kendo-react-sortable": "8.1.0",
41
+ "@progress/kendo-react-upload": "8.1.0",
42
42
  "@progress/kendo-spreadsheet-common": "v1.1.2",
43
43
  "@progress/kendo-svg-icons": "^3.0.0",
44
44
  "react": "^16.8.2 || ^17.0.0 || ^18.0.0",
@@ -5,4 +5,4 @@
5
5
  * Licensed under commercial license. See LICENSE.md in the package root for more information
6
6
  *-------------------------------------------------------------------------------------------
7
7
  */
8
- "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const f=require("react"),D=require("@progress/kendo-react-buttons"),I=require("@progress/kendo-react-intl"),a=require("../messages.js"),o=require("@progress/kendo-svg-icons");function p(e){const c=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const t in e)if(t!=="default"){const n=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(c,t,n.get?n:{enumerable:!0,get:()=>e[t]})}}return c.default=e,Object.freeze(c)}const i=p(f),l=e=>t=>{const{icon:n,svgIcon:u,titleKey:s,value:m}=e,{spreadsheetRef:r}=t,d=i.useCallback(()=>{if(r.current){const g={command:"AdjustDecimalsCommand",options:{value:m}};r.current.executeCommand(g)}},[]);return i.createElement(D.Button,{type:"button",icon:n,svgIcon:u,fillMode:"flat",onClick:d,title:I.useLocalization().toLanguageString(s,a.messages[s])})},y=l({icon:o.decimalIncreaseIcon.name,svgIcon:o.decimalIncreaseIcon,value:1,titleKey:a.keys.increaseDecimal}),b=l({icon:o.decimalDecreaseIcon.name,svgIcon:o.decimalDecreaseIcon,value:-1,titleKey:a.keys.decreaseDecimal});exports.DecreaseDecimal=b;exports.IncreaseDecimal=y;
8
+ "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const I=require("react"),p=require("@progress/kendo-react-buttons"),y=require("@progress/kendo-react-intl"),o=require("../messages.js"),a=require("@progress/kendo-svg-icons");function b(e){const c=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const t in e)if(t!=="default"){const n=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(c,t,n.get?n:{enumerable:!0,get:()=>e[t]})}}return c.default=e,Object.freeze(c)}const i=b(I),l=e=>t=>{const{icon:n,svgIcon:d,titleKey:s,value:D}=e,{spreadsheetRef:r}=t,g=i.useCallback(()=>{if(r.current){const f={command:"AdjustDecimalsCommand",options:{value:D}};r.current.executeCommand(f)}},[]);return i.createElement(p.Button,{type:"button",icon:n,svgIcon:d,fillMode:"flat",onClick:g,title:y.useLocalization().toLanguageString(s,o.messages[s])})},u=l({icon:a.decimalIncreaseIcon.name,svgIcon:a.decimalIncreaseIcon,value:1,titleKey:o.keys.increaseDecimal});u.displayName="IncreaseDecimal";const m=l({icon:a.decimalDecreaseIcon.name,svgIcon:a.decimalDecreaseIcon,value:-1,titleKey:o.keys.decreaseDecimal});m.displayName="DecreaseDecimal";exports.DecreaseDecimal=m;exports.IncreaseDecimal=u;
@@ -7,12 +7,12 @@
7
7
  */
8
8
  "use client";
9
9
  import * as t from "react";
10
- import { Button as f } from "@progress/kendo-react-buttons";
11
- import { useLocalization as D } from "@progress/kendo-react-intl";
12
- import { keys as a, messages as g } from "../messages.mjs";
13
- import { decimalIncreaseIcon as c, decimalDecreaseIcon as n } from "@progress/kendo-svg-icons";
10
+ import { Button as D } from "@progress/kendo-react-buttons";
11
+ import { useLocalization as f } from "@progress/kendo-react-intl";
12
+ import { keys as n, messages as I } from "../messages.mjs";
13
+ import { decimalIncreaseIcon as c, decimalDecreaseIcon as a } from "@progress/kendo-svg-icons";
14
14
  const s = (i) => (m) => {
15
- const { icon: r, svgIcon: l, titleKey: e, value: u } = i, { spreadsheetRef: o } = m, d = t.useCallback(() => {
15
+ const { icon: l, svgIcon: r, titleKey: e, value: u } = i, { spreadsheetRef: o } = m, d = t.useCallback(() => {
16
16
  if (o.current) {
17
17
  const p = {
18
18
  command: "AdjustDecimalsCommand",
@@ -22,28 +22,31 @@ const s = (i) => (m) => {
22
22
  }
23
23
  }, []);
24
24
  return /* @__PURE__ */ t.createElement(
25
- f,
25
+ D,
26
26
  {
27
27
  type: "button",
28
- icon: r,
29
- svgIcon: l,
28
+ icon: l,
29
+ svgIcon: r,
30
30
  fillMode: "flat",
31
31
  onClick: d,
32
- title: D().toLanguageString(e, g[e])
32
+ title: f().toLanguageString(e, I[e])
33
33
  }
34
34
  );
35
- }, K = s({
35
+ }, g = s({
36
36
  icon: c.name,
37
37
  svgIcon: c,
38
38
  value: 1,
39
- titleKey: a.increaseDecimal
40
- }), b = s({
41
- icon: n.name,
42
- svgIcon: n,
39
+ titleKey: n.increaseDecimal
40
+ });
41
+ g.displayName = "IncreaseDecimal";
42
+ const y = s({
43
+ icon: a.name,
44
+ svgIcon: a,
43
45
  value: -1,
44
- titleKey: a.decreaseDecimal
46
+ titleKey: n.decreaseDecimal
45
47
  });
48
+ y.displayName = "DecreaseDecimal";
46
49
  export {
47
- b as DecreaseDecimal,
48
- K as IncreaseDecimal
50
+ y as DecreaseDecimal,
51
+ g as IncreaseDecimal
49
52
  };