@progress/kendo-ui
Version:
This package is part of the [Kendo UI for jQuery](http://www.telerik.com/kendo-ui) suite.
236 lines • 138 kB
JavaScript
/* @license */
(function(e,t){typeof exports==`object`&&typeof module<`u`?t(exports,require("kendo.excel.min.js"),require("kendo.progressbar.min.js"),require("kendo.pdf.min.js"),require("kendo.toolbar.min.js"),require("kendo.list.min.js"),require("kendo.spreadsheet.common.min.js"),require("kendo.core.min.js"),require("kendo.binder.min.js"),require("kendo.validator.min.js"),require("kendo.icons.min.js"),require("kendo.tabstrip.min.js"),require("kendo.window.min.js"),require("kendo.colorpicker.min.js"),require("kendo.combobox.min.js"),require("kendo.dropdownlist.min.js"),require("kendo.dropdownbutton.min.js"),require("kendo.popup.min.js"),require("kendo.togglebutton.min.js"),require("kendo.calendar.min.js"),require("kendo.listview.min.js"),require("kendo.dom.min.js"),require("kendo.sortable.min.js"),require("kendo.treeview.min.js"),require("kendo.numerictextbox.min.js"),require("kendo.datepicker.min.js"),require("kendo.datetimepicker.min.js"),require("kendo.ooxml.min.js")):typeof define==`function`&&define.amd?define(`exports,./kendo.excel.min,./kendo.progressbar.min,./kendo.pdf.min,./kendo.toolbar.min,./kendo.list.min,./kendo.spreadsheet.common.min,./kendo.core.min,./kendo.binder.min,./kendo.validator.min,./kendo.icons.min,./kendo.tabstrip.min,./kendo.window.min,./kendo.colorpicker.min,./kendo.combobox.min,./kendo.dropdownlist.min,./kendo.dropdownbutton.min,./kendo.popup.min,./kendo.togglebutton.min,./kendo.calendar.min,./kendo.listview.min,./kendo.dom.min,./kendo.sortable.min,./kendo.treeview.min,./kendo.numerictextbox.min,./kendo.datepicker.min,./kendo.datetimepicker.min,./kendo.ooxml.min`.split(`,`),t):(e=typeof globalThis<`u`?globalThis:e||self,t((e.kendo=e.kendo||{},e.kendo._globals=e.kendo._globals||{},e.kendo._globals.Spreadsheet={}),e.kendo._globals.Excel,e.kendo._globals.Progressbar,e.kendo._globals.Pdf,e.kendo._globals.Toolbar,e.kendo._globals.List,e.kendo._globals.SpreadsheetCommon,e.kendo._globals.Core,e.kendo._globals.Binder,e.kendo._globals.Validator,e.kendo._globals.Icons,e.kendo._globals.Tabstrip,e.kendo._globals.Window,e.kendo._globals.Colorpicker,e.kendo._globals.Combobox,e.kendo._globals.Dropdownlist,e.kendo._globals.Dropdownbutton,e.kendo._globals.Popup,e.kendo._globals.Togglebutton,e.kendo._globals.Calendar,e.kendo._globals.Listview,e.kendo._globals.Dom,e.kendo._globals.Sortable,e.kendo._globals.Treeview,e.kendo._globals.Numerictextbox,e.kendo._globals.Datepicker,e.kendo._globals.Datetimepicker,e.kendo._globals.Ooxml))})(this,function(e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h,g,_,v,y,b,x,S,C,w,T,E,D){Object.defineProperties(e,{__esModule:{value:!0},[Symbol.toStringTag]:{value:`Module`}}),(function(e){var t=e.jQuery,n=e.data.ObservableObject,r=e.spreadsheet.messages.dialogs={apply:`Apply`,save:`Save`,cancel:`Cancel`,remove:`Remove`,retry:`Retry`,revert:`Revert`,okText:`OK`,formatCellsDialog:{title:`Format`,categories:{number:`Number`,currency:`Currency`,date:`Date`}},fontFamilyDialog:{title:`Font`},fontSizeDialog:{title:`Font size`},bordersDialog:{title:`Borders`},alignmentDialog:{title:`Alignment`,buttons:{justifyLeft:`Align left`,justifyCenter:`Center`,justifyRight:`Align right`,justifyFull:`Justify`,alignTop:`Align top`,alignMiddle:`Align middle`,alignBottom:`Align bottom`}},mergeDialog:{title:`Merge cells`,buttons:{mergeCells:`Merge all`,mergeHorizontally:`Merge horizontally`,mergeVertically:`Merge vertically`,unmerge:`Unmerge`}},freezeDialog:{title:`Freeze panes`,buttons:{freezePanes:`Freeze panes`,freezeRows:`Freeze rows`,freezeColumns:`Freeze columns`,unfreeze:`Unfreeze panes`}},confirmationDialog:{text:`Are you sure you want to remove this sheet?`,title:`Sheet remove`},validationDialog:{title:`Data Validation`,hintMessage:`Please enter a valid {0} value {1}.`,hintTitle:`Validation {0}`,criteria:{any:`Any value`,number:`Number`,text:`Text`,date:`Date`,custom:`Custom Formula`,list:`List`},comparers:{greaterThan:`greater than`,lessThan:`less than`,between:`between`,notBetween:`not between`,equalTo:`equal to`,notEqualTo:`not equal to`,greaterThanOrEqualTo:`greater than or equal to`,lessThanOrEqualTo:`less than or equal to`},comparerMessages:{greaterThan:`greater than {0}`,lessThan:`less than {0}`,between:`between {0} and {1}`,notBetween:`not between {0} and {1}`,equalTo:`equal to {0}`,notEqualTo:`not equal to {0}`,greaterThanOrEqualTo:`greater than or equal to {0}`,lessThanOrEqualTo:`less than or equal to {0}`,custom:`that satisfies the formula: {0}`},labels:{criteria:`Criteria`,comparer:`Comparer`,min:`Min`,max:`Max`,value:`Value`,start:`Start`,end:`End`,onInvalidData:`On invalid data`,rejectInput:`Reject input`,showWarning:`Show warning`,showHint:`Show hint`,hintTitle:`Hint title`,hintMessage:`Hint message`,ignoreBlank:`Ignore blank`,showListButton:`Display button to show list`,showCalendarButton:`Display button to show calendar`},placeholders:{typeTitle:`Type title`,typeMessage:`Type message`}},exportAsDialog:{title:`Export...`,defaultFileName:`Workbook`,xlsx:{description:`Excel Workbook (.xlsx)`},pdf:{description:`Portable Document Format (.pdf)`,area:{workbook:`Entire Workbook`,sheet:`Active Sheet`,selection:`Selection`},paper:{a2:`A2 (420 mm × 594 mm)`,a3:`A3 (297 mm x 420 mm)`,a4:`A4 (210 mm x 297 mm)`,a5:`A5 (148 mm x 210 mm)`,b3:`B3 (353 mm × 500 mm)`,b4:`B4 (250 mm x 353 mm)`,b5:`B5 (176 mm x 250 mm)`,folio:`Folio (8.5" x 13")`,legal:`Legal (8.5" x 14")`,letter:`Letter (8.5" x 11")`,tabloid:`Tabloid (11" x 17")`,executive:`Executive (7.25" x 10.5")`},margin:{normal:`Normal`,narrow:`Narrow`,wide:`Wide`}},labels:{scale:`Scale`,fit:`Fit to page`,fileName:`File name`,saveAsType:`Save as type`,exportArea:`Export`,paperSize:`Paper size`,margins:`Margins`,orientation:`Orientation`,print:`Print`,guidelines:`Guidelines`,center:`Center`,horizontally:`Horizontally`,vertically:`Vertically`}},modifyMergedDialog:{errorMessage:`Cannot change part of a merged cell.`},rangeDisabledDialog:{errorMessage:`Destination range contains disabled cells.`},intersectsArrayDialog:{errorMessage:`You cannot alter part of an array`},incompatibleRangesDialog:{errorMessage:`Incompatible ranges`},noFillDirectionDialog:{errorMessage:`Cannot determine fill direction`},duplicateSheetNameDialog:{errorMessage:`Duplicate sheet name`},overflowDialog:{errorMessage:`Cannot paste, because the copy area and the paste area are not the same size and shape.`},useKeyboardDialog:{title:`Copying and pasting`,errorMessage:`These actions cannot be invoked through the menu. Please use the keyboard shortcuts instead:`,labels:{forCopy:`for copy`,forCut:`for cut`,forPaste:`for paste`}},unsupportedSelectionDialog:{errorMessage:`That action cannot be performed on multiple selection.`},linkDialog:{title:`Hyperlink`,labels:{text:`Text`,url:`Address`,removeLink:`Remove link`}},sheetRenameDialog:{title:`Rename Sheet`,labels:{text:`Rename Sheet`,rename:`Rename`}},insertCommentDialog:{title:`Insert comment`,labels:{comment:`Comment`,removeComment:`Remove comment`}},insertImageDialog:{title:`Insert image`,info:`Drag an image here, or click to select`,typeError:`Please select a JPEG, PNG or GIF image`}},i={};e.spreadsheet.dialogs={register:function(e,t){i[e]=t},registered:function(e){return!!i[e]},create:function(e,t){var n=i[e];if(n)return new n(t)}};var a=e.spreadsheet.SpreadsheetDialog=e.Observable.extend({init:function(n){e.Observable.fn.init.call(this,n),this.options=F(t.extend(!0,{},this.options,n)),this.bind(this.events,n)},events:[`close`,`activate`],options:{autoFocus:!0},dialog:function(){if(!this._dialog){var n={autoFocus:!1,scrollable:!1,resizable:!1,modal:!0,visible:!1,width:this.options.width||320,title:this.options.title,open:function(){this.center()},close:this._onDialogClose.bind(this),activate:this._onDialogActivate.bind(this),deactivate:this._onDialogDeactivate.bind(this)};this._dialog=t(`<div class='k-spreadsheet-window k-action-window k-popup-edit-form' />`).addClass(this.options.className||``).append(e.template(this.options.template)({messages:e.spreadsheet.messages.dialogs||r,ns:e.ns,errors:this.options.errors})).kendoWindow(n).data(`kendoWindow`)}return this._dialog},_onDialogClose:function(){this.trigger(`close`,{action:this._action})},_onDialogActivate:function(){this.trigger(`activate`)},_onDialogDeactivate:function(){this.trigger(`deactivate`),this.destroy()},destroy:function(){this._dialog&&=(this._dialog.destroy(),null)},open:function(){this.dialog().open(),this.dialog().element.find(`.k-button-primary`).trigger(`focus`)},apply:function(){this.close()},close:function(){this._action=`close`,this.dialog().close()}});function o(t,n){return e.spreadsheet.formatting.text(t,n)}var s=e.spreadsheet.FormatCellsViewModel=n.extend({init:function(e){n.fn.init.call(this,e),this.useCategory(this.category)},useCategory:function(e){var t=e&&e.type||`number`,n=t==`currency`;this.category=e,this.set(`showCurrencyFilter`,n&&this.currencies.length>1),n?this.currency(this.currencies[0]):this.set(`formats`,this.allFormats[t+`Formats`]),this.useFirstFormat()},useFirstFormat:function(){this.formats.length&&this.set(`format`,this.formats[0].value)},currency:function(e){if(e!==void 0){this._currency=e;var t=e.value,n=[{currency:t,decimals:!0},{currency:t,decimals:!0,iso:!0},{currency:t,decimals:!1}];n=n.map(function(e){return e=s.convert.currency(e),{value:e,name:o(1e3,e)}}),this.set(`formats`,n),this.useFirstFormat()}return this._currency||this.currencies[0]},categoryFilter:function(e){return e!==void 0&&this.useCategory(e),this.category},preview:function(){var e=this.get(`format`),t=this.value||0;return e&&e.length?o(t,e):t}});s.convert={currency:function(e){function t(e,t){return Array(t+1).join(e)}var n=e.currency,r=n.pattern[1];return e.decimals&&(r=r.replace(/n/g,`n`+n[`.`]+t(`0`,n.decimals))),r=e.iso?`"`+n.abbr+`" `+r.replace(/\s*\$\s*/g,``):r.replace(/\$/g,JSON.stringify(n.symbol)),r=r.replace(/n/g,`?`),r},date:function(e){return/T|Z/.test(e)?``:e.toLowerCase().replace(/tt/g,`AM/PM`).replace(/'/g,`"`)}};function c(e,n){for(var r=[],i=[],a=0;a<n.length;a++)t.inArray(n[a][e],i)==-1&&(r.push(n[a]),i.push(n[a][e]));return r}var l=a.extend({init:function(n){var i=e.spreadsheet.messages.dialogs.formatCellsDialog||r,o={title:i.title,categories:[{type:`number`,name:i.categories.number},{type:`currency`,name:i.categories.currency},{type:`date`,name:i.categories.date}]};a.fn.init.call(this,t.extend(o,n)),this._generateFormats()},options:{className:`k-spreadsheet-format-cells`,template:t=>{let n;return n=`<div class='k-edit-form-container'><div class='k-root-tabs' data-${e.htmlEncode(t.ns)}role='tabstrip' data-${e.htmlEncode(t.ns)}text-field='name' data-${e.htmlEncode(t.ns)}bind='source: categories, value: categoryFilter' data-${e.htmlEncode(t.ns)}animation='false'></div>
<div class='k-spreadsheet-preview' data-${e.htmlEncode(t.ns)}bind='text: preview'></div><select data-${e.htmlEncode(t.ns)}role='dropdownlist' class='k-format-filter' data-${e.htmlEncode(t.ns)}text-field='description' data-${e.htmlEncode(t.ns)}value-field='value.name' data-${e.htmlEncode(t.ns)}bind='visible: showCurrencyFilter, value: currency, source: currencies'></select><ul data-${e.htmlEncode(t.ns)}role='staticlist' tabindex='0' id='formats-list' aria-label='formats list' class='k-list k-reset' bind:data-${e.htmlEncode(t.ns)}template='formatItemTemplate' data-${e.htmlEncode(t.ns)}value-primitive='true' data-${e.htmlEncode(t.ns)}value-field='value' data-${e.htmlEncode(t.ns)}bind='source: formats, value: format'></ul>
<div class='k-actions'><button class='k-button k-button-primary' data-${e.htmlEncode(t.ns)}bind='click: apply'><span class='k-button-text'>${e.htmlEncode(t.messages.apply)}</span></button><button class='k-button' data-${e.htmlEncode(t.ns)}bind='click: close'><span class='k-button-text'>${e.htmlEncode(t.messages.cancel)}</span></button></div>
</div>`,n}},_generateFormats:function(){var n=this.options;if(n.currencies||=l.currenciesFrom(e.cultures),n.numberFormats||=[{value:`#.00%`,name:`100.00%`},{value:`#%`,name:`100%`},{value:`#.00`,name:`1024.00`},{value:`#,###.00`,name:`1,024.00`}],!n.dateFormats){var r=e.cultures.current.calendars.standard.patterns;n.dateFormats=c(`value`,t.map(r,function(e){if(e=s.convert.date(e),e)return{value:e,name:o(34567.7678,e)}}))}},open:function(t){var n=this.options,r=t.value(),i=n.categories.slice(0),o;this.viewModel=new s({currencies:n.currencies.slice(0),allFormats:{numberFormats:n.numberFormats.slice(0),dateFormats:n.dateFormats.slice(0)},categories:i,format:t.format(),category:r instanceof Date?i[2]:i[0],apply:this.apply.bind(this),close:this.close.bind(this),value:r,formatItemTemplate:t=>e.htmlEncode(t.name)}),a.fn.open.call(this),o=this.dialog().element,e.bind(o,this.viewModel);var c=o.find(`select.k-format-filter`).data(`kendoDropDownList`);n.currencies.length>10&&c.setOptions({filter:`contains`}),o.find(e.roleSelector(`staticlist`)).parent().addClass(`k-list-wrapper`),o.find(`.k-tabstrip-content`).remove()},apply:function(){var e=this.viewModel.format;a.fn.apply.call(this),this.trigger(`action`,{command:`PropertyChangeCommand`,options:{property:`format`,value:e}})}});l.currenciesFrom=function(n){return c(`description`,t.map(n,function(t,n){if(/-/.test(n)){var r=t.numberFormat.currency;return{description:e.format(`{0} ({1}, {2})`,r.name,r.abbr,r.symbol),value:r}}}))},e.spreadsheet.dialogs.register(`formatCells`,l),e.spreadsheet.dialogs.FormatCellsDialog=l;var u=a.extend({options:{className:`k-spreadsheet-message`,title:``,messageId:``,text:``,template:t=>{let n;return n=`<div class='k-spreadsheet-message-content' data-${e.htmlEncode(t.ns)}bind='text: text'></div>
<div class='k-actions'><button class='k-button k-button-primary'
data-${e.htmlEncode(t.ns)}bind='click: close'><span
class='k-button-text'>${t.messages.okText}</span></button></div>`,n}},open:function(){a.fn.open.call(this);var t=this.options,n=t.text;t.messageId&&(n=e.getter(t.messageId,!0)(e.spreadsheet.messages.dialogs)),e.bind(this.dialog().element,{text:n,close:this.close.bind(this)})}});e.spreadsheet.dialogs.register(`message`,u);var d=a.extend({init:function(n){var i=e.spreadsheet.messages.dialogs.confirmationDialog||r,o={title:i.title,text:i.text};a.fn.init.call(this,t.extend(o,n))},options:{className:`k-spreadsheet-message`,messageId:``,template:t=>{let n;return n=`<div class='k-spreadsheet-message-content' data-${e.htmlEncode(t.ns)}bind='text: text'></div>
<div class='k-actions'><button class='k-button k-button-primary'
data-${e.htmlEncode(t.ns)}bind='click: confirm'><span
class='k-button-text'>${t.messages.okText}</span></button><button
class='k-button'
data-${e.htmlEncode(t.ns)}bind='click: cancel'><span
class='k-button-text'>${t.messages.cancel}</span></button></div>`,n}},open:function(){a.fn.open.call(this);var t=this.options,n=t.text;t.messageId&&(n=e.getter(t.messageId,!0)(e.spreadsheet.messages.dialogs)),e.bind(this.dialog().element,{text:n,confirm:this.confirm.bind(this),cancel:this.close.bind(this)})},isConfirmed:function(){return this._confirmed},confirm:function(){this._confirmed=!0,this.close()}});e.spreadsheet.dialogs.register(`confirmation`,d);var f=a.extend({options:{className:`k-spreadsheet-message`,title:``,messageId:``,text:``,template:t=>{let n;return n=`<div class='k-spreadsheet-message-content' data-${e.htmlEncode(t.ns)}bind='text: text'></div><div class='k-actions'><button class='k-button k-button-primary' data-${e.htmlEncode(t.ns)}bind='click: retry'><span class='k-button-text'>${t.messages.retry}</span></button><button class='k-button' data-${e.htmlEncode(t.ns)}bind='click: cancel'><span class='k-button-text'>${t.messages.cancel}</span></button></div>`,n}},open:function(){a.fn.open.call(this);var t=this.options,n=t.text;t.messageId&&(n=e.getter(t.messageId,!0)(e.spreadsheet.messages.dialogs)),e.bind(this.dialog().element,{text:n,retry:this.retry.bind(this),cancel:this.close.bind(this)})},retry:function(){this._retry=!0,this.close()}});e.spreadsheet.dialogs.register(`validationError`,f);var p=a.extend({init:function(n){var i=e.spreadsheet.messages.dialogs.fontFamilyDialog||r;a.fn.init.call(this,t.extend({title:i.title},n)),this._list()},options:{template:()=>`<ul class='k-list k-reset'></ul>`},_list:function(){var t=this.dialog().element.find(`ul`),n=this.options.options,r=this.options.default;this.list=new e.ui.StaticList(t,{dataSource:new e.data.DataSource({data:n}),template:t=>e.htmlEncode(t),value:r,change:this.apply.bind(this)}),this.list.dataSource.fetch()},apply:function(e){a.fn.apply.call(this),this.trigger(`action`,{command:`PropertyChangeCommand`,options:{property:`fontFamily`,value:e.sender.value()[0]}})}});e.spreadsheet.dialogs.register(`fontFamily`,p);var m=a.extend({init:function(n){var i=e.spreadsheet.messages.dialogs.fontSizeDialog||r;a.fn.init.call(this,t.extend({title:i.title},n)),this._list()},options:{template:()=>`<ul class='k-list k-reset'></ul>`},_list:function(){var t=this.dialog().element.find(`ul`),n=this.options.options,r=this.options.default;this.list=new e.ui.StaticList(t,{dataSource:new e.data.DataSource({data:n}),template:t=>e.htmlEncode(t),value:r,change:this.apply.bind(this)}),this.list.dataSource.fetch()},apply:function(t){a.fn.apply.call(this),this.trigger(`action`,{command:`PropertyChangeCommand`,options:{property:`fontSize`,value:e.parseInt(t.sender.value()[0])}})}});e.spreadsheet.dialogs.register(`fontSize`,m);var h=a.extend({init:function(n){var i=e.spreadsheet.messages.dialogs.bordersDialog||r;a.fn.init.call(this,t.extend({title:i.title},n)),this.element=this.dialog().element,this._borderPalette(),this.viewModel=e.observable({apply:this.apply.bind(this),close:this.close.bind(this)}),e.bind(this.element.find(`.k-actions`),this.viewModel)},options:{template:t=>{let n;return n=`<div></div>
<div class='k-actions'><button class='k-button k-button-primary'
data-${e.htmlEncode(t.ns)}bind='click: apply'><span
class='k-button-text'>${e.htmlEncode(t.messages.apply)}</span></button><button
class='k-button'
data-${e.htmlEncode(t.ns)}bind='click: close'><span
class='k-button-text'>${e.htmlEncode(t.messages.cancel)}</span></button></div>`,n}},apply:function(){a.fn.apply.call(this);var e=this.borderPalette.value();e.color&&e.type&&this.trigger(`action`,{command:`BorderChangeCommand`,options:{border:e.type,style:{size:1,color:e.color}}})},_borderPalette:function(){var t=this.dialog().element.find(`div`).first();this.borderPalette=new e.spreadsheet.BorderPalette(t,{change:this.value.bind(this)})},value:function(e){if(e===void 0)return this._state;this._state=e}});e.spreadsheet.dialogs.register(`borders`,h);var g=a.extend({init:function(t){a.fn.init.call(this,t),this.element=this.dialog().element,this.property=t.property,this.options.title=t.title,this.viewModel=e.observable({apply:this.apply.bind(this),close:this.close.bind(this)}),e.bind(this.element.find(`.k-actions`),this.viewModel)},options:{template:t=>{let n;return n=`<div></div>
<div class='k-actions'><button class='k-button k-button-primary'
data-${e.htmlEncode(t.ns)}bind='click: apply'><span
class='k-button-text'>${e.htmlEncode(t.messages.apply)}</span></button><button
class='k-button'
data-${e.htmlEncode(t.ns)}bind='click: close'><span
class='k-button-text'>${e.htmlEncode(t.messages.cancel)}</span></button></div>`,n}},apply:function(){a.fn.apply.call(this),this.trigger(`action`,{command:`PropertyChangeCommand`,options:{property:this.property,value:this.value()}})},value:function(e){if(e===void 0)return this._value;this._value=e.value}}),_=g.extend({init:function(e){e.width=177,g.fn.init.call(this,e),this._colorPalette()},_colorPalette:function(){var e=this.dialog().element.find(`div`).first();this.colorPalette=e.kendoColorPalette({palette:`#ffffff.#000000.#d6ecff.#4e5b6f.#7fd13b.#ea157a.#feb80a.#00addc.#738ac8.#1ab39f.#f2f2f2.#7f7f7f.#a7d6ff.#d9dde4.#e5f5d7.#fad0e4.#fef0cd.#c5f2ff.#e2e7f4.#c9f7f1.#d8d8d8.#595959.#60b5ff.#b3bcca.#cbecb0.#f6a1c9.#fee29c.#8be6ff.#c7d0e9.#94efe3.#bfbfbf.#3f3f3f.#007dea.#8d9baf.#b2e389.#f272af.#fed46b.#51d9ff.#aab8de.#5fe7d5.#a5a5a5.#262626.#003e75.#3a4453.#5ea226.#af0f5b.#c58c00.#0081a5.#425ea9.#138677.#7f7f7f.#0c0c0c.#00192e.#272d37.#3f6c19.#750a3d.#835d00.#00566e.#2c3f71.#0c594f`.split(`.`),change:this.value.bind(this)}).data(`kendoColorPalette`)}});e.spreadsheet.dialogs.register(`colorPicker`,_);var v=g.extend({init:function(e){e.width=268,g.fn.init.call(this,e),this.dialog().setOptions({animation:!1}),this.dialog().one(`activate`,this._colorPicker.bind(this))},_colorPicker:function(){var e=this.dialog().element.find(`div`).first();this.colorPicker=e.kendoFlatColorPicker({change:this.value.bind(this)}).data(`kendoFlatColorPicker`)}});e.spreadsheet.dialogs.register(`customColor`,v);var y=a.extend({init:function(n){var i=e.spreadsheet.messages.dialogs.alignmentDialog||r,o={title:i.title,buttons:[{property:`textAlign`,value:`left`,iconClass:`align-left`,text:i.buttons.justifyLeft},{property:`textAlign`,value:`center`,iconClass:`align-center`,text:i.buttons.justifyCenter},{property:`textAlign`,value:`right`,iconClass:`align-right`,text:i.buttons.justifyRight},{property:`textAlign`,value:`justify`,iconClass:`align-justify`,text:i.buttons.justifyFull},{property:`verticalAlign`,value:`top`,iconClass:`align-top`,text:i.buttons.alignTop},{property:`verticalAlign`,value:`center`,iconClass:`align-middle`,text:i.buttons.alignMiddle},{property:`verticalAlign`,value:`bottom`,iconClass:`align-bottom`,text:i.buttons.alignBottom}]};a.fn.init.call(this,t.extend(o,n)),this._list()},options:{template:()=>`<ul class='k-list k-reset'></ul>`},_list:function(){var t=this.dialog().element.find(`ul`);this.list=new e.ui.StaticList(t,{dataSource:new e.data.DataSource({data:this.options.buttons}),template:t=>`<a role='button' title='${t.text}' data-property='${t.property}' data-value='${t.value}'>
${e.ui.icon(t.iconClass)} ${t.text}
</a>`,change:this.apply.bind(this)}),this.list.dataSource.fetch()},apply:function(e){var t=e.sender.value()[0];a.fn.apply.call(this),this.trigger(`action`,{command:`PropertyChangeCommand`,options:{property:t.property,value:t.value}})}});e.spreadsheet.dialogs.register(`alignment`,y);var b=a.extend({init:function(n){var i=e.spreadsheet.messages.dialogs.mergeDialog||r,o={title:i.title,buttons:[{value:`cells`,iconClass:`cells-merge`,text:i.buttons.mergeCells},{value:`horizontally`,iconClass:`cells-merge-horizontally`,text:i.buttons.mergeHorizontally},{value:`vertically`,iconClass:`cells-merge-vertically`,text:i.buttons.mergeVertically},{value:`unmerge`,iconClass:`table-unmerge`,text:i.buttons.unmerge}]};a.fn.init.call(this,t.extend(o,n)),this._list()},options:{template:()=>`<ul class='k-list k-reset'></ul>`},_list:function(){var t=this.dialog().element.find(`ul`);this.list=new e.ui.StaticList(t,{dataSource:new e.data.DataSource({data:this.options.buttons}),template:t=>`<a role='button' title='${t.text}' data-value='${t.value}'>${e.ui.icon(t.iconClass)}${t.text}</a>`,change:this.apply.bind(this)}),this.list.dataSource.fetch()},apply:function(e){var t=e.sender.value()[0];a.fn.apply.call(this),this.trigger(`action`,{command:`MergeCellCommand`,options:{value:t.value}})}});e.spreadsheet.dialogs.register(`merge`,b);var x=a.extend({init:function(n){var i=e.spreadsheet.messages.dialogs.freezeDialog||r,o={title:i.title,buttons:[{value:`panes`,iconClass:`pane-freeze`,text:i.buttons.freezePanes},{value:`rows`,iconClass:`row-freeze`,text:i.buttons.freezeRows},{value:`columns`,iconClass:`column-freeze`,text:i.buttons.freezeColumns},{value:`unfreeze`,iconClass:`table-unmerge`,text:i.buttons.unfreeze}]};a.fn.init.call(this,t.extend(o,n)),this._list()},options:{template:()=>`<ul class='k-list k-reset'></ul>`},_list:function(){var t=this.dialog().element.find(`ul`);this.list=new e.ui.StaticList(t,{dataSource:new e.data.DataSource({data:this.options.buttons}),template:t=>`<a role='button' title='${t.text}' data-value='${t.value}'>${e.ui.icon(t.iconClass)}${t.text}</a>`,change:this.apply.bind(this)}),this.list.dataSource.fetch()},apply:function(e){var t=e.sender.value()[0];a.fn.apply.call(this),this.trigger(`action`,{command:`FreezePanesCommand`,options:{value:t.value}})}});e.spreadsheet.dialogs.register(`freeze`,x);var S=e.spreadsheet.ValidationCellsViewModel=n.extend({init:function(e){n.fn.init.call(this,e),this.bind(`change`,(function(e){e.field===`criterion`&&(this.reset(),(this.criterion===`custom`||this.criterion===`list`)&&this.setHintMessageTemplate()),e.field===`comparer`&&this.setHintMessageTemplate(),(e.field==`hintMessage`||e.field==`hintTitle`)&&!this._mute&&(this.shouldBuild=!1),(e.field==`from`||e.field==`to`||e.field==`hintMessageTemplate`||e.field==`type`)&&this.shouldBuild&&this.buildMessages()}).bind(this)),this.reset()},buildMessages:function(){this._mute=!0,this.set(`hintTitle`,this.hintTitleTemplate?e.format(this.hintTitleTemplate,this.type):``),this.set(`hintMessage`,this.hintMessageTemplate?e.format(this.hintMessageTemplate,this.from,this.to):``),this._mute=!1},reset:function(){this.setComparers(),this.set(`comparer`,this.comparers[0].type),this.set(`from`,null),this.set(`to`,null),this.set(`useCustomMessages`,!1),this.shouldBuild=!0,this.hintTitleTemplate=this.defaultHintTitle,this.buildMessages()},setComparers:function(){var e=this.defaultComparers,t=[];if(this.criterion===`text`)for(var n=[`equalTo`,`notEqualTo`],r=0;r<e.length;r++)n[0]==e[r].type&&(t.push(e[r]),n.shift());else t=e.slice();this.set(`comparers`,t)},setHintMessageTemplate:function(){this.criterion!==`custom`&&this.criterion!==`list`?this.set(`hintMessageTemplate`,e.format(this.defaultHintMessage,this.criterion,this.comparerMessages[this.comparer])):(this.set(`hintMessageTemplate`,``),this.set(`hintMessage`,``))},isAny:function(){return this.get(`criterion`)===`any`},isNumber:function(){return this.get(`criterion`)===`number`},showToForNumber:function(){return this.showTo()&&this.isNumber()},showToForDate:function(){return this.showTo()&&this.isDate()},isText:function(){return this.get(`criterion`)===`text`},isDate:function(){return this.get(`criterion`)===`date`},isList:function(){return this.get(`criterion`)===`list`},isCustom:function(){return this.get(`criterion`)===`custom`},showRemove:function(){return this.get(`hasValidation`)},showTo:function(){return this.get(`comparer`)==`between`||this.get(`comparer`)==`notBetween`},update:function(e){this.set(`hasValidation`,!!e),e&&this.fromValidationObject(e)},fromValidationObject:function(e){this.set(`criterion`,e.dataType),this.set(`comparer`,e.comparerType),this.set(`from`,e.from),this.set(`to`,e.to),this.set(`type`,e.type),this.set(`ignoreBlank`,e.allowNulls),this.set(`showButton`,e.showButton),e.messageTemplate||e.titleTemplate?(this.hintMessageTemplate=e.messageTemplate,this.hintMessage=e.messageTemplate,this.hintTitleTemplate=e.titleTemplate,this.hintTitle=e.titleTemplate,this.useCustomMessages=!0,this.buildMessages()):this.useCustomMessages=!1},toValidationObject:function(){if(this.criterion===`any`)return null;var e={type:this.type,dataType:this.criterion,comparerType:this.comparer,from:this.from,to:this.to,allowNulls:this.ignoreBlank,showButton:this.showButton};return this.useCustomMessages&&(e.messageTemplate=this.shouldBuild?this.hintMessageTemplate:this.hintMessage,e.titleTemplate=this.hintTitle),e}}),C=a.extend({init:function(n){var i=e.spreadsheet.messages.dialogs.validationDialog||r,o={title:i.title,hintMessage:i.hintMessage,hintTitle:i.hintTitle,criteria:[{type:`any`,name:i.criteria.any},{type:`number`,name:i.criteria.number},{type:`text`,name:i.criteria.text},{type:`date`,name:i.criteria.date},{type:`custom`,name:i.criteria.custom},{type:`list`,name:i.criteria.list}],comparers:[{type:`greaterThan`,name:i.comparers.greaterThan},{type:`lessThan`,name:i.comparers.lessThan},{type:`between`,name:i.comparers.between},{type:`notBetween`,name:i.comparers.notBetween},{type:`equalTo`,name:i.comparers.equalTo},{type:`notEqualTo`,name:i.comparers.notEqualTo},{type:`greaterThanOrEqualTo`,name:i.comparers.greaterThanOrEqualTo},{type:`lessThanOrEqualTo`,name:i.comparers.lessThanOrEqualTo}],comparerMessages:i.comparerMessages};a.fn.init.call(this,t.extend(o,n))},options:{width:450,criterion:`any`,type:`reject`,ignoreBlank:!0,showButton:!0,useCustomMessages:!1,errorTemplate:t=>`<div class="k-tooltip k-tooltip-error k-validator-tooltip">
${e.ui.icon({icon:`exclamation-circle`,iconClass:`k-tooltip-icon`})}
<span class="k-tooltip-content">${t.message}</span>
<span class="k-callout k-callout-n"></span>
</div>`,template:t=>{let n;return n=`<div class="k-edit-form-container">
<div class="k-edit-label"><label for="criteria">${e.htmlEncode(t.messages.validationDialog.labels.criteria)}:</label></div>
<div class="k-edit-field"><select id="criteria" data-${e.htmlEncode(t.ns)}role="dropdownlist" title="${e.htmlEncode(t.messages.validationDialog.labels.criteria)}" data-${e.htmlEncode(t.ns)}text-field="name" data-${e.htmlEncode(t.ns)}value-field="type" data-${e.htmlEncode(t.ns)}bind="value: criterion, source: criteria"></select></div>
<div data-${e.htmlEncode(t.ns)}bind="visible: isNumber">
<div class="k-edit-label"><label for="number-comparer">${e.htmlEncode(t.messages.validationDialog.labels.comparer)}:</label></div>
<div class="k-edit-field"><select id="number-comparer" data-${e.htmlEncode(t.ns)}role="dropdownlist" title="${e.htmlEncode(t.messages.validationDialog.labels.comparer)}" data-${e.htmlEncode(t.ns)}text-field="name" data-${e.htmlEncode(t.ns)}value-field="type" data-${e.htmlEncode(t.ns)}bind="value: comparer, source: comparers"></select></div>
<div class="k-edit-label"><label for="comparer-min">${e.htmlEncode(t.messages.validationDialog.labels.min)}:</label></div>
<div class="k-edit-field"><span class="k-textbox k-input"><input id="comparer-min" name="${e.htmlEncode(t.messages.validationDialog.labels.min)}" title="${e.htmlEncode(t.messages.validationDialog.labels.min)}" placeholder="e.g. 10" class="k-input-inner" data-${e.htmlEncode(t.ns)}bind="value: from, enabled: isNumber" required="required" /></span></div>
<div data-${e.htmlEncode(t.ns)}bind="visible: showTo">
<div class="k-edit-label"><label for="comparer-max">${e.htmlEncode(t.messages.validationDialog.labels.max)}:</label></div>
<div class="k-edit-field"><span class="k-textbox k-input"><input id="comparer-max" name="${e.htmlEncode(t.messages.validationDialog.labels.max)}" title="${e.htmlEncode(t.messages.validationDialog.labels.max)}" placeholder="e.g. 100" class="k-input-inner" data-${e.htmlEncode(t.ns)}bind="value: to, enabled: showToForNumber" required="required" /></span></div>
</div>
</div><div data-${e.htmlEncode(t.ns)}bind="visible: isText">
<div class="k-edit-label"><label for="text-comparer">${e.htmlEncode(t.messages.validationDialog.labels.comparer)}:</label></div>
<div class="k-edit-field"><select id="text-comparer" data-${e.htmlEncode(t.ns)}role="dropdownlist" title="${e.htmlEncode(t.messages.validationDialog.labels.comparer)}" data-${e.htmlEncode(t.ns)}text-field="name" data-${e.htmlEncode(t.ns)}value-field="type" data-${e.htmlEncode(t.ns)}bind="value: comparer, source: comparers"></select></div>
<div class="k-edit-label"><label for="text-comparer-value">${e.htmlEncode(t.messages.validationDialog.labels.value)}:</label></div>
<div class="k-edit-field"><span class="k-textbox k-input"><input id="text-comparer-value" name="${e.htmlEncode(t.messages.validationDialog.labels.value)}" title="${e.htmlEncode(t.messages.validationDialog.labels.value)}" class="k-input-inner" data-${e.htmlEncode(t.ns)}bind="value: from, enabled: isText" required="required" /></span></div>
</div><div data-${e.htmlEncode(t.ns)}bind="visible: isDate">
<div class="k-edit-label"><label for="date-comparer">${e.htmlEncode(t.messages.validationDialog.labels.comparer)}:</label></div>
<div class="k-edit-field"><select id="date-comparer" data-${e.htmlEncode(t.ns)}role="dropdownlist" title="${e.htmlEncode(t.messages.validationDialog.labels.comparer)}" data-${e.htmlEncode(t.ns)}text-field="name" data-${e.htmlEncode(t.ns)}value-field="type" data-${e.htmlEncode(t.ns)}bind="value: comparer, source: comparers"></select></div>
<div class="k-edit-label"><label for="date-comparer-start">${e.htmlEncode(t.messages.validationDialog.labels.start)}:</label></div>
<div class="k-edit-field"><span class="k-textbox k-input"><input id="date-comparer-start" name="${e.htmlEncode(t.messages.validationDialog.labels.start)}" title="${e.htmlEncode(t.messages.validationDialog.labels.start)}" class="k-input-inner" data-${e.htmlEncode(t.ns)}bind="value: from, enabled: isDate" required="required" /></span></div>
<div data-${e.htmlEncode(t.ns)}bind="visible: showTo">
<div class="k-edit-label"><label for="date-comparer-end">${e.htmlEncode(t.messages.validationDialog.labels.end)}:</label></div>
<div class="k-edit-field"><span class="k-textbox k-input"><input id="date-comparer-end" name="${e.htmlEncode(t.messages.validationDialog.labels.end)}" title="${e.htmlEncode(t.messages.validationDialog.labels.end)}" class="k-input-inner" data-${e.htmlEncode(t.ns)}bind="value: to, enabled: showToForDate" required="required" /></span></div>
</div></div><div data-${e.htmlEncode(t.ns)}bind="visible: isCustom">
<div class="k-edit-label"><label for="custom-comparer-value">${e.htmlEncode(t.messages.validationDialog.labels.value)}:</label></div>
<div class="k-edit-field"><span class="k-textbox k-input"><input id="custom-comparer-value" name="${e.htmlEncode(t.messages.validationDialog.labels.value)}" title="${e.htmlEncode(t.messages.validationDialog.labels.value)}" class="k-input-inner" data-${e.htmlEncode(t.ns)}bind="value: from, enabled: isCustom" required="required" /></span></div>
</div><div data-${e.htmlEncode(t.ns)}bind="visible: isList">
<div class="k-edit-label"><label for="list-comparer-value">${e.htmlEncode(t.messages.validationDialog.labels.value)}:</label></div>
<div class="k-edit-field"><span class="k-textbox k-input"><input id="list-comparer-value" name="${e.htmlEncode(t.messages.validationDialog.labels.value)}" title="${e.htmlEncode(t.messages.validationDialog.labels.value)}" class="k-input-inner" data-${e.htmlEncode(t.ns)}bind="value: from, enabled: isList" required="required" /></span></div>
</div><div data-${e.htmlEncode(t.ns)}bind="visible: isList">
<div class="k-edit-field"><input type="checkbox" name="showButton" id="listShowButton" class="k-checkbox" data-${e.htmlEncode(t.ns)}bind="checked: showButton" /><label for="listShowButton" class="k-checkbox-label"> ${e.htmlEncode(t.messages.validationDialog.labels.showListButton)}</label></div>
</div><div data-${e.htmlEncode(t.ns)}bind="visible: isDate">
<div class="k-edit-field"><input type="checkbox" name="showButton" id="dateShowButton" class="k-checkbox" data-${e.htmlEncode(t.ns)}bind="checked: showButton" /><label for="dateShowButton" class="k-checkbox-label"> ${e.htmlEncode(t.messages.validationDialog.labels.showCalendarButton)}</label></div>
</div><div data-${e.htmlEncode(t.ns)}bind="invisible: isAny">
<div class="k-edit-field"><input type="checkbox" title="${e.htmlEncode(t.messages.validationDialog.labels.ignoreBlank)}" name="ignoreBlank" id="ignoreBlank" class="k-checkbox" data-${e.htmlEncode(t.ns)}bind="checked: ignoreBlank" /><label for="ignoreBlank" class="k-checkbox-label"> ${e.htmlEncode(t.messages.validationDialog.labels.ignoreBlank)}</label></div>
</div><div data-${e.htmlEncode(t.ns)}bind="invisible: isAny">
<div class="k-hr"></div>
<div class="k-edit-label"><label>${e.htmlEncode(t.messages.validationDialog.labels.onInvalidData)}:</label></div>
<div class="k-edit-field"><input type="radio" title="${e.htmlEncode(t.messages.validationDialog.labels.rejectInput)}" id="validationTypeReject" name="validationType" value="reject" data-${e.htmlEncode(t.ns)}bind="checked: type" class="k-radio" /><label for="validationTypeReject" class="k-radio-label">${e.htmlEncode(t.messages.validationDialog.labels.rejectInput)}</label> <input type="radio" title="${e.htmlEncode(t.messages.validationDialog.labels.showWarning)}" id="validationTypeWarning" name="validationType" value="warning" data-${e.htmlEncode(t.ns)}bind="checked: type" class="k-radio" /><label for="validationTypeWarning" class="k-radio-label">${e.htmlEncode(t.messages.validationDialog.labels.showWarning)}</label></div>
</div><div data-${e.htmlEncode(t.ns)}bind="invisible: isAny" class="hint-wrapper">
<div class="k-edit-field"><input type="checkbox" title="${e.htmlEncode(t.messages.validationDialog.labels.showHint)}" name="useCustomMessages" id="useCustomMessages" class="k-checkbox" data-${e.htmlEncode(t.ns)}bind="checked: useCustomMessages" /><label class="k-checkbox-label" for="useCustomMessages"> ${e.htmlEncode(t.messages.validationDialog.labels.showHint)}</label></div>
<div data-${e.htmlEncode(t.ns)}bind="visible: useCustomMessages">
<div class="k-edit-label"><label for="hint-title">${e.htmlEncode(t.messages.validationDialog.labels.hintTitle)}:</label></div>
<div class="k-edit-field"><span class="k-textbox k-input"><input id="hint-title" name="hint-title" class="k-input-inner" title="${e.htmlEncode(t.messages.validationDialog.labels.hintTitle)}" placeholder="${e.htmlEncode(t.messages.validationDialog.placeholders.typeTitle)}" data-${e.htmlEncode(t.ns)}bind="value: hintTitle" /></span></div>
<div class="k-edit-label"><label for="hint-message">${e.htmlEncode(t.messages.validationDialog.labels.hintMessage)}:</label></div>
<div class="k-edit-field"><span class="k-textbox k-input"><input id="hint-message" class="k-input-inner" title="${e.htmlEncode(t.messages.validationDialog.labels.hintMessage)}" placeholder="${e.htmlEncode(t.messages.validationDialog.placeholders.typeMessage)}" data-${e.htmlEncode(t.ns)}bind="value: hintMessage" /></span></div>
</div></div>
<div class="k-actions"><button class="k-button" data-${e.htmlEncode(t.ns)}bind="visible: showRemove, click: remove"><span class="k-button-text">${e.htmlEncode(t.messages.remove)}</span></button><button class="k-button k-button-primary" data-${e.htmlEncode(t.ns)}bind="click: apply"><span class="k-button-text">${e.htmlEncode(t.messages.apply)}</span></button><button class="k-button" data-${e.htmlEncode(t.ns)}bind="click: close"><span class="k-button-text">${e.htmlEncode(t.messages.cancel)}</span></button></div>
</div>`,n}},open:function(t){var n=this.options,r;this.viewModel=new S({type:n.type,defaultHintMessage:n.hintMessage,defaultHintTitle:n.hintTitle,defaultComparers:n.comparers.slice(0),comparerMessages:n.comparerMessages,criteria:n.criteria.slice(0),criterion:n.criterion,ignoreBlank:n.ignoreBlank,showButton:n.showButton,apply:this.apply.bind(this),close:this.close.bind(this),remove:this.remove.bind(this)}),this.viewModel.update(t.validation()),a.fn.open.call(this),r=this.dialog().element,this.validatable&&this.validatable.destroy(),e.bind(r,this.viewModel),this.validatable=new e.ui.Validator(r.find(`.k-edit-form-container`),{validateOnBlur:!1,errorTemplate:this.options.errorTemplate||void 0})},apply:function(){this.validatable.validate()&&(a.fn.apply.call(this),this.trigger(`action`,{command:`EditValidationCommand`,options:{value:this.viewModel.toValidationObject()}}))},remove:function(){this.viewModel.set(`criterion`,`any`),this.apply()}});e.spreadsheet.dialogs.register(`validation`,C),e.spreadsheet.dialogs.ValidationDialog=C;function w(e){return{value:e,text:P(`exportAsDialog.pdf.paper.`+e)}}var T=a.extend({init:function(t){a.fn.init.call(this,t),t=this.options,this.viewModel=e.observable({title:t.title,name:t.name,extension:t.extension,fileFormats:t.fileFormats,excel:t.excelExport,pdf:{proxyURL:t.pdfExport.proxyURL,forceProxy:t.pdfExport.forceProxy,title:t.pdfExport.title,author:t.pdfExport.author,autoPrint:t.pdfExport.autoPrint,subject:t.pdfExport.subject,keywords:t.pdfExport.keywords,creator:t.pdfExport.creator,date:t.pdfExport.date,fitWidth:t.pdf.fitWidth,area:t.pdf.area,areas:t.pdf.areas,paperSize:t.pdf.paperSize,paperSizes:t.pdf.paperSizes,margin:t.pdf.margin,margins:t.pdf.margins,landscape:t.pdf.landscape,guidelines:t.pdf.guidelines,hCenter:t.pdf.hCenter,vCenter:t.pdf.vCenter},apply:this.apply.bind(this),close:this.close.bind(this)});var n=this.dialog();this.viewModel.bind(`change`,function(e){e.field===`extension`&&(this.set(`showPdfOptions`,this.extension===`.pdf`),n.center())}),e.bind(n.element,this.viewModel)},options:{title:P(`exportAsDialog.title`,`Export...`),name:P(`exportAsDialog.defaultFileName`,`Workbook`),extension:`.xlsx`,fileFormats:[{description:P(`exportAsDialog.xlsx.description`,`Excel Workbook (.xlsx)`),extension:`.xlsx`},{description:P(`exportAsDialog.pdf.description`,`Portable Document Format (.pdf)`),extension:`.pdf`}],pdf:{fitWidth:!0,area:`workbook`,areas:[{area:`workbook`,text:P(`exportAsDialog.pdf.area.workbook`,`Entire Workbook`)},{area:`sheet`,text:P(`exportAsDialog.pdf.area.sheet`,`Active Sheet`)},{area:`selection`,text:P(`exportAsDialog.pdf.area.selection`,`Selection`)}],paperSize:`a4`,paperSizes:[`a2`,`a3`,`a4`,`a5`,`b3`,`b4`,`b5`,`folio`,`legal`,`letter`,`tabloid`,`executive`].map(w),margin:{bottom:`0.75in`,left:`0.7in`,right:`0.7in`,top:`0.75in`},margins:[{value:{bottom:`0.75in`,left:`0.7in`,right:`0.7in`,top:`0.75in`},text:P(`exportAsDialog.pdf.margin.normal`,`Normal`)},{value:{bottom:`0.75in`,left:`0.25in`,right:`0.25in`,top:`0.75in`},text:P(`exportAsDialog.pdf.margin.narrow`,`Narrow`)},{value:{bottom:`1in`,left:`1in`,right:`1in`,top:`1in`},text:P(`exportAsDialog.pdf.margin.wide`,`Wide`)}],landscape:!0,guidelines:!0,hCenter:!0,vCenter:!0},width:520,template:n=>{let r;return r=`<div class='k-edit-label'><label id='name-label'>${e.htmlEncode(n.messages.exportAsDialog.labels.fileName)}:</label></div>
<div class='k-edit-field'><span class='k-textbox k-input'><input aria-labelledby='name-label' class='k-input-inner' data-${e.htmlEncode(n.ns)}bind='value: name' /></span></div>
<div >
<div class='k-edit-label'><label id='file-format-label'>${e.htmlEncode(n.messages.exportAsDialog.labels.saveAsType)}:</label></div>
<div class='k-edit-field'><select aria-labelledby='file-format-label' data-${e.htmlEncode(n.ns)}role='dropdownlist' class='k-file-format' data-${e.htmlEncode(n.ns)}text-field='description' data-${e.htmlEncode(n.ns)}value-field='extension' data-${e.htmlEncode(n.ns)}bind='value: extension, source: fileFormats'></select></div>
</div>
<div class='k-export-config' data-${e.htmlEncode(n.ns)}bind='visible: showPdfOptions'>
<hr class='k-hr' />
<div class='k-edit-label'><label id='export-area-label'>${e.htmlEncode(n.messages.exportAsDialog.labels.exportArea)}:</label></div>
<div class='k-edit-field'><select aria-labelledby='export-area-label' data-${e.htmlEncode(n.ns)}role='dropdownlist' class='k-file-format' data-${e.htmlEncode(n.ns)}text-field='text' data-${e.htmlEncode(n.ns)}value-field='area' data-${e.htmlEncode(n.ns)}bind='value: pdf.area, source: pdf.areas'></select></div>
<div class='k-edit-label'><label id='paper-size-label'>${e.htmlEncode(n.messages.exportAsDialog.labels.paperSize)}:</label></div>
<div class='k-edit-field'><select aria-labelledby='paper-size-label' data-${e.htmlEncode(n.ns)}role='dropdownlist' class='k-file-format' data-${e.htmlEncode(n.ns)}text-field='text' data-${e.htmlEncode(n.ns)}value-field='value' data-${e.htmlEncode(n.ns)}bind='value: pdf.paperSize, source: pdf.paperSizes'></select></div>
<div class='k-edit-label'><label id='margins-label'>${e.htmlEncode(n.messages.exportAsDialog.labels.margins)}:</label></div>
<div class='k-edit-field'><select aria-labelledby='margins-label' data-${e.htmlEncode(n.ns)}role='dropdownlist' class='k-file-format' data-${e.htmlEncode(n.ns)}value-primitive='true'data-${e.htmlEncode(n.ns)}text-field='text' data-${e.htmlEncode(n.ns)}value-field='value' data-${e.htmlEncode(n.ns)}bind='value: pdf.margin, source: pdf.margins'></select></div>
<div class='k-edit-label'><label>${e.htmlEncode(n.messages.exportAsDialog.labels.orientation)}:</label></div>
<div class='k-edit-field'>
<div class='k-button-group'>
<input type='radio' id='k-orientation-portrait' aria-label='orientation portrait' name='orientation' data-${e.htmlEncode(n.ns)}type='boolean' data-${e.htmlEncode(n.ns)}bind='checked: pdf.landscape' value='false' />
<label class='k-button k-icon-button k-group-start k-orientation-button' for='k-orientation-portrait'>
${e.ui.icon({icon:`file`,iconClass:`k-button-icon`})}
</label>
<input type='radio' id='k-orientation-landscape' aria-label='orientation landscape' name='orientation' data-${e.htmlEncode(n.ns)}type='boolean' data-${e.htmlEncode(n.ns)}bind='checked: pdf.landscape' value='true' />
<label class='k-button k-icon-button k-group-end k-orientation-button' for='k-orientation-landscape'>
${e.ui.icon({icon:`file-horizontal`,iconClass:`k-button-icon`})}
</label>
</div>
</div>
<div class='k-edit-label'><label>${e.htmlEncode(n.messages.exportAsDialog.labels.print)}:</label></div>
<div class='k-edit-field'><input class='k-checkbox' id='guidelines' type='checkbox' data-${e.htmlEncode(n.ns)}bind='checked: pdf.guidelines'/><label class='k-checkbox-label' for='guidelines'>${e.htmlEncode(n.messages.exportAsDialog.labels.guidelines)}</label></div>
<div class='k-edit-label'><label>${e.htmlEncode(n.messages.exportAsDialog.labels.scale)}:</label></div>
<div class='k-edit-field'><input class='k-checkbox' id='fitWidth' type='checkbox' data-${e.htmlEncode(n.ns)}bind='checked: pdf.fitWidth'/><label class='k-checkbox-label' for='fitWidth'>${e.htmlEncode(n.messages.exportAsDialog.labels.fit)}</label></div>
<div class='k-edit-label'><label>${e.htmlEncode(n.messages.exportAsDialog.labels.center)}:</label></div>
<div class='k-edit-field'><input class='k-checkbox' id='hCenter' type='checkbox' data-${e.htmlEncode(n.ns)}bind='checked: pdf.hCenter'/><label class='k-checkbox-label' for='hCenter'>${e.htmlEncode(n.messages.exportAsDialog.labels.horizontally)}</label><input class='k-checkbox' id='vCenter' type='checkbox' data-${e.htmlEncode(n.ns)}bind='checked: pdf.vCenter'/><label class='k-checkbox-label' for='vCenter'>${e.htmlEncode(n.messages.exportAsDialog.labels.vertically)}</label></div>
<div class='k-page-orientation'>
${e.ui.icon(t(`<span data-${n.ns}bind='invisible: pdf.landscape'></span>`),{icon:`file`})}
${e.ui.icon(t(`<span data-${n.ns}bind='visible: pdf.landscape'></span>`),{icon:`file-horizontal`})}
</div>
</div>
<div class='k-actions'><button class='k-button k-button-primary' data-${e.htmlEncode(n.ns)}bind='click: apply'><span class='k-button-text'>${e.htmlEncode(n.messages.save)}</span></button><button class='k-button' data-${e.htmlEncode(n.ns)}bind='click: close'><span class='k-button-text'>${e.htmlEncode(n.messages.cancel)}</span></button></div>`,r}},apply:function(){a.fn.apply.call(this),this.trigger(`action`,{command:`SaveAsCommand`,options:this.viewModel})}});e.spreadsheet.dialogs.register(`exportAs`,T);function E(t,n){e.spreadsheet.dialogs.register(t,u.extend({options:{messageId:n}}))}E(`modifyMerged`,`modifyMergedDialog.errorMessage`),E(`rangeDisabled`,`rangeDisabledDialog.errorMessage`),E(`intersectsArray`,`intersectsArrayDialog.errorMessage`),E(`overflow`,`overflowDialog.errorMessage`),E(`unsupportedSelection`,`unsupportedSelectionDialog.errorMessage`),E(`incompatibleRanges`,`incompatibleRangesDialog.errorMessage`),E(`noFillDirection`,`noFillDirectionDialog.errorMessage`),E(`duplicateSheetName`,`duplicateSheetNameDialog.errorMessage`);var D=u.extend({options:{width:640,title:`Errors in import`,template:t=>{let n,r=t.errors;n=`<div class='k-spreadsheet-message-content k-spreadsheet-import-errors'><div class='k--header-message'>We encountered ${r.length} errors while reading this file. Please be aware that some formulas might be missing, or contain invalid results.</div><div class='k--errors'><table><thead><tr><th>Context</th><th>Error message</th></tr></thead>`;for(let t=0;t<r.length;++t){n+=``;let i=r[t];n+=`<tr><td>${e.htmlEncode(i.context)}</td><td>${e.htmlEncode(i.error)}</td></tr>`}return n+=`</table></div></div><div class='k-actions'><button class='k-button k-button-primary' data-${e.htmlEncode(t.ns)}bind='click: close'><span class='k-button-text'>${e.htmlEncode(t.messages.okText)}</span></button></div>`,n}}});e.spreadsheet.dialogs.register(`importError`,D);var O=u.extend({options:{title:P(`useKeyboardDialog.title`,`Copying and pasting`),template:t=>{let n;return n=`${e.htmlEncode(t.messages.useKeyboardDialog.errorMessage)}
<div>Ctrl+C ${e.htmlEncode(t.messages.useKeyboardDialog.labels.forCopy)}</div>
<div>Ctrl+X ${e.htmlEncode(t.messages.useKeyboardDialog.labels.forCut)}</div>
<div>Ctrl+V ${e.htmlEncode(t.messages.useKeyboardDialog.labels.forPaste)}</div>
<div class="k-actions"><button class='k-button k-button-primary'
data-${e.htmlEncode(t.ns)}bind='click: close'><span
class='k-button-text'>${t.messages.okText}</span></button></div>`,n}}});e.spreadsheet.dialogs.register(`useKeyboard`,O);var k=a.extend({options:{title:P(`linkDialog.title`,`Hyperlink`),template:t=>{let n;return n=`<div class='k-edit-label'><label id='url-label'>${e.htmlEncode(t.messages.linkDialog.labels.url)}:</label></div>
<div class='k-edit-field'><span class='k-textbox k-input'><input
class='k-input-inner' data-${e.htmlEncode(t.ns)}bind='value: url'
title='${e.htmlEncode(t.messages.linkDialog.labels.url)}' aria-labelledby='url-label' /></span></div>
<div class='k-actions'><button class='k-button k-left'
data-${e.htmlEncode(t.ns)}bind='click: remove'><span
class='k-button-text'>${t.messages.linkDialog.labels.removeLink}</span></button><button
class='k-button k-button-primary'
data-${e.htmlEncode(t.ns)}bind='click: apply'><span
class='k-button-text'>${t.messages.okText}</span></button><button
class='k-button'
data-${e.htmlEncode(t.ns)}bind='click: cancel'><span
class='k-button-text'>${t.messages.cancel}</span></button></div>`,n},autoFocus:!1},open:function(n){var r=this;a.fn.open.apply(r,arguments);var i=r.dialog().element,o=e.observable({url:n.link(),apply:function(){/\S/.test(o.url)||(o.url=null),r.trigger(`action`,{command:`HyperlinkCommand`,options:{link:o.url}}),r.close()},remove:function(){o.url=null,o.apply()},cancel:r.close.bind(r)});e.bind(i,o),i.find(`input`).trigger(`focus`).on(`keydown`,function(e){e.keyCode==13?(o.url=t(this).val(),e.stopPropagation(),e.preventDefault(),o.apply()):e.keyCode==27&&(e.stopPropagation(),e.preventDefault(),o.cancel())})}});e.spreadsheet.dialogs.register(`hyperlink`,k);var A=a.extend({options:{title:P(`sheetRenameDialog.title`,`Rename Sheet`),template:t=>{let n;return n=`<div class='k-edit-label'><label id='sheet-name-label'>${e.htmlEncode(t.messages.sheetRenameDialog.labels.text)}:</label></div>
<div class='k-edit-field'><span class='k-textbox k-input'><input
class='k-input-inner' data-${e.htmlEncode(t.ns)}bind='value: sheetName'
title='${e.htmlEncode(t.messages.sheetRenameDialog.labels.text)}' aria-labelledby='sheet-name-label' /></span></div>
<div class='k-actions'><button class='k-button k-button-primary'
data-${e.htmlEncode(t.ns)}bind='click: apply'><span
class='k-button-text'>${t.messages.sheetRenameDialog.labels.rename}</span></button><button
class='k-button'
data-${e.htmlEncode(t.ns)}bind='click: cancel'><span
class='k-button-text'>${t.messages.cancel}</span></button></div>`,n},autoFocus:!1},open:function(n,r){let i=n.sheet(),o=this;a.fn.open.apply(o,arguments);let s=o.dialog().element,c=e.observable({sheetName:r?._oldSheetName||i.name(),apply:function(){o._newSheetName=c.sheetName,o.close()},cancel:o.close.bind(o)});e.bind(s,c),s.find(`input`).trigger(`focus`).on(`keydown`,function(e){e.keyCode==13?(c.sheetName=t(this).val(),e.stopPropagation(),e.preventDefault(),c.apply()):e.keyCode==27&&(e.stopPropagation(),e.preventDefault(),c.cancel())})}});e.spreadsheet.dialogs.register(`renameSheet`,A);var j=a.extend({options:{className:`k-spreadsheet-insert-comment`,template:t=>{let n;return n=`<div class='k-edit-label'><label id='comment-label'>${e.htmlEncode(t.messages.insertCommentDialog.labels.comment)}:</label></div>
<div class='k-edit-field'><span class='k-input k-textarea'><textarea
aria-labelledby='comment-label' rows='5' class='k-input-inner'
data-${e.htmlEncode(t.ns)}bind='value: comment'></textarea></span></div>
<div class='k-actions'> <button class='k-button k-left'
data-${e.htmlEncode(t.ns)}bind='click: remove'><span
class='k-button-text'>${e.htmlEncode(t.messages.insertCommentDialog.labels.removeComment)}</span></button>
<button class='k-button k-button-primary'
data-${e.htmlEncode(t.ns)}bind='click: apply'><span
class='k-button-text'>${e.htmlEncode(t.messages.okText)}</span></button> <button
class='k-button'
data-${e.htmlEncode(t.ns)}bind='click: cancel'><span
class='k-button-text'>${t.messages.cancel}</span></button></div>`,n},title:P(`insertCommentDialog.title`,`Insert comment`),autoFocus:!1,width:450},open:function(t){var n=this;a.fn.open.apply(n,arguments);var r=n.dialog().element,i=e.observable({comment:t.comment(),apply:function(){/\S/.test(i.comment)||(i.comment=null),n.trigger(`action`,{command:`InsertCommentCommand`,options:{value:i.comment}}),n.close()},remove:function(){i.comment=null,i.apply()},cancel:n.close.bind(n)});e.bind(r,i),r.find(`textarea`).trigger(`focus`)}});e.spreadsheet.dialogs.register(`insertComment`,j);var M=a.extend({options:{template:t=>{let n;return n=`<div class='k-spreadsheet-insert-image-dialog'> <label
data-${e.htmlEncode(t.ns)}bind='style: { background-image: imageUrl }, css: { k-spreadsheet-has-image: hasImage, k-hover: isHovered }, events: { dragenter: dragEnter, dragover: stopEvent, dragleave: dragLeave, drop: drop }'>
<div data-${e.htmlEncode(t.ns)}bind='text: info'></div>
<input type='file' data-${e.htmlEncode(t.ns)}bind='events: { change: change }'
accept='image/png, image/jpeg, image/gif' />
</label></div>
<div class='k-actions'> <button class='k-button k-button-primary'
data-${e.htmlEncode(t.ns)}bind='enabled: okEnabled, click: apply'><span
class='k-button-text'>${e.htmlEncode(t.messages.okText)}</span></button> <button
class='k-button'
data-${e.htmlEncode(t.ns)}bind='click: cancel'><span
class='k-button-text'>${t.messages.cancel}</span></button></div>`,n},title:P(`insertImageDialog.title`,`Insert image`),width:`auto`},open:function(){var t=this;a.fn.open.apply(t,arguments);var n=t.dialog().element,r=e.observable({okEnabled:!1,info:e.spreadsheet.messages.dialogs.insertImageDialog.info,imageUrl:``,hasImage:!1,isHovered:!1,_url:null,_image:null,apply:function(){window.URL.revokeObjectURL(r._url),t.trigger(`action`,{command:`InsertImageCommand`,options:{blob:r._image,width:r._width,height:r._height}}),t.close()},cancel:t.close.bind(t),stopEvent:function(e){e.stopPropagation(),e.preventDefault()},drop:function(e){r.stopEvent(e),r.selectFile(e.originalEvent.dataTransfer.files),r.set(`isHovered`,!1)},dragEnter:function(e){r.stopEvent(e),r.set(`isHovered`,!0)},dragLeave:function(e){r.stopEvent(e),r.set(`isHovered`,!1)},change:function(e){r.selectFile(e.target.files)},selectFile:function(t){for(var n,i=0;i<t.length;++i)if(/^image\//i.test(t[i].type)){n=t[i];break}if(r._url&&window.URL.revokeObjectURL(r._url),n){r._image=n,r._url=window.URL.createObjectURL(n);var a=new Image;a.src=r._url,a.onload=function(){r._width=a.width,r._height=a.height,r.set(`info`,e.spreadsheet.messages.dialogs.insertImageDialog.info),r.set(`okEnabled`,!0),r.set(`imageUrl`,`url('`+r._url+`')`),r.set(`hasImage`,!0)}}else r._image=null,r.set(`info`,e.spreadsheet.messages.dialogs.insertImageDialog.typeError),r.set(`okEnabled`,!1),r.set(`imageUrl`,``),r.set(`hasImage`,!1)}});e.bind(n,r)}});e.spreadsheet.dialogs.register(`insertImage`,M);function N(e,t){this.path=e.split(`.`),this.def=t}N.prototype.trans=function(){for(var t=e.spreadsheet.messages.dialogs,n=0;n<this.path.length;++n)if(t=t[this.path[n]],!t)return this.def;return t};function P(e,t){return new N(e,t)}function F(e){return e instanceof N?e.trans():Array.isArray(e)?e.map(F):typeof e==`object`&&e?Object.keys(e).reduce(function(t,n){return t[n]=F(e[n]),t},{}):e}})(window.kendo),(function(e){var t=e.jQuery,n=[`allBorders`,`insideBorders`,`insideHorizontalBorders`,`insideVerticalBorders`,`outsideBorders`,`leftBorder`,`topBorder`,`rightBorder`,`bottomBorder`,`noBorders`],r={allBorders:`bordersAll`,insideBorders:`bordersInside`,insideHorizontalBorders:`bordersInsideHorizontal`,insideVerticalBorders:`bordersInsideVertical`,outsideBorders:`bordersOutside`,leftBorder:`borderLeft`,topBorder:`borderTop`,rightBorder:`borderRight`,bottomBorder:`borderBottom`,noBorders:`bordersNone`},i=e.spreadsheet.messages.borderPalette={allBorders:`All borders`,insideBorders:`Inside borders`,insideHorizontalBorders:`Inside horizontal borders`,insideVerticalBorders:`Inside vertical borders`,outsideBorders:`Outside borders`,leftBorder:`Left border`,topBorder:`Top border`,rightBorder:`Right border`,bottomBorder:`Bottom border`,noBorders:`No border`},a=`#ffffff.#000000.#d6ecff.#4e5b6f.#7fd13b.#ea157a.#feb80a.#00addc.#738ac8.#1ab39f.#f2f2f2.#7f7f7f.#a7d6ff.#d9dde4.#e5f5d7.#fad0e4.#fef0cd.#c5f2ff.#e2e7f4.#c9f7f1.#d8d8d8.#595959.#60b5ff.#b3bcca.#cbecb0.#f6a1c9.#fee29c.#8be6ff.#c7d0e9.#94efe3.#bfbfbf.#3f3f3f.#007dea.#8d9baf.#b2e389.#f272af.#fed46b.#51d9ff.#aab8de.#5fe7d5.#a5a5a5.#262626.#003e75.#3a4453.#5ea226.#af0f5b.#c58c00.#0081a5.#425ea9.#138677.#7f7f7f.#0c0c0c.#00192e.#272d37.#3f6c19.#750a3d.#835d00.#00566e.#2c3f71.#0c594f`.split(`.`),o=e.ui.Widget.extend({init:function(t,n){e.ui.Widget.call(this,t,n),this.element=t,this.color=`#000`,this.element.addClass(`k-spreadsheet-popup`),this._borderTypePalette(),this._borderColorPalette()},options:{name:`BorderPalette`},events:[`change`],destroy:function(){this.colorChooser.destroy(),e.destroy(this.element.find(`.k-spreadsheet-border-type-palette`))},value:function(){return{type:this.type,color:this.color}},_borderTypePalette:function(){var a=this,o=i,s=t(`<div />`,{class:`k-spreadsheet-border-type-palette`});t(`<span class="k-column-menu-group-header"><span class="k-column-menu-group-header-text">Border type</span></span>`).appendTo(this.element),s.appendTo(this.element),n.map(function(n){t(`<button title="`+o[n]+`" aria-label="`+o[n]+`" data-border-type="`+n+`">`).appendTo(s).kendoToggleButton({icon:e.toHyphens(r[n]),toggle:a._toggle.bind(a)})})},_borderColorPalette:function(){var n=t(`<div />`,{class:`k-spreadsheet-border-color-palette`});t(`<span class="k-column-menu-group-header"><span class="k-column-menu-group-header-text">Border color</span></span>`).appendTo(this.element),n.appendTo(this.element),this.colorChooser=new e.ui.FlatColorPicker(n,{buttons:!this.options.change,color:this.color,view:`palette`,palette:a,input:!1,change:this._change.bind(this)}),this.colorChooser.wrapper.find(`.k-coloreditor-apply`).on(`click`,this._apply.bind(this)),this.colorChooser.wrapper.find(`.k-coloreditor-cancel`).on(`click`,this._cancel.bind(this))},_change:function(){this.color=this.colorChooser.value()},_toggle:function(e){var t=e.target.data(`borderType`),n=e.target.siblings(`.k-selected`).data(`kendoToggleButton`);e.checked===!0?(n&&n.toggle(!1),this.type=t):this.type=null},_apply:function(){this.trigger(`change`,{type:this.type,color:this.color})},_cancel:function(){this.trigger(`change`,{type:null,color:null})}});e.spreadsheet.BorderPalette=o})(window.kendo),(function(e){var t=e.jQuery;function n(t){return`<button role="button">${e.ui.icon({icon:t,iconClass:`k-button-icon`})}<span class="k-button-text">${e.ui.icon(`chevron-down`)}</span></button>`}var r=e.ui.ToolBar,i=e.spreadsheet.messages.toolbar={addColumnLeft:`Add column left`,addColumnRight:`Add column right`,addRowAbove:`Add row above`,addRowBelow:`Add row below`,alignment:`Alignment`,alignmentButtons:{justifyLeft:`Align left`,justifyCenter:`Center`,justifyRight:`Align right`,justifyFull:`Justify`,alignTop:`Align top`,alignMiddle:`Align middle`,alignBottom:`Align bottom`},backgroundColor:`Background`,increaseFontSize:`Increase font size`,decreaseFontSize:`Decrease font size`,bold:`Bold`,borders:`Borders`,copy:`Copy`,cut:`Cut`,deleteColumn:`Delete column`,deleteRow:`Delete row`,filter:`Filter`,fontFamily:`Font`,fontSize:`Font size`,format:`Custom format...`,formatTypesSamples:{number:`1,499.99`,percent:`14.50%`,financial:`(1,000.12)`,currency:`$1,499.99`,date:`4/21/2012`,time:`5:49:00 PM`,dateTime:`4/21/2012 5:49:00`,duration:`168:05:00`},formatTypes:{automatic:`Automatic`,text:`Text`,number:`Number`,percent:`Percent`,financial:`Financial`,currency:`Currency`,date:`Date`,time:`Time`,dateTime:`Date time`,duration:`Duration`,moreFormats:`More formats...`},formatDecreaseDecimal:`Decrease decimal`,formatIncreaseDecimal:`Increase decimal`,freeze:`Freeze panes`,freezeButtons:{freezePanes:`Freeze panes`,freezeRows:`Freeze rows`,freezeColumns:`Freeze columns`,unfreeze:`Unfreeze panes`},insertComment:`Insert comment`,insertImage:`Insert image`,italic:`Italic`,merge:`Merge cells`,mergeButtons:{mergeCells:`Merge all`,mergeHorizontally:`Merge horizontally`,mergeVertically:`Merge vertically`,unmerge:`Unmerge`},open:`Open...`,paste:`Paste`,redo:`Redo`,undo:`Undo`,exportAs:`Export...`,toggleGridlines:`Toggle gridlines`,sort:`Sort`,sortButtons:{sortRangeAsc:`Sort range A to Z`,sortRangeDesc:`Sort range Z to A`},textColor:`Text Color`,textWrap:`Wrap text`,underline:`Underline`,validation:`Data validation...`,hyperlink:`Link`},a={file:[`open`,`exportAs`],format:[`format`,`formatDecreaseDecimal`,`formatIncreaseDecimal`],home:[[`undo`,`redo`],`separator`,[`cut`,`copy`,`paste`],`separator`,`fontFamily`,`fontSize`,`increaseFontSize`,`decreaseFontSize`,`separator`,[`bold`,`italic`,`underline`],`separator`,`textColor`,`separator`,`backgroundColor`,`borders`,`separator`,`alignment`,`textWrap`],insert:[`insertComment`,`separator`,`hyperlink`,`separator`,`insertImage`,`separator`,[`addColumnLeft`,`addColumnRight`,`addRowBelow`,`addRowAbove`],`separator`,[`deleteColumn`,`deleteRow`]],data:[`sort`,`separator`,`filter`,`separator`,`validation`],view:[`freeze`,`merge`,`toggleGridlines`]},o=e.spreadsheet.formats={automatic:null,text:`@`,number:`#,0.00`,percent:`0.00%`,financial:`_("$"* #,##0.00_);_("$"* (#,##0.00);_("$"* "-"??_);_(@_)`,currency:`$#,##0.00;[Red]$#,##0.00`,date:`m/d/yyyy`,time:`h:mm:ss AM/PM`,dateTime:`m/d/yyyy h:mm`,duration:`[h]:mm:ss`},s=`#ffffff.#000000.#d6ecff.#4e5b6f.#7fd13b.#ea157a.#feb80a.#00addc.#738ac8.#1ab39f.#f2f2f2.#7f7f7f.#a7d6ff.#d9dde4.#e5f5d7.#fad0e4.#fef0cd.#c5f2ff.#e2e7f4.#c9f7f1.#d8d8d8.#595959.#60b5ff.#b3bcca.#cbecb0.#f6a1c9.#fee29c.#8be6ff.#c7d0e9.#94efe3.#bfbfbf.#3f3f3f.#007dea.#8d9baf.#b2e389.#f272af.#fed46b.#51d9ff.#aab8de.#5fe7d5.#a5a5a5.#262626.#003e75.#3a4453.#5ea226.#af0f5b.#c58c00.#0081a5.#425ea9.#138677.#7f7f7f.#0c0c0c.#00192e.#272d37.#3f6c19.#750a3d.#835d00.#00566e.#2c3f71.#0c594f`.split(`.`),c=e.spreadsheet.messages.colorPicker={reset:`Reset color`,customColor:`Custom color...`,apply:`Apply`,cancel:`Cancel`};function l(){return{undo:{type:`button`,name:`undo`,icon:`undo`,command:`undo`},redo:{type:`button`,name:`redo`,icon:`redo`,command:`redo`},separator:{type:`separator`},open:{type:`open`,name:`open`,icon:`folder-open`,extensions:`.xlsx`,command:`OpenCommand`},exportAs:{type:`button`,name:`exportAs`,dialog:`exportAs`,overflow:`never`,icon:`download`},bold:{type:`button`,command:`PropertyChangeCommand`,property:`bold`,value:!0,icon:`bold`,togglable:!0},italic:{type:`button`,command:`PropertyChangeCommand`,property:`italic`,value:!0,icon:`italic`,togglable:!0},underline:{type:`button`,command:`PropertyChangeCommand`,property:`underline`,value:!0,icon:`underline`,togglable:!0},formatDecreaseDecimal:{type:`button`,name:`formatDecreaseDecimal`,command:`AdjustDecimalsCommand`,value:-1,icon:`decimal-decrease`},formatIncreaseDecimal:{type:`button`,name:`formatIncreaseDecimal`,command:`AdjustDecimalsCommand`,value:1,icon:`decimal-increase`},textWrap:{type:`button`,name:`textWrap`,command:`TextWrapCommand`,property:`wrap`,value:!0,icon:`text-wrap-arrow`,togglable:!0},cut:{type:`button`,name:`cut`,command:`ToolbarCutCommand`,icon:`cut`},copy:{type:`button`,name:`copy`,command:`ToolbarCopyCommand`,icon:`copy`},paste:{type:`button`,name:`paste`,command:`ToolbarPasteCommand`,icon:`clipboard`},alignment:{type:`component`,name:`alignment`,property:`alignment`,component:`DropDownButton`,element:n(`align-left`),overflowComponent:{type:`button`,dialog:`alignment`,icon:`align-left`},componentOptions:{fillMode:`flat`,items:[{attributes:{"data-value":`left`,"data-property":`textAlign`,"data-command":`PropertyChangeCommand`},icon:`align-left`,text:i.alignmentButtons.justifyLeft},{attributes:{"data-value":`center`,"data-property":`textAlign`,"data-command":`PropertyChangeCommand`},icon:`align-center`,text:i.alignmentButtons.justifyCenter},{attributes:{"data-value":`right`,"data-property":`textAlign`,"data-command":`PropertyChangeCommand`},icon:`align-right`,text:i.alignmentButtons.justifyRight},{attributes:{"data-value":`justify`,"data-property":`textAlign`,"data-command":`PropertyChangeCommand`},icon:`align-justify`,text:i.alignmentButtons.justifyFull},{attributes:{class:`k-separator`}},{attributes:{"data-value":`top`,"data-property":`verticalAlign`,"data-command":`PropertyChangeCommand`},icon:`align-top`,text:i.alignmentButtons.alignTop},{attributes:{"data-value":`center`,"data-property":`verticalAlign`,"data-command":`PropertyChangeCommand`},icon:`align-middle`,text:i.alignmentButtons.alignMiddle},{attributes:{"data-value":`bottom`,"data-property":`verticalAlign`,"data-command":`PropertyChangeCommand`},icon:`align-bottom`,text:i.alignmentButtons.alignBottom}],commandOn:`click`}},backgroundColor:{type:`component`,name:`backgroundColor`,commandOn:`change`,command:`PropertyChangeCommand`,property:`background`,component:`ColorPicker`,componentOptions:{view:`palette`,toolIcon:`droplet`,fillMode:`flat`,palette:s,clearButton:!0,messages:c,input:!1,commandOn:`change`},overflowComponent:{type:`button`,dialog:`colorPicker`,icon:`droplet`,property:`background`}},textColor:{type:`component`,name:`textColor`,commandOn:`change`,command:`PropertyChangeCommand`,property:`color`,component:`ColorPicker`,componentOptions:{view:`palette`,fillMode:`flat`,toolIcon:`foreground-color`,palette:s,clearButton:!0,messages:c,input:!1,commandOn:`change`},overflowComponent:{type:`button`,dialog:`colorPicker`,icon:`foreground-color`,property:`color`}},fontFamily:{type:`component`,name:`fontFamily`,command:`PropertyChangeCommand`,property:`fontFamily`,component:`DropDownList`,overflowComponent:{type:`button`,dialog:`fontFamily`,icon:`font-family`},componentOptions:{dataSource:[`Arial`,`Courier New`,`Georgia`,`Times New Roman`,`Trebuchet MS`,`Verdana`],value:`Arial`,fillMode:`flat`,commandOn:`change`}},fontSize:{type:`component`,name:`fontSize`,command:`PropertyChangeCommand`,property:`fontSize`,component:`ComboBox`,overflowComponent:{type:`button`,dialog:`fontSize`,icon:`font-size`},componentOptions:{dataSource:[8,9,10,11,12,13,14,16,18,20,22,24,26,28,36,48,72],value:12,fillMode:`flat`,commandOn:`change`}},increaseFontSize:{type:`button`,name:`increaseFontSize`,command:`IncreaseFontSize`,property:`fontSize`,icon:`font-grow`},decreaseFontSize:{type:`button`,name:`decreaseFontSize`,command:`DecreaseFontSize`,property:`fontSize`,icon:`font-shrink`},format:{type:`component`,name:`format`,component:`DropDownButton`,element:n(`custom-format`),overflowComponent:{type:`button`,dialog:`formatCells`,icon:`custom-format`},componentOptions:{fillMode:`flat`,items:[{attributes:{"data-value":o.automatic,"data-command":`PropertyChangeCommand`,"data-property":`format`},text:i.formatTypes.automatic},{attributes:{"data-value":o.text,"data-command":`PropertyChangeCommand`,"data-property":`format`},text:i.formatTypes.text},{attributes:{"data-value":o.number,"data-command":`PropertyChangeCommand`,"data-property":`format`},text:i.formatTypes.number,sample:i.formatTypesSamples.number},{attributes:{"data-value":o.percent,"data-command":`PropertyChangeCommand`,"data-property":`format`},text:i.formatTypes.percent,sample:i.formatTypesSamples.percent},{attributes:{"data-value":o.financial,"data-command":`PropertyChangeCommand`,"data-property":`format`},text:i.formatTypes.financial,sample:i.formatTypesSamples.financial},{attributes:{"data-value":o.currency,"data-command":`PropertyChangeCommand`,"data-property":`format`},text:i.formatTypes.currency,sample:i.formatTypesSamples.currency},{attributes:{"data-value":o.date,"data-command":`PropertyChangeCommand`,"data-property":`format`},text:i.formatTypes.date,sample:i.formatTypesSamples.date},{attributes:{"data-value":o.time,"data-command":`PropertyChangeCommand`,"data-property":`format`},text:i.formatTypes.time,sample:i.formatTypesSamples.time},{attributes:{"data-value":o.dateTime,"data-command":`PropertyChangeCommand`,"data-property":`format`},text:i.formatTypes.dateTime,sample:i.formatTypesSamples.dateTime},{attributes:{"data-value":o.duration,"data-command":`PropertyChangeCommand`,"data-property":`format`},text:i.formatTypes.duration,sample:i.formatTypesSamples.duration},{attributes:{"data-value":`popup`,"data-popup":`formatCells`},text:i.formatTypes.moreFormats}],itemTemplate:t=>{let n=`<span class="k-link k-menu-link"><span class="k-menu-link-text">`;return t.sample&&(n+=`<span class='k-spreadsheet-sample'>${e.htmlEncode(t.sample)}</span> `),n+=`${e.htmlEncode(t.text)}</span></span>`,n},commandOn:`click`}},filter:{type:`button`,name:`filter`,property:`hasFilter`,icon:`filter`,command:`FilterCommand`,togglable:!0,enable:!1},merge:{type:`component`,name:`merge`,component:`DropDownButton`,element:n(`cells-merge`),overflowComponent:{type:`button`,dialog:`merge`,icon:`cells-merge`},componentOptions:{fillMode:`flat`,items:[{attributes:{"data-value":`cells`,"data-command":`MergeCellCommand`},icon:`cells-merge`,text:i.mergeButtons.mergeCells},{attributes:{"data-value":`horizontally`,"data-command":`MergeCellCommand`},icon:`cells-merge-horizontally`,text:i.mergeButtons.mergeHorizontally},{attributes:{"data-value":`vertically`,"data-command":`MergeCellCommand`},icon:`cells-merge-vertically`,text:i.mergeButtons.mergeVertically},{attributes:{"data-value":`unmerge`,"data-command":`MergeCellCommand`},icon:`table-unmerge`,text:i.mergeButtons.unmerge}],commandOn:`click`}},freeze:{type:`component`,name:`freeze`,component:`DropDownButton`,element:n(`pane-freeze`),overflowComponent:{type:`button`,dialog:`freeze`,icon:`pane-freeze`},componentOptions:{fillMode:`flat`,items:[{attributes:{"data-value":`panes`,"data-command":`FreezePanesCommand`},icon:`pane-freeze`,text:i.freezeButtons.freezePanes},{attributes:{"data-value":`rows`,"data-command":`FreezePanesCommand`},icon:`row-freeze`,text:i.freezeButtons.freezeRows},{attributes:{"data-value":`columns`,"data-command":`FreezePanesCommand`},icon:`column-freeze`,text:i.freezeButtons.freezeColumns},{attributes:{"data-value":`unfreeze`,"data-command":`FreezePanesCommand`},icon:`table-unmerge`,text:i.freezeButtons.unfreeze}],commandOn:`click`}},borders:{type:`popupButton`,name:`borders`,icon:`borders-all`,popupComponent:e.spreadsheet.BorderPalette,commandOn:`change`,command:`BorderChangeCommand`,overflowComponent:{type:`button`,dialog:`borders`}},formatCells:{type:`button`,dialog:`formatCells`,overflow:`never`},hyperlink:{type:`button`,name:`hyperlink`,dialog:`hyperlink`,icon:`link`},toggleGridlines:{type:`button`,name:`toggleGridlines`,command:`GridLinesChangeCommand`,property:`gridLines`,value:!0,icon:`borders-none`,togglable:!0,selected:!0},insertComment:{type:`button`,name:`insertComment`,dialog:`insertComment`,property:`comment`,togglable:!0,icon:`comment`},insertImage:{type:`button`,name:`insertImage`,dialog:`insertImage`,icon:`image`},addColumnLeft:{type:`button`,name:`addColumnLeft`,command:`AddColumnCommand`,value:`left`,icon:`table-column-insert-left`},addColumnRight:{type:`button`,name:`addColumnRight`,command:`AddColumnCommand`,value:`right`,icon:`table-column-insert-right`},addRowBelow:{type:`button`,name:`addRowBelow`,command:`AddRowCommand`,value:`below`,icon:`table-row-insert-below`},addRowAbove:{type:`button`,name:`addRowAbove`,command:`AddRowCommand`,value:`above`,icon:`table-row-insert-above`},deleteColumn:{type:`button`,name:`deleteColumn`,command:`DeleteColumnCommand`,icon:`table-column-delete`},deleteRow:{type:`button`,name:`deleteRow`,command:`DeleteRowCommand`,icon:`table-row-delete`},sort:{type:`component`,name:`sort`,component:`DropDownButton`,element:n(`sort-desc`),overflowComponent:{type:`button`,dialog:`sort`,icon:`sort-desc`},componentOptions:{fillMode:`flat`,items:[{attributes:{"data-value":`asc`,"data-command":`SortCommand`},sheet:!1,text:i.sortButtons.sortRangeAsc,icon:`sort-asc`},{attributes:{"data-value":`desc`,"data-command":`SortCommand`},sheet:!1,text:i.sortButtons.sortRangeDesc,icon:`sort-desc`}],commandOn:`click`}},validation:{type:`button`,name:`validation`,dialog:`validation`,icon:`exclamation-circle`}}}var u=r.extend({init:function(e,t){let n=l();Object.keys(n).forEach(e=>{e!==`validation`&&(n[e].showText=`overflow`)}),t.tools=t.tools||u.prototype.options.tools[t.toolbarName],t.parentMessages=i,t.defaultTools=n,r.fn.init.call(this,e,t);var a=this._click.bind(this);this.element.addClass(`k-spreadsheet-toolbar`),this.bind({click:a,toggle:a,change:a}),r.fn.endInit.call(this)},_click:function(e){var t=e.target,n=t.data(`property`),r=e.value||t.data(`value`)||e.target.val(),i=t.data(`command`),a=t.data(`dialog`),o=t.data(`options`)||{};if(r===`popup`&&(a=t.data(`popup`)),i===`IncreaseFontSize`&&(i=`PropertyChangeCommand`,r++),i===`DecreaseFontSize`&&(i=`PropertyChangeCommand`,r--),o.property=n||null,o.value=r||null,a){this.dialog({name:a,options:o});return}if(i){var s={command:i,options:o};typeof s.options.value==`boolean`&&(s.options.value=e.checked?!0:null),this.action(s)}},events:[`action`,`dialog`],options:{name:`SpreadsheetToolBar`,resizable:!0,tools:a,fillMode:`flat`},action:function(e){this.trigger(`action`,e)},dialog:function(e){this.trigger(`dialog`,e)},refresh:function(t){for(var n=t,r=this._tools(),i=0;i<r.length;i++){var a=r[i].property,o=r[i].tool,s=e.isFunction(n[a])?n[a]():n;a==`gridLines`&&(s=n.sheet().showGridLines()),this._updateTool(o,s,a,n)}this.resize(!0)},_tools:function(){return this.element.find(`[data-property]`).toArray().map(function(e){return e=t(e),{property:e.attr(`data-property`),tool:this._getItem(e)}}.bind(this))},_updateTool:function(t,n,r,i){var a=t.component,o=t.toolbarEl,s=e.widgetInstance(o.find(`[data-role]`)),c=t.menuItem,l=!1,u,d,f,p,m,h;if(r===`hasFilter`)p=i.sheet().selection(),p&&p._ref&&p._ref.height&&(m=n||p._ref.height()>1,this.enable(o,m));else if(r===`alignment`)u=n.verticalAlign(),d=n.textAlign(),f=a.menu.element,f.find(`.k-item .k-link`).removeClass(`k-selected`),f.find(`.k-item[data-property=textAlign][data-value=`+d+`] .k-link`).addClass(`k-selected`),f.find(`.k-item[data-property=verticalAlign][data-value=`+u+`] .k-link`).addClass(`k-selected`);else if(r===`background`||r===`color`)s.value(n);else if(r===`fontFamily`||r===`fontSize`){if(o.is(`button`)){o.attr(`data-value`,n),o.data(`value`,n);return}h=c.find(`.k-menu-link-text`).text().split(`(`)[0].trim(),c.find(`.k-menu-link-text`).text(h+` (`+n+`) ...`),s.value(n)}a&&a.toggle&&(typeof n==`boolean`?l=!!n:typeof n==`string`&&(l=o.data(`value`)?o.data(`value`)===n:n!=null),this.toggle(o,l))}});e.cssProperties.propertyDictionary.SpreadsheetToolBar=e.cssProperties.propertyDictionary.ToolBar,e.spreadsheet.ToolBar=u,e.spreadsheet.Menu=e.ui.Menu})(window.kendo);function O(e,t){return t||={},Object.assign?Object.assign(t,e):Object.keys(e).reduce(function(t,n){return t[n]=e[n],t},t)}function k(e){var t=new $.Deferred,n=t.promise();e=O(e,{dataSource:null,guidelines:!0,guideColor:`#000`,columns:null,headerBackground:`#999`,headerColor:`#000`,oddBackground:null,evenBackground:null,fontFamily:`Arial`,fontSize:12,paperSize:`A4`,margin:`1cm`,landscape:!0,fitWidth:!1,scale:1,rowHeight:20,maxEmpty:1,useGridFormat:!0}),kendo.drawing.pdf.defineFont(kendo.drawing.drawDOM.getFontFaces(document));var r=j(e.fontFamily,e.fontSize);function i(e){if(e!=null){for(var t=12,n=e.length;--n>=0;)t+=r(e.charAt(n));return t}return 0}var a=e.guidelines?{size:1,color:e.guideColor}:null;function o(e){return a?O(e,{borderLeft:a,borderTop:a,borderRight:a,borderBottom:a}):e}return e.dataSource.fetch(function(){var n=e.dataSource.data();if(!n.length)return t.reject(`Empty dataset`);var r=e.columns.map(function(e){return typeof e==`string`?{title:e,field:e}:e}),a=r.map(function(e){return e.title||e.field}),s=a.map(i),c=n.map(function(t,n){return{cells:r.map(function(r,a){var c=t[r.field];return e.useGridFormat&&(c!=null&&(r.format?c=kendo.format(r.format,c):c+=``),s[a]=Math.max(i(c),s[a])),o({value:c,format:e.useGridFormat?null:r.format,background:n%2?e.evenBackground:e.oddBackground})})}});c.unshift({cells:a.map(function(t){return o({value:t,background:e.headerBackground,color:e.headerColor})})});var l=new kendo.spreadsheet.Sheet(c.length+1,r.length+1,e.rowHeight,50,20,20,{fontFamily:e.fontFamily,fontSize:e.fontSize,verticalAlign:`center`});l.fromJSON({name:`Sheet1`,rows:c,columns:s.map(function(e,t){return{index:t,width:e}})}),l.draw({paperSize:e.paperSize,landscape:e.landscape,margin:e.margin,guidelines:!1,scale:e.scale,fitWidth:e.fitWidth,maxEmpty:e.maxEmpty,headerRows:1},t.resolve.bind(t))}),n}var A={},j=function(e,t){var n=t+`:`+e,r=A[n];if(!r){var i,a=document.createElement(`div`);a.style.position=`fixed`,a.style.left=`-10000px`,a.style.top=`-10000px`,a.style.fontFamily=e,a.style.fontSize=t+`px`,a.style.whiteSpace=`pre`;for(var o=32;o<128;++o)i=document.createElement(`span`),i.appendChild(document.createTextNode(String.fromCharCode(o))),a.appendChild(i);document.body.appendChild(a);var s={};for(o=32,i=a.firstChild;o<128&&i;++o,i=i.nextSibling)s[o]=i.offsetWidth;for(;i=a.firstChild;)a.removeChild(i);r=A[n]=function(e){var t=e.charCodeAt(0),n=s[t];return n??(i=document.createElement(`span`),i.appendChild(document.createTextNode(String.fromCharCode(t))),a.appendChild(i),n=s[t]=i.offsetWidth,a.removeChild(i)),n}}return r};kendo.spreadsheet.drawTabularData=k,(function(e){"use strict";let t=e.spreadsheet.registerEditor;var n=e.jQuery;t(`_validation_date`,function(){var t,r,i;function a(){r||(r=n(`<div>`).kendoCalendar(),i=n(`<div>`).kendoPopup(),r.appendTo(i),r=r.getKendoCalendar(),i=i.getKendoPopup(),r.bind(`change`,function(){i.close();var n=r.value();t.range.format()||t.range.format(`yyyy-mm-dd`),t.callback(e.spreadsheet.dateToNumber(n))})),i.setOptions({anchor:t.view.element.querySelector(`.k-spreadsheet-editor-button`),origin:t.alignLeft?`bottom right`:`bottom left`,position:t.alignLeft?`top right`:`top left`})}function o(){a();var n=t.range.value(),o=t.range.sheet();n==null?r.value(null):r.value(e.spreadsheet.numberToDate(n));var c=t.validation;if(c){var l=e.ui.Calendar.fn.options.min,u=e.ui.Calendar.fn.options.max,d=c.from,f=c.to,p=e.spreadsheet.calc.runtime.Formula;/^(?:greaterThan|between)/.test(c.comparerType)&&(l=d instanceof p&&s(d.value)?e.spreadsheet.numberToDate(o.range(d.value.row,d.value.col).value()):e.spreadsheet.numberToDate(d.value)),c.comparerType==`between`&&(u=f instanceof p&&s(f.value)?e.spreadsheet.numberToDate(o.range(f.value.row,f.value.col).value()):e.spreadsheet.numberToDate(c.to.value)),(c.comparerType==`lessThan`||c.comparerType==`lessThanOrEqualTo`)&&(u=d instanceof p&&s(d.value)?e.spreadsheet.numberToDate(o.range(d.value.row,d.value.col).value()):e.spreadsheet.numberToDate(c.from.value)),r.setOptions({disableDates:function(t){var n=d&&d instanceof p&&s(d.value)?o.range(d.value.row,d.value.col).value():d?d.value|0:0,r=f&&f instanceof p&&s(f.value)?o.range(f.value.row,f.value.col).value():f?f.value|0:0;return t=e.spreadsheet.dateToNumber(t)|0,!e.spreadsheet.validation.validationComparers[c.comparerType](t,n,r)},min:l,max:u})}else r.setOptions({disableDates:null,min:null,max:null});i.open()}function s(e){return e&&e.row!==null&&e.col!==null&&e.row>-1&&e.col>-1}return{edit:function(e){t=e,o()},icon:`calendar`}}),t(`_validation_list`,function(){var t,r,i;function a(e){return typeof e==`string`&&/^'/.test(e)?e.substring(1):e}function o(){r||(r=n(`<ul class='k-list k-reset'/>`).kendoStaticList({template:function(e){return e.text},selectable:!0,autoBind:!1}),i=n(`<div class='k-spreadsheet-list-popup'>`).kendoPopup(),r.appendTo(i),i=i.getKendoPopup(),r=r.getKendoStaticList(),r.bind(`change`,function(){i.close();var e=r.value()[0];e&&t.callback(e.value)})),i.setOptions({anchor:t.view.element.querySelector(`.k-spreadsheet-editor-button`),origin:t.alignLeft?`bottom right`:`bottom left`,position:t.alignLeft?`top right`:`top left`})}function s(){o();var n=t.validation.from.value,s=[],c=function(e){s.push({text:a(e),value:e})};n instanceof e.spreadsheet.calc.runtime.Matrix?n.each(c):(n+``).split(/\s*,\s*/).forEach(c);var l=new e.data.DataSource({data:s});r.setDataSource(l),l.read(),i.open()}return{edit:function(e){t=e,s()},icon:`chevron-down`}})})(window.kendo),(function(e){var t=e.jQuery,n=e._outerWidth,r=`.`,i=` `;function a(){var t=e.spreadsheet.messages,n=t.view||{},r=t.menus||{},i=((t.dialogs||{}).sheetRenameDialog||{}).labels||{},a=n.sheetBar||{};return{addSheet:a.addSheet||`Add new sheet`,deleteSheet:a.deleteSheet||r.delete||`Delete`,duplicateSheet:a.duplicateSheet||`Duplicate`,renameSheet:a.renameSheet||i.rename||`Rename`,hideSheet:a.hideSheet||r.hide||`Hide`,moveRight:a.moveRight||`Move Right`,moveLeft:a.moveLeft||`Move Left`}}var o={sheetsBarWrapper:`k-spreadsheet-sheets-bar`,sheetsBarSheetsWrapper:`k-tabstrip k-tabstrip-bottom`,sheetsBarAdd:`k-spreadsheet-sheet-add`,sheetsBarSheetsMenu:`k-spreadsheet-sheets-menu`,sheetsBarRemove:`k-spreadsheet-sheets-remove`,sheetsBarItems:`k-spreadsheet-sheets`,sheetsBarEditor:`k-spreadsheet-sheets-editor`,sheetsBarScrollable:`k-tabstrip-scrollable`,sheetsBarNext:`k-tabstrip-next`,sheetsBarPrev:`k-tabstrip-prev`,sheetsBarKItem:`k-item`,sheetsBarKTabstripItem:`k-tabstrip-item`,sheetsBarKActive:`k-active`,sheetsBarKTextbox:`k-textbox`,sheetsBarKLink:`k-link`,sheetsBarKLinkText:`k-link-text`,sheetsBarKIcon:`k-icon`,sheetsBarKFontIcon:`k-icon`,sheetsBarKButton:`k-button k-button-sm k-icon-button`,sheetsBarKButtonDefaults:``,sheetsBarKButtonBare:`k-button-flat`,sheetsBarArrowWIcon:`chevron-left`,sheetsBarArrowEIcon:`chevron-right`,sheetsBarKReset:`k-reset k-tabstrip-items k-tabstrip-items-start`,sheetsBarXIcon:`x`,sheetsBarMoreIcon:`chevron-down`,sheetsBarKSprite:`k-sprite`,sheetsBarPlusIcon:`plus`,sheetsBarMenuIcon:`menu`,sheetsBarHintWrapper:`k-tabstrip k-tabstrip-bottom k-spreadsheet-sheets-items-hint`,sheetsBarKResetItems:`k-reset k-tabstrip-items k-tabstrip-items-start`},s=e.ui.Widget.extend({init:function(t,n){var i=s.classNames;e.ui.Widget.call(this,t,n),t=this.element,t.addClass(i.sheetsBarWrapper),this._openDialog=n.openDialog,this._addButton(),this._menuButton(),this._tree=new e.dom.Tree(t[0]),this._tree.render([this._createSheetsWrapper([])]),this._initSheetDropDownButtons(),this._toggleScrollEvents(!0),this._createSortable(),this._sortable.bind(`start`,this._onSheetReorderStart.bind(this)),this._sortable.bind(`end`,this._onSheetReorderEnd.bind(this)),t.on(`click`,`[ref-sheetsbar-more-button]`,this._onSheetContextMenu.bind(this)),t.on(`click`,`li`,this._onSheetSelect.bind(this)),t.on(`dblclick`,`li`+r+i.sheetsBarKItem+r+i.sheetsBarKItem,this._createEditor.bind(this))},options:{name:`SheetsBar`,scrollable:{distance:200}},events:[`select`,`reorder`,`rename`],_createEditor:function(){this._editor||=(this._renderSheets(this._sheets,this._selectedIndex,!0),this.element.find(e.format(`input{0}{1}`,r,s.classNames.sheetsBarEditor)).trigger(`focus`).on(`keydown`,this._onEditorKeydown.bind(this)).on(`blur`,this._onEditorBlur.bind(this)))},_destroyEditor:function(e){var t=e?null:this._editor.val();this._editor.off(),this._editor=null,this._renderSheets(this._sheets,this._selectedIndex,!1),this._onSheetRename(t)},renderSheets:function(e,t){!e||t<0||this._renderSheets(e,t,!1)},_renderSheets:function(t,n,r){var a=this,o=s.classNames;a._isRtl=e.support.isRtl(a.element),a._sheets=t,a._selectedIndex=n,a._renderHtml(r,!0),a._scrollableAllowed()&&(a._sheetsWrapper().addClass(o.sheetsBarScrollable+i+o.sheetsBarSheetsWrapper),a._toggleScrollButtons())},_toggleScrollButtons:function(t){var n=this,i=n._sheetsGroup(),a=n._sheetsWrapper(),o=e.scrollLeft(i),c=a.find(r+s.classNames.sheetsBarPrev),l=a.find(r+s.classNames.sheetsBarNext);t===!1?(c.addClass(`k-disabled`),l.addClass(`k-disabled`)):(c.toggleClass(`k-disabled`,!(n._isRtl?o<i[0].scrollWidth-i[0].offsetWidth-1:o!==0)),l.toggleClass(`k-disabled`,!(n._isRtl?o!==0:o<i[0].scrollWidth-i[0].offsetWidth-1)))},_toggleScrollEvents:function(e){var t=this,n=s.classNames,i=t.options,a,o,c=t._sheetsWrapper();a=c.find(r+n.sheetsBarPrev),o=c.find(r+n.sheetsBarNext),e?(a.on(`mousedown`,function(e){e.preventDefault(),e.stopPropagation(),t._nowScrollingSheets=!0,t._scrollSheetsByDelta(i.scrollable.distance*(t._isRtl?1:-1))}),o.on(`mousedown`,function(e){e.preventDefault(),e.stopPropagation(),t._nowScrollingSheets=!0,t._scrollSheetsByDelta(i.scrollable.distance*(t._isRtl?-1:1))}),a.add(o).on(`mouseup`,function(){t._nowScrollingSheets=!1})):(a.off(),o.off())},_renderHtml:function(n,r){var a,o=[],c=e.dom,l=c.element,u=this._sheets,d=this._selectedIndex,f=s.classNames;for(a=0;a<u.length;a++){var p=u[a],m=a===d,h={className:f.sheetsBarKItem+i+f.sheetsBarKTabstripItem+i,role:`tab`},g=[];if(p.state()!==`visible`&&(h.className+=`k-hidden `),m&&(h.className+=f.sheetsBarKActive),m&&n)g.push(l(`input`,{type:`text`,value:p.name(),className:f.sheetsBarKTextbox+i+f.sheetsBarEditor,maxlength:50},[]));else{g.push(l(`span`,{className:f.sheetsBarKLink,title:p.name()},[l(`span`,{className:f.sheetsBarKLinkText},[c.text(p.name())])]));let n=l(t(e.html.renderButton(t(`<button ref-sheetsbar-more-button data-sheet-name="${p.name()}" class="k-menu-button"></button>`),{icon:f.sheetsBarMoreIcon,fillMode:`flat`,size:`small`}))[0]);g.push(l(`span`,{className:`k-item-actions`,"data-type":`context-menu`},[n]))}o.push(l(`li`,h,g))}e.destroy(this._sheetsWrapper()),this._addButton(),this._menuButton(),this._tree.render([this._createSheetsWrapper(o,r)]),this._initSheetDropDownButtons()},_initSheetDropDownButtons:function(){let e=this,n=a();this.element.find(`[ref-sheetsbar-more-button]`).each(function(r,i){let a=t(i),o=e._sheets||[],c=o.filter(e=>e.state()===`visible`),l=!e._sheets||e._sheets&&c.length<2,u=a.data(`sheetName`),d=!(l||e._sheets&&r==o.length-1),f=!(l||e._sheets&&r===0);a.kendoDropDownButton({icon:s.classNames.sheetsBarMoreIcon,fillMode:`flat`,size:`small`,items:[{text:n.deleteSheet,icon:`trash`,attributes:{"data-command":`delete`,"data-sheet-name":u},enabled:!l},{text:n.duplicateSheet,icon:`copy`,attributes:{"data-command":`duplicate`,"data-sheet-name":u}},{text:n.renameSheet,icon:`pencil`,attributes:{"data-command":`rename`,"data-sheet-name":u}},{text:n.hideSheet,icon:`eye-slash`,attributes:{"data-command":`hide`,"data-sheet-name":u},enabled:!l},{text:n.moveRight,icon:`arrow-right`,attributes:{"data-command":`move-right`,"data-sheet-name":u},enabled:d},{text:n.moveLeft,icon:`arrow-left`,attributes:{"data-command":`move-left`,"data-sheet-name":u},enabled:f}],click:e._onSheetContextMenu.bind(e)})})},_createSheetsWrapper:function(n,r){var a=e.dom.element,o=s.classNames,c=a(`div`,{className:`k-tabstrip-items-wrapper k-hstack`}),l=[a(`ul`,{className:o.sheetsBarKReset,role:`tablist`},n),null,null];if(r=!0,r){var u=o.sheetsBarKButton+i+o.sheetsBarKButtonBare+i;l[1]=a(`span`,{ariaHidden:`true`,tabIndex:-1,className:u+o.sheetsBarPrev},[a(t(e.ui.icon({icon:o.sheetsBarArrowWIcon,iconClass:`k-button-icon`}))[0])]),l[2]=a(`span`,{ariaHidden:`true`,tabIndex:-1,className:u+o.sheetsBarNext},[a(t(e.ui.icon({icon:o.sheetsBarArrowEIcon,iconClass:`k-button-icon`}))[0])])}return c.children=l,a(`div`,{className:o.sheetsBarItems},[c])},_createSortable:function(){var n=s.classNames;this._sortable=new e.ui.Sortable(this.element,{filter:`ul li.${n.sheetsBarKItem}`,container:r+n.sheetsBarItems,axis:`x`,animation:!1,ignore:`input`,end:function(){this.draggable.hint&&this.draggable.hint.remove()},hint:function(e){return t(e).clone().attr(`ref-sheetsbar-sortable-hint`,``).wrap(`<div class='`+n.sheetsBarHintWrapper+`'><ul class='`+n.sheetsBarKResetItems+`'></ul></div>`).closest(`div`)}})},_onEditorKeydown:function(e){this._editor&&(e.which===13&&this._destroyEditor(),e.which===27&&this._destroyEditor(!0))},_onEditorBlur:function(){this._editor&&this._destroyEditor()},_onSheetReorderEnd:function(e){e.preventDefault(),this.trigger(`reorder`,{oldIndex:e.oldIndex,newIndex:e.newIndex})},_onSheetReorderStart:function(e){this._editor&&e.preventDefault()},_onSheetContextMenu:function(e){let n=t(e.target).closest(`li`).data(`sheetName`),r=t(e.target).closest(`li`).data(`command`);if(this._editor&&this._destroyEditor(),n&&r)switch(r){case`delete`:this._onSheetRemove(e);break;case`duplicate`:this._onSheetDuplicate(n);break;case`rename`:this._renamePrompt(n);break;case`hide`:this._hideSheet(n);break;case`move-right`:this._moveSheet(n,1);break;case`move-left`:this._moveSheet(n,-1);break}},_onSheetDuplicate:function(e){this.trigger(`duplicate`,{name:e})},_renamePrompt:function(e){let t=this._sheets.findIndex(t=>t.name()==e),n=function(n){let r=n.sender;r._newSheetName&&r._newSheetName!==e&&this.trigger(`rename`,{name:r._newSheetName,sheetIndex:t})}.bind(this);this._openDialog(`renameSheet`,{close:n,_oldSheetName:e})},_hideSheet:function(e){this.trigger(`hide`,{name:e})},_moveSheet:function(e,t){let n=this._sheets.findIndex(t=>t.name()===e),r=n+t;r<0||r>=this._sheets.length||this.trigger(`reorder`,{oldIndex:n,newIndex:r})},_onSheetRemove:function(e){var n=t(e.target).closest(`li`).data(`sheetName`);this._editor&&this._destroyEditor();var r=function(e){e.sender.isConfirmed()&&this.trigger(`remove`,{name:n,confirmation:!0})}.bind(this);this._openDialog(`confirmation`,{close:r})},_onSheetSelect:function(e){var n=t(e.target).text();if(t(e.target).is(r+s.classNames.sheetsBarEditor)||!n){e.preventDefault();return}this._editor&&this._destroyEditor(),this._scrollSheetsToItem(t(e.target).closest(`li`)),this.trigger(`select`,{name:n,isAddButton:!1})},_onSheetRename:function(e){this._sheets[this._selectedIndex].name()!==e&&e!==null&&this.trigger(`rename`,{name:e,sheetIndex:this._selectedIndex})},_onAddSelect:function(e){e.sender.element.removeClass(`k-focus`),this.trigger(`select`,{isAddButton:!0})},_onMenuSelect:function(e){let n=t(e.target).closest(`li`).data(`sheetName`);n&&this.trigger(`show`,{name:n})},_addButton:function(){var n=s.classNames,r=a();let i=this.element.find(`.`+n.sheetsBarAdd);i.length?e.destroy(i):i=t(`<button class="${n.sheetsBarAdd}"></button>`).appendTo(this.element),i.attr(`aria-label`,r.addSheet),i.kendoButton({icon:n.sheetsBarPlusIcon,fillMode:`flat`,size:`small`,click:this._onAddSelect.bind(this)})},_menuButton:function(){var n=s.classNames;let r=this.element.find(`.`+n.sheetsBarSheetsMenu);r.length?e.destroy(r):r=t(`<button class="${n.sheetsBarSheetsMenu}"></button>`).appendTo(this.element),r.kendoDropDownButton({icon:n.sheetsBarMenuIcon,fillMode:`flat`,size:`small`,items:(this._sheets||[]).map(e=>({text:e.name(),attributes:{"data-sheet-name":e.name()},icon:e.state()===`visible`?`eye`:`eye-slash`,cssClass:n})),click:this._onMenuSelect.bind(this)})},destroy:function(){this._sortable.destroy()},_scrollableAllowed:function(){var e=this.options;return e.scrollable&&!isNaN(e.scrollable.distance)},_scrollSheetsToItem:function(t){var r=this,i=r._sheetsGroup(),a=e.scrollLeft(i),o=n(t),s=r._isRtl?t.position().left:t.position().left-i.children().first().position().left,c=i[0].offsetWidth,l;r._isRtl?s<0?l=a+s-(c-a):s+o>c&&(l=a+s-o):a+c<s+o?l=s+o-c:a>s&&(l=s),i.finish().animate({scrollLeft:l},`fast`,`linear`,function(){r._toggleScrollButtons()})},_sheetsGroup:function(){return this._sheetsWrapper().find(`ul`)},_sheetsWrapper:function(){return this.element.find(r+s.classNames.sheetsBarItems)},_scrollSheetsByDelta:function(t){var n=this,r=n._sheetsGroup(),i=e.scrollLeft(r);r.finish().animate({scrollLeft:i+t},`fast`,`linear`,function(){n._nowScrollingSheets?n._scrollSheetsByDelta(t):n._toggleScrollButtons()})}});e.spreadsheet.SheetsBar=s,t.extend(!0,s,{classNames:o})})(window.kendo),(function(e){var t=e.jQuery,n=e.ui.Widget,r={details:`k-details`,button:`k-button`,detailsSummary:`k-details-summary`,detailsContent:`k-details-content`,icon:`k-icon`,iconCollapseName:`caret-br`,iconExpandName:`chevron-right`,iconSearchName:`search`,textbox:`k-textbox`,wrapper:`k-spreadsheet-filter-menu`,filterByCondition:`k-spreadsheet-condition-filter`,filterByValue:`k-spreadsheet-value-filter`,valuesTreeViewWrapper:`k-spreadsheet-value-treeview-wrapper`,actionButtons:`k-actions`};e.spreadsheet.messages.filterMenu={all:`All`,sortAscending:`Sort range A to Z`,sortDescending:`Sort range Z to A`,filterByValue:`Filter by value`,filterByCondition:`Filter by condition`,apply:`Apply`,search:`Search`,addToCurrent:`Add to current selection`,clear:`Clear`,blanks:`(Blanks)`,operatorNone:`None`,and:`AND`,or:`OR`,operators:{string:{contains:`Text contains`,doesnotcontain:`Text does not contain`,startswith:`Text starts with`,endswith:`Text ends with`,matches:`Text matches`,doesnotmatch:`Text does not match`},date:{eq:`Date is`,neq:`Date is not`,lt:`Date is before`,gt:`Date is after`},number:{eq:`Is equal to`,neq:`Is not equal to`,gte:`Is greater than or equal to`,gt:`Is greater than`,lte:`Is less than or equal to`,lt:`Is less than`}}};var i=n.extend({init:function(r,i){n.fn.init.call(this,r,i),this.element.addClass(f.classNames.details),this._summary=this.element.find(`.`+f.classNames.detailsSummary).on(`click`,this._toggle.bind(this));var a=i.expanded?f.classNames.iconCollapseName:f.classNames.iconExpandName;this._icon=t(e.ui.icon(a)).prependTo(this._summary),this._container=e.wrap(this._summary.next(),!0),i.expanded||this._container.hide(),n.fn.endInit.call(this)},options:{name:`Details`},events:[`toggle`],visible:function(){return this.options.expanded},toggle:function(t){e.fx(this._container).expand(`vertical`).stop()[t?`reverse`:`play`](),e.ui.icon(this._icon,{icon:t?f.classNames.iconExpandName:f.classNames.iconCollapseName}),this.options.expanded=!t},_toggle:function(){var e=this.visible();this.toggle(e),this.trigger(`toggle`,{show:e})}});e.data.binders.spreadsheetFilterValue=e.data.Binder.extend({init:function(n,r,i){e.data.Binder.fn.init.call(this,n,r,i),this._change=this.change.bind(this),t(this.element).on(`change`,this._change)},refresh:function(){var e=this,n=e.bindings.spreadsheetFilterValue.get();t(e.element).val(n instanceof Date?``:n)},change:function(){var e=this.element.value;this.bindings.spreadsheetFilterValue.set(e)}}),e.data.binders.widget.spreadsheetFilterValue=e.data.Binder.extend({init:function(t,n,r){e.data.Binder.fn.init.call(this,t.element[0],n,r),this.widget=t,this._change=this.change.bind(this),this.widget.first(`change`,this._change)},refresh:function(){var e=this.bindings.spreadsheetFilterValue.get(),n=t(this.widget.element).data(`filterType`);n===`date`&&e instanceof Date||n===`number`&&!isNaN(e)?this.widget.value(e):this.widget.value(null)},change:function(){var e=this.widget.value();this.bindings.spreadsheetFilterValue.set(e)}});var a={filterByValue:t=>`<div class='${r.detailsSummary}'>${t.messages.filterByValue}</div><div class='${r.detailsContent}'><div class='k-searchbox k-input'>`+e.ui.icon({icon:`search`,iconClass:`k-input-icon`})+`<input class='k-input-inner' autocomplete='off' placeholder='${t.messages.search}' data-${t.ns}bind='events: { input: filterValues }' /></div><div data-${t.ns}bind='visible: hasActiveSearch'><input class='k-checkbox' type='checkbox' data-${t.ns}bind='checked: appendToSearch' id='_${t.guid}'/><label class='k-checkbox-label' for='_${t.guid}'>${t.messages.addToCurrent}</label></div><div class='${r.valuesTreeViewWrapper}'><div data-${t.ns}role='treeview' bind:data-${t.ns}checkboxes='checkboxesConfig' data-${t.ns}bind='source: valuesDataSource, events: { check: valuesChange, select: valueSelect }' ></div></div></div>`,filterByCondition:e=>`<div class='${r.detailsSummary}'>${e.messages.filterByCondition}</div><div class='${r.detailsContent}'><div><select aria-label="${e.messages.filterByCondition}" data-${e.ns}role="dropdownlist"data-${e.ns}bind="value: operator, source: operators, events: { change: operatorChange } "data-${e.ns}value-primitive="false"data-${e.ns}option-label="${e.messages.operatorNone}"data-${e.ns}height="auto"data-${e.ns}text-field="text"data-${e.ns}value-field="unique"></select></div><div data-${e.ns}bind="visible: isString"><input aria-label="string-value" data-filter-type="string" data-${e.ns}bind="spreadsheetFilterValue: customFilter.criteria[0].value" class="k-textbox" /></div><div data-${e.ns}bind="visible: isNumber"><input aria-label="number-value" data-filter-type="number" data-${e.ns}role="numerictextbox" data-${e.ns}bind="spreadsheetFilterValue: customFilter.criteria[0].value" /></div><div data-${e.ns}bind="visible: isDate"><input aria-label="date-value" data-filter-type="date" data-${e.ns}role="datepicker" data-${e.ns}bind="spreadsheetFilterValue: customFilter.criteria[0].value" /></div></div>`,menuItem:t=>`<li data-command='${t.command}' data-dir='${t.dir}'>${e.ui.icon(t.iconClass)}${t.text}</li>`,actionButtons:e=>`<button data-${e.ns}bind='click: apply' class='k-button k-button-primary'><span class='k-button-text'>${e.messages.apply}</span></button><button data-${e.ns}bind='click: clear' class='k-button'><span class='k-button-text'>${e.messages.clear}</span></button>`};function o(e){for(var t={},n=[],r=0;r<e.length;r++)t[e[r].value]?!t[e[r].value].checked&&e[r].checked&&(t[e[r].value].checked=!0):(t[e[r].value]=e[r],n.push(e[r]));return n}function s(t,n){for(var r=!1,i=t instanceof e.data.HierarchicalDataSource&&t.data(),a=this,o=this.values,c=0;c<i.length;c++){var l=i[c],u=l.text.toString().toLocaleLowerCase(e.culture().name),d=n===!0||n===``||u.indexOf(n)>=0,f=s.bind(a)(l.children,n);r=r||f||d,l.hidden=!d&&!f,n.length||o&&!o.length?l.checked=!l.hidden:o&&o.indexOf(l.text)!=-1&&(l.checked=!0)}return i&&t.filter({field:`hidden`,operator:`neq`,value:!0}),r}function c(t){for(var n=t instanceof e.data.HierarchicalDataSource&&t.data(),r=0;r<n.length;r++){var i=n[r];i.checked=!1,i.hasChildren&&c(i.children)}}var l=e.spreadsheet.FilterMenuViewModel=e.data.ObservableObject.extend({valuesChange:function(t){var n=t?t.sender.dataSource:this.valuesDataSource,r=function(e){return e.checked},i=function(t){return t.dataType===`date`?e.spreadsheet.dateToNumber(t.value):t.value},a=function(e,t,n){return n.lastIndexOf(e)===t},o=n.data().toJSON()[0].items,s=o.filter(function(e){return e.dataType===`blank`});s=s.length?s[0].checked:!1,o=o.filter(r).map(i),this.appendToSearch&&this.valueFilter&&this.valueFilter.values.length&&(o=o.concat(this.valueFilter.values.toJSON()).sort().filter(a)),this.set(`valueFilter`,{values:o,blanks:s})},valueSelect:function(e){e.preventDefault();var t=e.sender.dataItem(e.node);t.set(`checked`,!t.checked)},hasActiveSearch:!1,appendToSearch:!1,filterValues:function(n){var r=typeof n==`string`?n:t(n.target).val().toLocaleLowerCase(e.culture().name),i=this.valuesDataSource;this.set(`hasActiveSearch`,!!r);var a=s.bind(this.valueFilter);c(i),a(i,r)},reset:function(){this.set(`customFilter`,{logic:`and`,criteria:[{operator:null,value:null}]}),this.set(`valueFilter`,{values:[]})},operatorChange:function(e){var t=e.sender.dataItem();this.set(`operatorType`,t.type),this.get(`customFilter`)||this.reset(),this.set(`customFilter.criteria[0].operator`,t.value)},isNone:function(){return this.get(`operatorType`)===void 0},isString:function(){return this.get(`operatorType`)===`string`},isNumber:function(){return this.get(`operatorType`)===`number`},isDate:function(){return this.get(`operatorType`)===`date`}});function u(t){var n=e.spreadsheet.messages.filterMenu.operators,r=[];for(var i in t)if(t.hasOwnProperty(i))for(var a in t[i])t[i].hasOwnProperty(a)&&r.push({text:n[i][a],value:a,unique:i+`_`+a,type:i});return r}var d=e.spreadsheet.FilterMenuController={valuesTree:function(t,n){return[{text:e.spreadsheet.messages.filterMenu.all,expanded:!0,checked:!1,items:this.values(t.resize({top:1}),n)}]},values:function(t,n){var r=[],i=e.spreadsheet.messages.filterMenu,a=t.column(n),s=t.sheet();return a.forEachCell(function(t,n,a){var o=!0;s.isHiddenRow(t)&&(o=!1);var c=a.value,l=a.dataType,u=a.text;l=c===void 0?`blank`:a.format?e.spreadsheet.formatting.type(c,a.format):typeof c,u=c!==null&&a.format?e.spreadsheet.formatting.text(c,a.format):l==`blank`?i.blanks:c,(l===`percent`||l===`currency`)&&(l=`number`),l===`date`&&(c=e.spreadsheet.numberToDate(c)),r.push({dataType:l,value:c,text:u,checked:o})}),r=o(r),r.sort(function(e,t){return e.dataType===t.dataType?0:e.dataType===`blank`||t.dataType===`blank`?e.dataType===`blank`?-1:1:e.dataType===`number`||t.dataType===`number`?e.dataType===`number`?-1:1:e.dataType===`date`||t.dataType===`date`?e.dataType===`date`?-1:1:0}),r},filterType:function(e,t){var n=e.sheet(),r=this.filterForColumn(t,n),i;if(r&&=r.filter.toJSON(),r&&r.filter==`custom`){var a=r.criteria[0].value;a instanceof Date?i=`date`:typeof a==`string`?i=`string`:typeof a==`number`&&(i=`number`)}if(!i){var o=this.values(e.row(1),t)[0];i=o&&o.dataType,i==`blank`&&(i=null)}return i},filterForColumn:function(e,t){var n=t.filter(),r;return n&&(r=n.columns.filter(function(t){return t.index===e})[0]),r},filter:function(e,t){var n=this.filterForColumn(e,t);if(n){var r=n.filter.toJSON(),i=r.filter;delete r.filter;var a={type:i,options:r},o=r.criteria;return o&&o.length&&(a.operator=o[0].operator),a}}},f=n.extend({init:function(e,t){n.call(this,e,t),this.element.addClass(f.classNames.wrapper),this.viewModel=new l({active:`value`,checkboxesConfig:{checkChildren:!0},operator:null,operators:u(this.options.operators),clear:this.clear.bind(this),apply:this.apply.bind(this)}),this._filterInit(),this._popup(),this._sort(),this._filterByCondition(),this._filterByValue(),this._actionButtons()},options:{name:`FilterMenu`,column:0,range:null,operators:{string:{contains:`Text contains`,doesnotcontain:`Text does not contain`,startswith:`Text starts with`,endswith:`Text ends with`,matches:`Text matches`,doesnotmatch:`Text does not match`},date:{eq:`Date is`,neq:`Date is not`,lt:`Date is before`,gt:`Date is after`},number:{eq:`Is equal to`,neq:`Is not equal to`,gte:`Is greater than or equal to`,gt:`Is greater than`,lte:`Is less than or equal to`,lt:`Is less than`}}},events:[`action`],destroy:function(){n.fn.destroy.call(this),this.menu.destroy(),this.valuesTreeView.destroy(),this.popup.destroy()},openFor:function(e,n){t(e).hasClass(`k-spreadsheet-view-size`)?this.popup.open(n.pageX,n.pageY):(this.popup.setOptions({anchor:e}),this.popup.open())},close:function(){this.popup.close()},clear:function(){this.action({command:`ClearFilterCommand`,options:{column:this.options.column}}),this.viewModel.reset(),this.close()},apply:function(){this._active();var e={operatingRange:this.options.range,column:this.options.column},t,n;this.viewModel.active===`value`?(this.viewModel.valuesChange({sender:this.valuesTreeView}),t=this.viewModel.valueFilter.toJSON(),(t.blanks||t.values&&t.values.length)&&(e.valueFilter=t)):this.viewModel.active===`custom`&&(n=this.viewModel.customFilter.toJSON(),n.criteria.length&&n.criteria[0].value!==null&&(e.customFilter=n)),(e.valueFilter||e.customFilter)&&this.action({command:`ApplyFilterCommand`,options:e})},action:function(e){this.trigger(`action`,t.extend({},e))},_filterInit:function(){var e=this.options.column,t=this.options.range,n=t.sheet(),r=d.filter(e,n);if(r){var i=d.filterType(t,e);this.viewModel.set(`active`,r.type),this.viewModel.set(r.type+`Filter`,r.options),r.type==`custom`&&(this.viewModel.set(`operator`,i+`_`+r.operator),this.viewModel.set(`operatorType`,i))}else this.viewModel.reset()},_popup:function(){this.popup=this.element.kendoPopup({copyAnchorStyles:!1}).data(`kendoPopup`)},_sort:function(){var n=e.template(f.templates.menuItem),r=e.spreadsheet.messages.filterMenu,i=[{command:`sort`,dir:`asc`,text:r.sortAscending,iconClass:`sort-asc`},{command:`sort`,dir:`desc`,text:r.sortDescending,iconClass:`sort-desc`}],a=t(`<ul></ul>`,{html:e.render(n,i)}).appendTo(this.element);this.menu=a.kendoMenu({orientation:`vertical`,select:function(e){var n={value:t(e.item).data(`dir`),sheet:!1,operatingRange:this.options.range.resize({top:1}),column:this.options.column};this.action({command:`SortCommand`,options:n})}.bind(this)}).data(`kendoMenu`)},_appendTemplate:function(n,r,a,o){var s=e.template(n),c=t(`<div class='`+r+`'/>`).html(s({messages:e.spreadsheet.messages.filterMenu,guid:e.guid(),ns:e.ns}));return this.element.append(c),a&&=new i(c,{expanded:o,toggle:this._detailToggle.bind(this)}),e.bind(c,this.viewModel),c},_detailToggle:function(t){this.element.find(`[`+e.attr(`role`)+`=details]`).not(t.sender.element).data(`kendoDetails`).toggle(!t.show)},_filterByCondition:function(){var e=this.viewModel.active===`custom`;this._appendTemplate(f.templates.filterByCondition,f.classNames.filterByCondition,!0,e)},_filterByValue:function(){var t=this.viewModel.active===`value`,n=this._appendTemplate(f.templates.filterByValue,f.classNames.filterByValue,!0,t);this.valuesTreeView=n.find(`[`+e.attr(`role`)+`=treeview]`).data(`kendoTreeView`);var r=d.valuesTree(this.options.range,this.options.column);this.viewModel.set(`valuesDataSource`,new e.data.HierarchicalDataSource({data:r,accentFoldingFiltering:e.culture().name}))},_actionButtons:function(){this._appendTemplate(f.templates.actionButtons,f.classNames.actionButtons,!1)},_active:function(){var n=this.element.find(`[`+e.attr(`role`)+`=details]`).filter(function(e,n){return t(n).data(`kendoDetails`).visible()});n.hasClass(f.classNames.filterByValue)?this.viewModel.set(`active`,`value`):n.hasClass(f.classNames.filterByCondition)&&this.viewModel.set(`active`,`custom`)}});e.spreadsheet.FilterMenu=f,t.extend(!0,f,{classNames:r,templates:a})})(window.kendo),(function(e){e.spreadsheet.messages.workbook={defaultSheetName:`Sheet`},e.spreadsheet.messages.view={nameBox:`Name Box`,formulaInput:`Formula Input`,errors:{openUnsupported:`Unsupported format. Please select an .xlsx file.`,shiftingNonblankCells:`Cannot insert cells due to data loss possibility. Select another insert location or delete the data from the end of your worksheet.`,insertColumnWhenRowIsSelected:`Cannot insert column when all columns are selected.`,insertRowWhenColumnIsSelected:`Cannot insert row when all rows are selected.`,filterRangeContainingMerges:`Cannot create a filter within a range containing merges`,sortRangeContainingMerges:`Cannot sort a range containing merges`,cantSortMultipleSelection:`Cannot sort multiple selection`,cantSortNullRef:`Cannot sort empty selection`,cantSortMixedCells:`Cannot sort range containing cells of mixed shapes`,validationError:`The value that you entered violates the validation rules set on the cell.`,cannotModifyDisabled:`Cannot modify disabled cells.`,insertRowBelowLastRow:`Cannot insert row below the last row.`,insertColAfterLastCol:`Cannot insert column to the right of the last column.`},tabs:{file:`File`,home:`Home`,insert:`Insert`,format:`Format`,data:`Data`,view:`View`},sheetBar:{addSheet:`Add new sheet`,deleteSheet:`Delete`,duplicateSheet:`Duplicate`,renameSheet:`Rename`,hideSheet:`Hide`,moveRight:`Move Right`,moveLeft:`Move Left`}},e.spreadsheet.messages.menus={cut:`Cut`,copy:`Copy`,paste:`Paste`,merge:`Merge`,unmerge:`Unmerge`,delete:`Delete`,hide:`Hide`,unhide:`Unhide`,bringToFront:`Bring to front`,sendToBack:`Send to back`}})(window.kendo),(function(e){let t=e.jQuery;if(e.PDFMixin){let n=function(e){var n=new t.Deferred,r=function(e){n.resolve(e)};switch(e.area){case`workbook`:e.workbook.draw(e,r);break;case`sheet`:e.workbook.activeSheet().draw(e,r);break;case`selection`:e.workbook.activeSheet().selection().draw(e,r);break}return n.promise()},r=function(i){this.events.indexOf(`pdfExport`)===-1&&(e.PDFMixin.extend(this),this.saveAsPDF=r,this._drawPDF=n);var a=new t.Deferred,o=a.promise(),s={promise:o};if(!this.trigger(`pdfExport`,s))return this._drawPDF(i,a).then(function(t){let n=i.forceProxy?e.pdf.exportPDF(t):e.pdf.exportPDFToBlob(t);return e.convertPromiseToDeferred(n)}).done(function(t){e.saveAs({dataURI:t,fileName:i.fileName,proxyURL:i.proxyURL,forceProxy:i.forceProxy,proxyTarget:i.proxyTarget}),a.resolve()}).fail(function(e){a.reject(e)}),o};e.spreadsheet.Workbook.prototype.saveAsPDF=r,e.spreadsheet.Workbook.prototype._drawPDF=n}})(kendo);let M={id:`spreadsheet`,name:`Spreadsheet`,category:`web`,description:`Spreadsheet component`,depends:[`core`,`binder`,`colorpicker`,`combobox`,`data`,`dom`,`dropdownlist`,`menu`,`ooxml`,`popup`,`sortable`,`tabstrip`,`toolbar`,`treeview`,`window`,`validator`,`excel`,`pdf`,`drawing`,`list`,`spreadsheet.common`]};(function(e,t){if(e.support.browser.msie&&e.support.browser.version<9)return;let n=`k-active`,r=e.jQuery,i=e.ui.Widget,a=e.spreadsheet.commonEngine,o=e.spreadsheet.FormulaInput,s=e.spreadsheet.SheetsBar;function c(e){return e.map(function(e){return`[data-action="`+e+`"]`}).join(`,`)}function l(e){let t=r.Deferred();e.then(function(e){t.resolve(e)},function(e){t.reject(e)}),typeof e.progress==`function`&&e.progress(function(e){t.notify(e)});let n=t.promise();return n.progress=function(e){return t.progress(e),n},n}function u(e,t){let n={};for(let r in e)e.hasOwnProperty(r)&&t.indexOf(r)===-1&&(n[r]=e[r]);return n}let d=c([`cut`,`copy`,`paste`,`insert-left`,`insert-right`,`insert-above`,`insert-below`]),f=c([`unhide-row`,`unhide-column`]),p={wrapper:`k-spreadsheet`},m=a.View.classNames,h=({messages:t})=>`
<div ref-header-container class="k-spreadsheet-header"><div ref-header-menu></div><div ref-header-toolbar></div></div>
<div class="k-spreadsheet-action-bar">
<div class="k-spreadsheet-name-editor">
<input ref-namebox-input title="${t.nameBox||`Name Box`}" aria-label="${t.nameBox||`Name Box`}"></input>
</div>
<div class="k-spreadsheet-formula-bar">
${e.ui.icon(`formula-fx`)}
<div class="k-spreadsheet-formula-input"
role="combobox"
title="${t.view.formulaInput}"
aria-haspopup="menu"
aria-expanded="false"
contentEditable="true"
spellCheck="false">
</div>
</div>
</div>
<div class="k-spreadsheet-view">
<div class="k-spreadsheet-fixed-container"></div>
<div class="k-spreadsheet-scroller">
<div class="k-spreadsheet-view-size"></div>
</div>
<div tabIndex="0" class="k-spreadsheet-clipboard" contentEditable="true" ></div>
<div contentEditable="true"
spellCheck="false"
role="combobox"
title="${t.view.formulaInput}"
aria-haspopup="menu"
aria-expanded="false"
class="k-spreadsheet-formula-input k-spreadsheet-cell-editor">
</div>
</div>
<div ref-sheets-bar></div>`,g=({messages:e})=>`
<ul class="${m.cellContextMenu}">
<li data-action="cut">${e.menus.cut}</li>
<li data-action="copy">${e.menus.copy}</li>
<li data-action="paste">${e.menus.paste}</li>
<li class="k-separator"></li>
<li data-action="merge">${e.menus.merge}</li>
<li data-action="unmerge">${e.menus.unmerge}</li>
</ul>`,_=({messages:e})=>`
<ul class="${m.rowHeaderContextMenu}">
<li data-action="cut">${e.menus.cut}</li>
<li data-action="copy">${e.menus.copy}</li>
<li data-action="paste">${e.menus.paste}</li>
<li class="k-separator"></li>
<li data-action="delete-row">${e.menus.delete}</li>
<li data-action="hide-row">${e.menus.hide}</li>
<li data-action="unhide-row">${e.menus.unhide}</li>
</ul>`,v=({messages:e})=>`
<ul class="${m.colHeaderContextMenu}">
<li data-action="cut">${e.menus.cut}</li>
<li data-action="copy">${e.menus.copy}</li>
<li data-action="paste">${e.menus.paste}</li>
<li class="k-separator"></li>
<li data-action="delete-column">${e.menus.delete}</li>
<li data-action="hide-column">${e.menus.hide}</li>
<li data-action="unhide-column">${e.menus.unhide}</li>
</ul>`,y=({messages:e})=>`
<ul class="${m.drawingContextMenu}">
<li data-action="bring-to-front">${e.menus.bringToFront}</li>
<li data-action="send-to-back">${e.menus.sendToBack}</li>
<li class="k-separator"></li>
<li data-action="delete-drawing">${e.menus.delete}</li>
</ul>`;e.spreadsheet.ContextMenu=e.ui.ContextMenu;let b=e.ui.StaticList.extend({data:function(e){return this.dataSource.data(e)},itemClick:function(e){this.bind(`change`,function(t){e(this.value()[0])})}});class x{constructor({list:e,popup:t}){this.current={list:e,popup:t},this.clone=function(){return this}}}class S{constructor({nameEditor:e,container:n}){let r=this.initializeComboBox(n,e);this.current={value:e=>{if(e===t){let e=r.value();return e&&(e.name||e)}else r.value(e||``)}},this.nameEditor=e,this.clone=function(){return this}}initializeComboBox(t){let n=this,i=new e.data.DataSource({transport:{read:function(e){let t=n.nameEditor()?.readData()||[];e.success(t)},cache:!1}}),a=r(t).kendoComboBox({clearButton:!1,dataTextField:`name`,dataValueField:`name`,template:({name:t})=>`${e.htmlEncode(t)}<a role='button' class='k-button-delete' href='\\#'>${e.ui.icon(`x`)}</a>`,dataSource:i,autoBind:!1,ignoreCase:!0,change:n.onChange.bind(n),noDataTemplate:()=>`<div></div>`,open:function(){i.read()}}).data(`kendoComboBox`);return a.input.on(`keydown`,n,n.onKeyDown.bind(this)),a.popup.element.addClass(`k-spreadsheet-names-popup`).on(`mousemove`,function(e){e.stopPropagation()}).on(`click`,`.k-button-delete`,function(e){e.preventDefault(),e.stopPropagation();let t=r(e.target).closest(`.k-list-item`);t=a.dataItem(t),n.onDelete(t.name)}),a}onChange(e){let t=this.nameEditor();t&&e.sender.value()&&t.trigger(`select`,{name:e.sender.value()})}onDelete(e){this.nameEditor()?.trigger(`delete`,{name:e})}onKeyDown(e){let t=this.nameEditor();if(t)if(e.key===`Enter`){let n=e.target.value;t.trigger(`enter`,{value:n})}else e.key===`Escape`&&t.trigger(`cancel`)}}let C=e.ui.Widget.extend({_renderInnerContent:function(e){r(e).append(h(this.options))},init:function(t,n){let a=this;i.fn.init.call(this,t,n),this.options.messages=r.extend(!0,{view:e.spreadsheet.messages.view,tabs:e.spreadsheet.messages.view.tabs,menus:e.spreadsheet.messages.menus,workbook:{defaultSheetName:`Sheet`}},this.options.messages),this.element.addClass(C.classNames.wrapper),this.element.attr(`role`,`application`),this._renderInnerContent(this.element),this.element.on(`keydown.kendoSpreadsheet`,a,function(){}),this._createFormulaInputs(),a.spreadsheetRef=this._initSpreadsheetWidget(),this._normalizeTooltipClasses(),this._normalizeViewStacking(),this._bindWorkbookEvents();let o=this.activeSheet();this._onUpdateTools({range:o.range(o.activeCell())}),this._resizeHandler=function(){a.resize()},r(window).on(`resize.kendoSpreadsheet`,this._resizeHandler),this._showWatermarkOverlay&&this._showWatermarkOverlay(this.element[0]),e.ui.Widget.fn.endInit.call(this)},_initSpreadsheetWidget:function(){let t=this,n=u(t.options,t.events),i=r.extend({},n,{sheetsbar:t.options.sheetsbar==0?{}:t.options.sheetsbar,formulaBarInputRef:new x({list:this._formulaBarInputRefList,popup:this._formulaBarInputRefPopup}),formulaCellInputRef:new x({list:this._formulaCellInputRefList,popup:this._formulaCellInputRefPopup}),nameBoxRef:new S({container:t.element.find(`.k-spreadsheet-name-editor [ref-namebox-input]`),nameEditor:function(){return t.spreadsheetRef?.view.nameEditor}}),createFilterMenu:function(n){let i=r(`<div></div>`).appendTo(t.element);return new e.spreadsheet.FilterMenu(i,n)},createTabStrip:function(e){if(t.options.toolbar)return t._initHeader(),{focus:function(){t.menu.wrapper.trigger(`focus`)},select:function(e){t.menu.element.find(`li[ref-tab-name="${e}"]`).click()},destroy:function(){t.menu.destroy()}}},createSheetEditor:function(e){t.sheetsBar._createEditor()},createSheetBar:function(e){t._sheetsBar(e)},createContextMenus:function(e){t._dialogs=[],t._initContextMenus()},createSheetDataSource:function(t){return e.data.DataSource.create(t)},getWorkbookCommand:function(t,n){return new e.spreadsheet[t](n)},getIconHTMLString:function(t){return r(e.ui.icon(t))[0]},update:function(e){t._onUpdateTools(e),e.reason.sheetSelection&&t.sheetsBar&&t.sheetsBar.renderSheets(e.sender.sheets(),e.sender.sheetIndex(e.sheet))},message:n=>{let{sender:i,name:a,ref:o,range:s,...c}=n,l=r.extend({},{pdfExport:t.options.pdf,excelExport:t.options.excel},c),u=e.spreadsheet.dialogs.create(n.name,l),d=function(t,n,r){e.saveAs({dataURI:t,fileName:n,...r})};u&&(u.bind(`action`,function(n){if(n.command==`SaveAsCommand`){let{sender:i,...a}=n,o=n.options.name+n.options.extension;if(n.options.extension===`.xlsx`)return t.spreadsheetRef.saveAsExcel(r.extend(a,{fileName:o,Workbook:e.ooxml.Workbook,saveAs:d}));if(this.options.extension===`.pdf`)return t.spreadsheetRef.saveAsPDF(r.extend(n.options.pdf,{workbook:this.options.workbook,fileName:o}))}t.spreadsheetRef.executeCommand(n)}),u.bind(`deactivate`,()=>{u.destroy(),t._dialogs.pop()}),t._dialogs.push(u),u.open(n.range,n),n.dialog=u)},contextmenu:e=>{let{objectRef:t,targetType:n,showUnhide:r,showUnmerge:i,originalEvent:a,isComposite:o}=e,{topLeft:s,bottomRight:c}=e.sender.activeSheet().select();this._cellContextMenu.close(),this._colHeaderContextMenu.close(),this._rowHeaderContextMenu.close(),this._drawingContextMenu.close();let l;l=n==`columnheader`?this._colHeaderContextMenu:n==`rowheader`?this._rowHeaderContextMenu:n==`drawing`?this._drawingContextMenu:this._cellContextMenu,l.element.find(d).toggle(!o),l.element.find(f).toggle(r),l.element.find(`[data-action=unmerge]`).toggle(i),setTimeout(function(){l.open(e.originalEvent.pageX,e.originalEvent.pageY)})},locale:e.cultures.current.name,intl:e.kendoCultureToIntl()});return new e.spreadsheet.commonEngine.SpreadsheetWidget(this.element[0],i)},_normalizeTooltipClasses:function(){this.element.find(`.k-tooltip.k-widget`).removeClass(`k-widget`)},_normalizeViewStacking:function(){let e=this.element.find(`.k-spreadsheet-fixed-container`)[0],t=this.element.find(`.k-spreadsheet-scroller`)[0];if(!e||!t||!window.getComputedStyle)return;let n=parseInt(window.getComputedStyle(e).zIndex,10),r=parseInt(window.getComputedStyle(t).zIndex,10);!isNaN(n)&&!isNaN(r)&&r>=n&&(t.style.zIndex=String(Math.max(n-1,0)))},_createFormulaInputs:function(){let t=this.element.find(`.k-spreadsheet-action-bar .k-spreadsheet-formula-input`),n=e.guid();t.attr(`aria-controls`,n),this._formulaBarInputRefList=new b(r(`<ul id="${n}" />`).addClass(o.classNames.listWrapper).insertAfter(t),{aria:{role:`menu`,itemRole:`menuitem`},autoBind:!1,selectable:!0,dataTextField:`text`,dataValueField:`value`,template:({text:e,value:t})=>`${e||t}`}),this._formulaBarInputRefList.element.on(`mousedown`,function(e){e.preventDefault()}),this._formulaBarInputRefPopup=new e.ui.Popup(this._formulaBarInputRefList.element,{anchor:this.element.find(`.k-spreadsheet-formula-input:not(.k-spreadsheet-cell-editor)`),open:function(e){t.attr(`aria-expanded`,!0)},close:function(e){t.attr(`aria-expanded`,!1)}});let i=this.element.find(`.k-spreadsheet-cell-editor`),s=e.guid();i.attr(`aria-controls`,s),this._formulaCellInputRefList=new b(r(`<ul id="${s}" />`).addClass(o.classNames.listWrapper).insertAfter(i),{aria:{role:`menu`,itemRole:`menuitem`},autoBind:!1,selectable:!0,dataValueField:`value`,dataTextField:`text`,template:({text:e,value:t})=>`${e||t}`}),this._formulaCellInputRefList.element.on(`mousedown`,function(e){e.preventDefault()}),this._formulaCellInputRefPopup=new e.ui.Popup(this._formulaCellInputRefList.element,{anchor:this.element.find(`.`+a.View.classNames.cellEditor),open:function(e){i.attr(`aria-expanded`,!0)},close:function(e){i.attr(`aria-expanded`,!1)}})},_initContextMenus:function(){let t=this,n={target:this.element,animation:!1,showOn:`never`};this._cellContextMenu=new e.spreadsheet.ContextMenu(r(g(t.options)).appendTo(t.element),n),this._colHeaderContextMenu=new e.spreadsheet.ContextMenu(r(v(t.options)).appendTo(t.element),n),this._rowHeaderContextMenu=new e.spreadsheet.ContextMenu(r(_(t.options)).appendTo(t.element),n),this._drawingContextMenu=new e.spreadsheet.ContextMenu(r(y(t.options)).appendTo(t.element),n),this._cellContextMenu.bind(`select`,this.onContextMenuSelect.bind(this)),this._rowHeaderContextMenu.bind(`select`,this.onContextMenuSelect.bind(this)),this._colHeaderContextMenu.bind(`select`,this.onContextMenuSelect.bind(this)),this._drawingContextMenu.bind(`select`,this.onContextMenuSelect.bind(this))},onContextMenuSelect:function(e){let t=this,n=r(e.item).data(`action`),i;switch(n){case`cut`:i={command:`ToolbarCutCommand`,options:{workbook:this.spreadsheetRef.workbook}};break;case`copy`:i={command:`ToolbarCopyCommand`,options:{workbook:this.spreadsheetRef.workbook}};break;case`paste`:i={command:`ToolbarPasteCommand`,options:{workbook:this.spreadsheetRef.workbook}};break;case`delete-drawing`:i={command:`DeleteDrawingCommand`,options:{drawing:this.spreadsheetRef._controller.navigator._sheet._activeDrawing}};break;case`bring-to-front`:i={command:`BringToFrontCommand`,options:{drawing:this.spreadsheetRef._controller.navigator._sheet._activeDrawing}};break;case`send-to-back`:i={command:`SendToBackCommand`,options:{drawing:this.spreadsheetRef._controller.navigator._sheet._activeDrawing}};break;case`unmerge`:i={command:`MergeCellCommand`,options:{value:`unmerge`}};break;case`merge`:this.spreadsheetRef.openDialog(`merge`);break;case`hide-row`:i={command:`HideLineCommand`,options:{axis:`row`}};break;case`hide-column`:i={command:`HideLineCommand`,options:{axis:`column`}};break;case`unhide-row`:i={command:`UnHideLineCommand`,options:{axis:`row`}};break;case`unhide-column`:i={command:`UnHideLineCommand`,options:{axis:`column`}};break;case`delete-row`:i={command:`DeleteRowCommand`};break;case`delete-column`:i={command:`DeleteColumnCommand`};break}i&&t.spreadsheetRef.executeCommand(i)},_onUpdateTools:function(e){let t=e.reason;t&&(t.overElement||t.comment)||this.toolbar?.refresh(e.range)},_getCopyRegex:function(e){let t=`(${e.replaceAll(`(`,`\\(`).replaceAll(`)`,`\\)`)})\\s?\\(`;return new RegExp(t,`s`)},_sheetsBar:function(e){let t=this;if(t.options.sheetsbar){let n=r.extend(!0,{openDialog:e},t.options.sheetsbar);t.sheetsBar=new s(t.element[0].querySelector(`[ref-sheets-bar]`),n),t.sheetsBar.bind(`select`,function(e){e.isAddButton?t.spreadsheetRef.view.sheetsbar.onAddSelect():t.spreadsheetRef.view.sheetsbar.onSheetSelect(e.name)}),t.sheetsBar.bind(`reorder`,function(e){t.spreadsheetRef.view.sheetsbar.onSheetReorderEnd(e)}),t.sheetsBar.bind(`rename`,function(e){t.spreadsheetRef.view.sheetsbar.onSheetRename(e.name,e.sheetIndex)}),t.sheetsBar.bind(`duplicate`,function(e){let n=e.name,r=t.sheetByName(n),i=t.sheetIndex(r),a=0,o=t._getCopyRegex(n);t.sheets().forEach(e=>{o.test(e.name())&&(a+=1)});let s=`${n} (${a+1})`;t.insertSheet({data:{...r.toJSON(),name:s},index:i+1}),t.spreadsheetRef.view.sheetsbar.onSheetSelect(s)}),t.sheetsBar.bind(`remove`,function(e){t.spreadsheetRef.view.sheetsbar.onSheetRemove(e.name)}),t.sheetsBar.bind(`hide`,function(e){let n=e.name,r=t.sheetByName(n),i=t.sheets().filter(e=>e.state()===`visible`),a=i.findIndex(e=>e.name()===n),o=i[a+1]||i[a-1];r._state(`hidden`),t.spreadsheetRef.workbook._sheetsSearchCache={},t.spreadsheetRef.view.sheetsbar.onSheetSelect(o.name())}),t.sheetsBar.bind(`show`,function(e){let n=e.name;t.sheetByName(n)._state(`visible`),t.spreadsheetRef.workbook._sheetsSearchCache={},t.spreadsheetRef.view.sheetsbar.onSheetSelect(e.name)})}},_createToolBar:function(n,i,a){let o=this;o.toolbar&&(o.toolbar.destroy(),o.toolbar.element.empty());let s=i[i.findIndex(e=>e.id===a)],c=n[s.id];o._activeToolBar=s.text,o.toolbar=new e.spreadsheet.ToolBar(this.element.find(`[ref-header-toolbar]`),{tools:typeof c==`boolean`?t:c,overflow:r.isPlainObject(n.overflow)?n.overflow:t,toolbarName:s.id,fillMode:`flat`,action:function(e){if(e.command===`undo`||e.command===`redo`){o.spreadsheetRef.workbook.undoRedoStack[e.command]();return}e.command==`OpenCommand`?e.options.file=e.options.value:e.command===`BorderChangeCommand`&&(e.options.border=e.options.border||e.options.value.type,e.options.style=e.options.style||e.options.value.style||{color:e.options.value.color,size:1}),o.spreadsheetRef.executeCommand(e)},dialog:function(e){o.spreadsheetRef.openDialog(e.name,e.options)}}),o.toolbar.element.attr(`aria-label`,s.text)},_initHeader:function(){let t=this,i=this.options.messages.tabs,a=r.extend(!0,{file:!0,home:!0,insert:!0,format:!0,data:!0,view:!0},this.options.toolbar),o=[];this.menu&&(this.menu.destroy(),this.menu.empty()),this.toolbar&&(this.toolbar.destroy(),this.toolbar.empty());for(let e in a)(a[e]===!0||a[e]instanceof Array)&&o.push({id:e,text:i[e],content:``,attr:{"ref-tab-name":e}});if(this.menu=new e.spreadsheet.Menu(this.element.find(`[ref-header-menu]`),{dataSource:o,toolbarOptions:a,select:function(e){let i=r(e.item).text();if(t._activeToolBar!==i){r(e.item).addClass(n).siblings(`li`).removeClass(n),t._createToolBar(a,o,o.find(e=>e.text===i).id);let s=t.activeSheet();t._onUpdateTools({range:s.range(s.activeCell())})}}}),o.length){let e=o.find(e=>e.id===`home`);this.menu.element.find(`li[ref-tab-name="home"]`).addClass(n),t._createToolBar(a,o,e?e.id:o[0].id)}},executeCommand(e){return this.spreadsheetRef.executeCommand(e)},_resize:function(){this.refresh({layout:!0})},_workbookRender:function(e){this.trigger(`render`,e)&&e.preventDefault()},_workbookChanging:function(e){this.trigger(`changing`,e)&&e.preventDefault()},_workbookChange:function(e){this.trigger(`change`,{range:e.range})&&e.preventDefault()},_workbookCut:function(e){this.trigger(`cut`,e)},_workbookCopy:function(e){this.trigger(`copy`,e)},_workbookPaste:function(e){this.trigger(`paste`,e)},activeSheet:function(e){return this.spreadsheetRef.activeSheet(e)},moveSheetToIndex:function(e,t){return this.spreadsheetRef.moveSheetToIndex(e,t)},insertSheet:function(e){return this.spreadsheetRef.insertSheet(e)},sheets:function(){return this.spreadsheetRef.sheets()},removeSheet:function(e){return this.spreadsheetRef.removeSheet(e)},sheetByName:function(e){return this.spreadsheetRef.sheetByName(e)},sheetIndex:function(e){return this.spreadsheetRef.sheetIndex(e)},sheetByIndex:function(e){return this.spreadsheetRef.sheetByIndex(e)},renameSheet:function(e,t){return this.spreadsheetRef.renameSheet(e,t)},refresh:function(e){return this.spreadsheetRef.refresh(e),this},openDialog:function(e,t){return this.spreadsheetRef.openDialog(e,t)},autoRefresh:function(e){return e===t?this._autoRefresh:(this._autoRefresh=e,e===!0&&this.refresh(),this)},toJSON:function(){return this.spreadsheetRef.toJSON()},fromJSON:function(e){this.spreadsheetRef.fromJSON(e)},saveJSON:function(){return this.spreadsheetRef.saveJSON()},fromFile:function(e,t){return this.spreadsheetRef.fromFile(e,t)},saveAsPDF:function(e){this.spreadsheetRef.saveAsPDF(r.extend({},this.options.pdf,e,{workbook:this.spreadsheetRef._workbook}))},saveAsExcel:function(t){let n=r.extend({},this.options.excel,t,{Workbook:e.ooxml.Workbook,saveAs:function(t,n,r){e.saveAs({dataURI:t,fileName:n,...r})}});this.spreadsheetRef.saveAsExcel(n)},draw:function(e,t){this.spreadsheetRef.draw(e,t)},_workbookExcelExport:function(e){this.trigger(`excelExport`,e)&&e.preventDefault()},_workbookExcelImport:function(e){let t={file:e.file,sender:e.sender,preventDefault:e.preventDefault,isDefaultPrevented:e.isDefaultPrevented,promise:l(e.deferred),_defaultPrevented:e._defaultPrevented};this.trigger(`excelImport`,t)?e.preventDefault():this._initProgress(e.deferred)},_initProgress:function(t){let n=r(`<div class='k-loading-mask' style='width: 100%; height: 100%; top: 0;'><div class='k-loading-color'></div></div>`).appendTo(this.element),i=r(`<div class='k-loading-progress'>`).appendTo(n).kendoProgressBar({type:`chunk`,chunkCount:10,min:0,max:1,value:0}).data(`kendoProgressBar`);t.progress(function(e){i.value(e.progress)}).promise.finally(function(){e.destroy(n),n.remove()})},_workbookPdfExport:function(e){this.trigger(`pdfExport`,e)&&e.preventDefault()},_workbookInsertSheet:function(e){this.trigger(`insertSheet`,e)&&e.preventDefault()},_workbookRemoveSheet:function(e){this.trigger(`removeSheet`,e)&&e.preventDefault()},_workbookSelectSheet:function(e){this.trigger(`selectSheet`,e)&&e.preventDefault()},_workbookRenameSheet:function(e){this.trigger(`renameSheet`,e)&&e.preventDefault()},_workbookInsertRow:function(e){this.trigger(`insertRow`,e)&&e.preventDefault()},_workbookInsertColumn:function(e){this.trigger(`insertColumn`,e)&&e.preventDefault()},_workbookDeleteRow:function(e){this.trigger(`deleteRow`,e)&&e.preventDefault()},_workbookDeleteColumn:function(e){this.trigger(`deleteColumn`,e)&&e.preventDefault()},_workbookHideRow:function(e){this.trigger(`hideRow`,e)&&e.preventDefault()},_workbookHideColumn:function(e){this.trigger(`hideColumn`,e)&&e.preventDefault()},_workbookUnhideRow:function(e){this.trigger(`unhideRow`,e)&&e.preventDefault()},_workbookUnhideColumn:function(e){this.trigger(`unhideColumn`,e)&&e.preventDefault()},_workbookSelect:function(e){this.trigger(`select`,e)},_workbookChangeFormat:function(e){this.trigger(`changeFormat`,e)},_workbookDataBinding:function(e){this.trigger(`dataBinding`,e)&&e.preventDefault()},_workbookDataBound:function(e){this.trigger(`dataBound`,e)},_workbookProgress:function(t){e.ui.progress(this.element,t.toggle)},_bindWorkbookEvents:function(){this.spreadsheetRef.bind(`render`,this._workbookRender.bind(this)),this.spreadsheetRef.bind(`cut`,this._workbookCut.bind(this)),this.spreadsheetRef.bind(`copy`,this._workbookCopy.bind(this)),this.spreadsheetRef.bind(`paste`,this._workbookPaste.bind(this)),this.spreadsheetRef.bind(`changing`,this._workbookChanging.bind(this)),this.spreadsheetRef.bind(`change`,this._workbookChange.bind(this)),this.spreadsheetRef.bind(`excelExport`,this._workbookExcelExport.bind(this)),this.spreadsheetRef.bind(`excelImport`,this._workbookExcelImport.bind(this)),this.spreadsheetRef.bind(`pdfExport`,this._workbookPdfExport.bind(this)),this.spreadsheetRef.bind(`insertSheet`,this._workbookInsertSheet.bind(this)),this.spreadsheetRef.bind(`removeSheet`,this._workbookRemoveSheet.bind(this)),this.spreadsheetRef.bind(`selectSheet`,this._workbookSelectSheet.bind(this)),this.spreadsheetRef.bind(`renameSheet`,this._workbookRenameSheet.bind(this)),this.spreadsheetRef.bind(`insertRow`,this._workbookInsertRow.bind(this)),this.spreadsheetRef.bind(`insertColumn`,this._workbookInsertColumn.bind(this)),this.spreadsheetRef.bind(`deleteRow`,this._workbookDeleteRow.bind(this)),this.spreadsheetRef.bind(`deleteColumn`,this._workbookDeleteColumn.bind(this)),this.spreadsheetRef.bind(`hideRow`,this._workbookHideRow.bind(this)),this.spreadsheetRef.bind(`hideColumn`,this._workbookHideColumn.bind(this)),this.spreadsheetRef.bind(`unhideRow`,this._workbookUnhideRow.bind(this)),this.spreadsheetRef.bind(`unhideColumn`,this._workbookUnhideColumn.bind(this)),this.spreadsheetRef.bind(`select`,this._workbookSelect.bind(this)),this.spreadsheetRef.bind(`changeFormat`,this._workbookChangeFormat.bind(this)),this.spreadsheetRef.bind(`dataBinding`,this._workbookDataBinding.bind(this)),this.spreadsheetRef.bind(`dataBound`,this._workbookDataBound.bind(this)),this.spreadsheetRef.bind(`progress`,this._workbookProgress.bind(this))},destroy:function(){e.ui.Widget.fn.destroy.call(this),this._formulaBarInputRefPopup?.destroy(),this._formulaCellInputRefPopup?.destroy(),this._formulaBarInputRefList?.destroy(),this._formulaCellInputRefList?.destroy(),this._formulaBarInputRefList=this._formulaCellInputRefList=null,this._formulaBarInputRefPopup=this._formulaCellInputRefPopup=null,this.menu&&this.menu.destroy(),this.toolbar&&this.toolbar.destroy(),this.sheetsBar&&this.sheetsBar.destroy(),this._dialogs?.forEach(function(e){e?.destroy()}),this.spreadsheetRef?.destroy(),this._cellContextMenu?.destroy(),this._rowHeaderContextMenu?.destroy(),this._colHeaderContextMenu?.destroy(),this._drawingContextMenu?.destroy(),this._cellContextMenu=this._rowHeaderContextMenu=this._colHeaderContextMenu=this._drawingContextMenu=null,this._resizeHandler&&r(window).off(`resize.kendoSpreadsheet`,this._resizeHandler),e.destroy(this.element)},options:{name:`Spreadsheet`,toolbar:!0,sheetsbar:!0,rows:200,columns:50,rowHeight:30,columnWidth:64,headerHeight:30,headerWidth:32,excel:{proxyURL:``,fileName:`Workbook.xlsx`},messages:{},pdf:{area:`workbook`,fileName:`Workbook.pdf`,proxyURL:``,paperSize:`a4`,landscape:!0,margin:null,title:null,author:null,subject:null,keywords:null,creator:`Kendo UI PDF Generator v.`+e.version,date:null},defaultCellStyle:{fontFamily:`Arial`,fontSize:12},useCultureDecimals:!1},defineName:function(e,t,n){return this.spreadsheetRef.defineName(e,t,n)},undefineName:function(e){return this.spreadsheetRef.undefineName(e)},nameValue:function(e){return this.spreadsheetRef.nameValue(e)},forEachName:function(e){return this.spreadsheetRef.forEachName(e)},cellContextMenu:function(){return this._cellContextMenu},rowHeaderContextMenu:function(){return this._rowHeaderContextMenu},colHeaderContextMenu:function(){return this._colHeaderContextMenu},addImage:function(e){return this.spreadsheetRef.addImage(e)},cleanupImages:function(){return this.spreadsheetRef.cleanupImages()},events:`cut.copy.paste.pdfExport.excelExport.excelImport.changing.change.render.removeSheet.selectSheet.renameSheet.insertRow.insertColumn.deleteRow.insertSheet.deleteColumn.hideRow.hideColumn.unhideRow.unhideColumn.select.changeFormat.dataBinding.dataBound.kendoKeydown`.split(`.`)});e.ui.plugin(C),r.extend(!0,C,{classNames:p})})(window.kendo);var N=kendo;e.__meta__=M,e.default=N});
//# sourceMappingURL=kendo.spreadsheet.min.js.map