@progress/kendo-ui
Version:
This package is part of the [Kendo UI for jQuery](http://www.telerik.com/kendo-ui) suite.
3 lines (2 loc) • 45 kB
JavaScript
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("kendo.core.js"),require("kendo.listview.js"),require("kendo.treeview.js"),require("kendo.icons.js"),require("kendo.data.js"),require("kendo.menu.js"),require("kendo.toolbar.js"),require("kendo.breadcrumb.js"),require("kendo.upload.js"),require("kendo.dialog.js"),require("kendo.resizable.js"),require("kendo.switch.js"),require("kendo.textbox.js")):"function"==typeof define&&define.amd?define(["exports","kendo.core.min","kendo.listview","kendo.treeview","kendo.icons","kendo.data","kendo.menu","kendo.toolbar","kendo.breadcrumb","kendo.upload","kendo.dialog","kendo.resizable","kendo.switch","kendo.textbox"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).kendo=e.kendo||{},e.kendo._globals=e.kendo._globals||{},e.kendo._globals.Filemanager={}))}(this,(function(e){!function(e){var t=window.kendo,i=e.extend,n=e.Deferred,a=t.Class,o=a.extend({init:function(e){this.options=e,this.filemanager=e.filemanager}}),r=o.extend({init:function(e){o.fn.init.call(this,e)},exec:function(){var e=this,t=e.filemanager,i=t._commandStack,n=t._viewDataSource||t.dataSource,a=e._remove.bind(e);e._item=n._createNewModel(),i.push({item:e._item.toJSON()}).fail(a),n.add(e._item)},_remove:function(){var e=this.filemanager;(e._viewDataSource||e.dataSource).pushDestroy(this._item)}}),d=o.extend({init:function(e){o.fn.init.call(this,e)},exec:function(){var e=this,t=e.options.target,i=e.filemanager,n=i._commandStack,a=i._view.widgetComponent.dataItem(t);t&&a?(n.push({target:t,item:a}),e.filemanager._view.edit(t)):e._renameTreeViewItem(t)},_renameTreeViewItem:function(e){var t=this,i=t.filemanager._commandStack,n=e.data("uid"),a=t.filemanager.treeView.widgetComponent.dataSource.getByUid(n),o=t.filemanager.dataSource.get(a.id);t.filemanager._prompt({type:"rename",defaultInput:o.name,target:e}).done((function(t){i.push({target:e,item:o}),o.set("name",t)}))}}),s=o.extend({init:function(e){o.fn.init.call(this,e)},exec:function(){var e,t=this,i=t.options.target,n=t.filemanager,a=n.getSelected(),o=t.filemanager._view.widgetComponent.dataItem(i);if(i&&i.is(".k-selected")&&a&&a.length)e=a;else if(i&&o)e=o;else if(i){var r=i.data("uid"),d=t.filemanager.treeView.widgetComponent.dataSource.getByUid(r),s=t.filemanager.dataSource.get(d.id);e=s}n._confirm({type:"delete",target:i}).done((function(){t.removeItems(e)}))},removeItems:function(e){this._itemsToRemove=Array.isArray(e)?e:[e],this._removeItem()},_removeItem:function(){var e=this,t=e.filemanager,i=t._commandStack,n=t.dataSource,a=!!e._itemsToRemove.length&&e._itemsToRemove.splice(0,1)[0];a&&(i.push({item:a}).then(e._removeItem.bind(e),e._removeItem.bind(e)),n.remove(a))}}),l=o.extend({init:function(e){o.fn.init.call(this,e)},exec:function(){for(var e=this,t=e.filemanager,i=t.dataSource,n=t._commandStack,a=e.options.items,o=i.get(e.options.target),r=o.children,d=0;d<a.length;d++){var s=i.get(a[d]).toJSON();s.fileManagerNewItem=!0,n.push({item:s,target:o}),r.add(s)}}}),c=o.extend({init:function(e){o.fn.init.call(this,e),this._itemsToRemove=[]},exec:function(){for(var e=this,i=e.filemanager,n=i._commandStack,a=i.dataSource,o=e.options.items,r=a.get(e.options.target),d=r.children,s=[],l=0;l<o.length;l++){var c=a.get(o[l]),u=c.toJSON();u.fileManagerNewItem=!0;var m=n.push({item:c,target:r}).then(e._delete.bind(e));s.push(m),d.add(u)}t.whenAll(s).always(e._removeItem.bind(e))},_delete:function(e){this._itemsToRemove.push(e.item)},_removeItem:function(){var e=this,t=e.filemanager,i=t._commandStack,n=t.dataSource,a=!!e._itemsToRemove.length&&e._itemsToRemove.splice(0,1)[0];a&&(i.push({item:a}).then(e._removeItem.bind(e),e._removeItem.bind(e)),n.remove(a))}}),u=o.extend({init:function(e){o.fn.init.call(this,e)},exec:function(){var e=this.options,t=this.filemanager,n=t.defaultSortOption;i(n,{dir:e.dir,field:e.field}),t._view.widgetComponent.dataSource.sort([t.folderSortOption,n])}}),m=o.extend({init:function(e){o.fn.init.call(this,e)},exec:function(){var e=this.options,t=this.filemanager,i={field:e.field,operator:e.operator,value:e.value||""};t._view.widgetComponent.dataSource.filter(i)}}),p=o.extend({init:function(e){o.fn.init.call(this,e)},exec:function(){var e=this.options,t=this.filemanager;t.view(e.value),t.resize(!0)}}),g=o.extend({init:function(e){o.fn.init.call(this,e)},exec:function(){var e=this,i=e.filemanager[e.options.type];i?i.open():window.console.warn(t.format("The {0} dialog is not available!",e.options.type))}}),f=o.extend({init:function(e){o.fn.init.call(this,e)},exec:function(){var e=this,t=e.filemanager,i=t[e.options.type],n=e.getResizable();i&&(i.toggle(),n&&t.wrapper.find(n.options.handle).toggle())},getResizable:function(){var e=this.filemanager,t=this.options.type;if(e._resizeDraggable)return e._resizeDraggable[t]}}),h=a.extend({init:function(){this._stack={},this._keys=[]},push:function(e){var i=this,a=t.guid();return i._keys.push(a),i._stack[a]={guid:a,data:e,deferred:n()},i._stack[a].deferred},next:function(){var e=this.keys().splice(0,1);return this._stack[e]},resolve:function(e){delete this._stack[e.guid],e.deferred.resolve(e.data)},reject:function(e){delete this._stack[e.guid],e.deferred.reject(e.data)},keys:function(){return this._keys},empty:function(){return 0===this.keys().length}});i(t.ui,{filemanager:{FileManagerCommand:o,CommandStack:h,commands:{CreateFolderCommand:r,RenameCommand:d,DeleteCommand:s,MoveCommand:c,CopyCommand:l,SortCommand:u,SearchCommand:m,ChangeViewCommand:p,OpenDialogCommand:g,TogglePaneCommand:f}}})}(window.kendo.jQuery),function(e){var t=window.kendo,i=t.ui,n=t.Observable,a=e.extend,o=t.htmlEncode,r=t.keys,d="select",s="change",l="open",c="keydown",u="keydownAction",m=".kendoFileManagerViewComponent",p=[],g=null,f=n.extend({init:function(e,t,i){var a=this;if(a.element=t,a.options=i,!e)throw new Error("The widget for the ViewComponent is not available! Please add the corresponding scripts!");a.widgetComponent=new e(t,i),n.fn.init.call(a)},_bindEvents:function(){this.widgetComponent.bind("dataBinding",this._binding.bind(this)),this.widgetComponent.bind("dataBound",this._bound.bind(this))},_binding:function(e){this.trigger("dataBinding",e)&&e.preventDefault()},_bound:function(){this.trigger("dataBound")},_setDSOptions:function(e,t){!e.dataSource&&t&&(e.dataSource=t)},_initDragAndDrop:function(e,t){var i=this;t=t||i.options.dropFilter,e=e||i.element,i.draggable=e.kendoDraggable({filter:t,hint:i._hint.bind(i),cursorOffset:{top:-10,left:-50},holdToDrag:!0,ignore:"input, .k-focusable",hold:i._hold.bind(i)}).data("kendoDraggable"),i.draggable.userEvents.minHold=150,i.droptarget=e.kendoDropTargetArea({filter:t,drop:i._onDrop.bind(i),dragenter:function(e){e.dropTarget.addClass("k-filemanager-drop-target")},dragleave:function(e){e.dropTarget.removeClass("k-filemanager-drop-target")}}).data("kendoDraggable")},_hold:function(e){var t=this,i=e.currentTarget;i.is(".k-selected")||(t.widgetComponent.selectable&&t.widgetComponent.selectable.clear(),t.widgetComponent.select(i)),t.widgetComponent.selectable&&t.widgetComponent.selectable.userEvents.cancel()},_hint:function(e){var i=this,n=i.widgetComponent.dataItem(e),a=i.widgetComponent.select();return g=i.widgetComponent,p=a,a.length>1?`<div class='k-filemanager-drag-hint'>${t.ui.icon("file")} <span>${a.length} ${i.options.messages.items}</span></div>`:`<div class='k-filemanager-drag-hint'>${t.ui.icon(n.isDirectory?"folder":"file")} <span>${n.name}</span></div>`},_onDrop:function(e){var t=this.widgetComponent.dataItem(e.dropTarget),i=t.id,n=[];if(t.isDirectory){for(var a=0;a<p.length;a++){var o=g.dataItem(p[a]).id;n.push(o)}this.trigger("drop",{target:i,items:n})}},getSelected:function(){throw new Error("Not Implemented!")},refresh:function(e){this.widgetComponent.setDataSource(e)},destroy:function(){t.destroy(this.element)}});a(t.ui.filemanager,{ViewComponent:f,ViewComponents:{},registerViewComponent:function(e,t){i.filemanager.ViewComponents[e]=t},getViewComponent:function(e){return i.filemanager.ViewComponents[e]||null}});var h=f.extend({init:function(e,t,n){var o=this,r=n.dataSource,d=n.messages;t=a({},o.defaultOptions,t,{messages:d,ariaLabel:n.ariaLabel}),o._setDSOptions(t,r),t.kendoKeydown=t.kendoKeydown||o._kendoKeydown.bind(o),f.fn.init.call(this,i.ListView,e,t),o.listView=o.widgetComponent,o._bindEvents(),!1===n.draggable||r.isLocalBinding||o._initDragAndDrop()},defaultOptions:{layout:"flex",flex:{direction:"row",wrap:"wrap"},selectable:t.support.mobileOS?"row":"multiple",template:({name:e,extension:i,isDirectory:n})=>`<div class='k-listview-item' title='${o(e)}${o(i??"")}'><div class='k-file-preview'>${t.ui.icon({icon:n?"folder":t.getFileGroup(i,!0),iconClass:"k-file-icon",size:"xxxlarge"})}</div><div class='k-file-name file-name'>${o(e)}${o(i??"")}</div></div>`,editTemplate:({extension:e,isDirectory:i})=>`<div class='k-listview-item'><div class='k-file-preview'>${t.ui.icon({icon:i?"folder":t.getFileGroup(e,!0),iconClass:"k-file-icon",size:"xxxlarge"})}</div><div class='k-file-name'><span class='k-textbox k-input k-input-md k-rounded-md k-input-solid'><input type='text' class='k-input-inner' data-bind='value:name' name='name' required='required' /><span></div></div>`,dropFilter:".k-listview-item",navigatable:!0},_bindEvents:function(){var e=this,t=e.listView;t.bind(s,e._select.bind(e)),t.element.on("dblclick"+m,e._dblClick.bind(e)),t.element.on("mousedown"+m,".k-listview-item:not(.k-edit-item)",e._mousedown.bind(e)),t.element.on(c+m,".k-edit-item",e._keydown.bind(e)),t.element.on(c+m,e._keydownAction.bind(e)),t.bind("edit",(function(t){var i=t.sender;t.item.find("input").on("blur",(function(){var t=i._modelFromElement(i.editable.element).dirty;i._closeEditable(),t||e.trigger("cancel")}))})),t.bind("cancel",(function(){e.trigger("cancel")})),f.fn._bindEvents.call(this)},_select:function(){var e=this.getSelected();this.trigger(d,{entries:e})},_keydown:function(e){e.keyCode===t.keys.ESC&&(this.listView._closeEditable(),this.trigger("cancel"))},_keydownAction:function(t){var i=e(t.target).find(".k-focus");i.length&&!i.is(".k-edit-item")&&this.trigger(u,{target:i,keyCode:t.keyCode})},_mousedown:function(t){var i=e(t.target).closest(".k-listview-item");3!==t.which||i.is(".k-selected")||(this.listView.selectable.clear(),this.listView.select(i))},_kendoKeydown:function(e){e.keyCode!==r.ENTER||e.preventKendoKeydown||this._handleEnterKey(e)},_handleEnterKey:function(t){var i=this,n=e(t.target),a=i.listView.current();i.widgetComponent.editable&&n.is("input")?n.trigger("blur"):i.widgetComponent.editable||i._triggerOpen(a),t.preventKendoKeydown=!0},_dblClick:function(t){var i=e(t.target).closest(".k-listview-item");this._triggerOpen(i)},_triggerOpen:function(e){if(!e.is(".k-edit-item")){var t=this.listView.dataItem(e);t&&this.trigger(l,{entry:t})}},addFolder:function(){this.listView.add()},edit:function(e){var t=this.listView.select();this.listView.edit(e||t)},getSelected:function(){for(var e=this.listView.select(),t=[],i=0;i<e.length;i++){var n=this.listView.dataItem(e[i]);n&&t.push(n)}return t},destroy:function(){this.listView.element.off(m),f.fn.destroy.call(this)}});i.filemanager.registerViewComponent("list",h);var v=f.extend({init:function(e,t,n){var o=this,r=n.messages;t=a({},o.defaultOptions,t,{messages:r}),f.fn.init.call(this,i.TreeView,e,t),o.treeView=o.widgetComponent,o._bindEvents(),!1===n.draggable||n.isLocalBinding||o._initDragAndDrop()},defaultOptions:{dataTextField:"name",dropFilter:".k-treeview-item"},_refreshDataSource:function(i){var n=this,o=n.treeView,r=i.action,d=i.node,s=null,l=o.element,c=l.attr("aria-activedescendant"),u=i.items.filter((function(e){return e.isDirectory})).map((function(e){return a({},e.toJSON(),{id:e.id||t.guid(),hasChildren:e.hasChildren,items:[]})}));if(d&&(s=o.findByUid(o.dataSource.get(d.id).uid),d&&u.length&&o._progress(s,!1)),u.length){if("itemloaded"==r||s&&"sync"===r)s.find(".k-treeview-item").each((function(e,t){o.remove(t)})),o.append(u,s),n._shouldFocus&&(o.current(s),o.focus());else if("remove"==r)this._remove(u[0].id);else if("itemchange"==r){var m=o.dataSource.get(u[0].id);m?m.set(i.field,u[0][i.field]):o.append(u[0],s)}else o.dataSource.data().length?("sync"===r||undefined===r&&!s)&&(o.items().each((function(e,t){o.remove(t)})),o.append(u),n._shouldFocus&&(o.current(o._nextVisible(e())),o.focus())):o.append(u);c&&0===l.find("#"+c).length&&l.removeAttr("aria-activedescendant")}},_remove:function(e){var t,i=this.treeView,n=i.dataSource.get(e);n&&(t=i.findByUid(n.uid),i.remove(t))},_bindEvents:function(){var e=this;e.treeView.bind(d,e._navigate.bind(e)),e.treeView.bind("expand",e._expand.bind(e)),e.treeView.element.on(c,e._keydownAction.bind(e))},_keydownAction:function(t){var i=e(t.target).find(".k-focus").closest(".k-treeview-item");this.trigger(u,{target:i,keyCode:t.keyCode})},_expand:function(e){var t=this.treeView.dataItem(e.node);e.preventDefault(),this.trigger("load",{entryId:t.id})},_navigate:function(e){var t=e.node,i=this.treeView.dataItem(t),n=i.id;e.preventDefault(),this.trigger("navigate",{path:n,entry:i.toJSON()})},_hold:e.noop,getSelected:function(){var e=this.treeView.element.find(".k-selected").closest(".k-treeview-item");return this.treeView.dataItem(e)},refresh:function(e){var t=this.treeView,i=t.dataSource.get(e),n=i&&t.findByUid(i.uid);i&&n&&(t.element.find(".k-selected").removeClass("k-selected"),n.find("> div .k-treeview-leaf").removeClass("k-hover").addClass("k-selected"))},reload:function(){this.treeView.dataSource.read()}});if(i.filemanager.registerViewComponent("tree",v),t.ui.Grid){var w=f.extend({init:function(e,t,n){var o=this,r=n.dataSource,d=n.messages;t=a({},o.defaultOptions,t,{messages:d}),o._setDSOptions(t,r),o._setupColumns(t,d),t.kendoKeydown=t.kendoKeydown||o._kendoKeydown.bind(o),f.fn.init.call(this,i.Grid,e,t),o.grid=o.widgetComponent,o._bindEvents(),!1===n.draggable||r.isLocalBinding||o._initDragAndDrop(),n.ariaLabel&&o.element.find("[role=grid]").attr("aria-label",n.ariaLabel)},defaultOptions:{selectable:t.support.mobileOS?"row":"multiple",editable:{mode:"inline",confirmation:!1},sortable:!0,dropFilter:"tr:not(.k-grid-edit-row)",navigatable:!0},_setupColumns:function(e,i){e.columns||(e.columns=[{field:"name",title:i.nameField||"Name",template:function(e){let i=e.isDirectory?"folder":t.getFileGroup(e.extension,!0),n=t.htmlEncode(e.name+(e.extension??""));return"<div class='file-group-icon'>"+t.ui.icon(i)+"</div><div class='file-name'>"+n+"<div>"}},{field:"created",title:i.dateCreatedField,format:"{0:G}"},{field:"size",title:i.sizeField,template:function(e){return e.size>0?t.getFileSizeMessage(e.size):""}}])},_bindEvents:function(){var t=this,i=t.grid;i.bind(s,t._select.bind(t)),i.table.on("dblclick"+m,t._dblClick.bind(t)),i.table.on("mousedown"+m,"tr:not(.k-grid-edit-row)",t._mousedown.bind(t)),i.table.on(c+m,".k-grid-edit-row",t._keydown.bind(t)),i.table.on(c+m,t._keydownAction.bind(t)),i.bind("edit",(function(){t._toggleFocusable(!0)})),i.bind("cancel",(function(){t.trigger("cancel")})),i.saveRow=e.noop,f.fn._bindEvents.call(this)},_kendoKeydown:function(e){var t=this.grid.current(),i=t?t.closest("tr[data-uid]"):null;i&&e.keyCode===r.ENTER&&!e.preventKendoKeydown&&(this._triggerOpen(i),e.preventKendoKeydown=!0),e.keyCode===r.F2&&(e.preventKendoKeydown=!0)},_keydownAction:function(t){var i=e(t.target).find(".k-focus").closest("tr");i.length&&!i.is(".k-grid-edit-row")&&this.trigger(u,{target:i,keyCode:t.keyCode})},_keydown:function(i){var n=this,a=n.grid;e(i.target).closest(".k-grid-edit-row").length&&(i.keyCode===t.keys.ENTER&&(setTimeout((function(){(n.grid._editContainer||e()).find("input").trigger("blur"),n._closeEditable()})),n._tryCancel()),i.keyCode===t.keys.ESC&&(a.cancelChanges(),n.trigger("cancel")))},_mousedown:function(t){var i=this,n=e(t.target).closest("tr[data-uid]");1===t.which&&i.grid.editable&&(setTimeout((function(){i._closeEditable()})),i._tryCancel()),3!==t.which||n.is(".k-selected")||(i.grid.selectable.clear(),i.grid.select(n))},_tryCancel:function(){var e=this,t=e.grid;t.editable&&(t._editContainer.find("input").val()||t.cancelChanges()),setTimeout((function(){e._toggleFocusable(!1)}))},_toggleFocusable:function(e){this.grid.table.find("tr,td").children().addBack().toggleClass("k-focusable",e)},_closeEditable:function(){var e,t=this;t.grid.editable&&!t.grid.editable.options.model.dirty&&(e=t.grid._editContainer,t.grid._destroyEditable(),t.grid._displayRow(e),t.trigger("cancel"))},_select:function(){var e=this.getSelected();this.trigger(d,{entries:e})},_dblClick:function(t){var i=e(t.target).closest("tr[data-uid]");this._triggerOpen(i)},_triggerOpen:function(e){if(!e.is(".k-grid-edit-row")){var t=this.grid.dataItem(e);t&&this.trigger(l,{entry:t})}},getSelected:function(){for(var e=this.grid.select(),t=[],i=0;i<e.length;i++)t.push(this.grid.dataItem(e[i]));return t},addFolder:function(){this.grid.addRow()},edit:function(e){var t=this.grid.select();this.grid.editRow(e||t)},destroy:function(){this.grid.table.off(m),this.grid.element.off(m),f.fn.destroy.call(this)}});i.filemanager.registerViewComponent("grid",w)}}(window.kendo.jQuery),function(e){var t=window.kendo,i=e.extend,n=t.data,a=n.Node,o=n.HierarchicalDataSource,r=n.DataSource;i(!0,t.data,{schemas:{filemanager:{data:function(e){return e.items||e||[]},model:{id:"path",hasChildren:"hasDirectories",fields:{name:{editable:!0,type:"string",defaultValue:"New Folder"},size:{editable:!1,type:"number"},path:{editable:!1,type:"string"},extension:{editable:!1,type:"string"},isDirectory:{editable:!1,defaultValue:!0,type:"boolean"},hasDirectories:{editable:!1,defaultValue:!1,type:"boolean"},created:{type:"date",editable:!1},createdUtc:{type:"date",editable:!1},modified:{type:"date",editable:!1},modifiedUtc:{type:"date",editable:!1}}}}}});var d=a.define({init:function(e){var i=this,n=this.isDirectory;if(a.fn.init.call(this,e),"string"==typeof n&&(n=t.getter(n)),t.isFunction(n)){var o=n.call(i,i);o&&0===o.length?i.isDirectory=!1:i.isDirectory=!!o}i.isDirectory&&i._initChildren()},_initChildren:function(){var e,i,n,a=this;a.children instanceof t.data.FileManagerDataSource||(i=(e=a.children=new t.data.FileManagerDataSource(a._childrenOptions)).transport,n=i.parameterMap,i.parameterMap=function(e,t){return"read"!==t&&"create"!==t||(e.target=a.id),n&&(e=n.call(a,e,t)),e},e.parent=function(){return a},e.bind("change",(function(e){e.node=e.node||a,a.trigger("change",e)})),e.bind("error",(function(e){var t=a.parent();t&&(e.node=e.node||a,t.trigger("error",e))})),a._updateChildrenField())},isNew:function(){return this.fileManagerNewItem?(delete this.fileManagerNewItem,!0):this.id===this._defaultId}}),s=o.extend({init:function(i){var n=d.define({children:i});i.filter&&!i.serverFiltering&&(this._hierarchicalFilter=i.filter,i.filter=null),r.fn.init.call(this,e.extend(!0,{},{schema:{modelBase:n,model:n}},i)),this.isLocalBinding=this.transport instanceof t.data.LocalTransport,this._attachBubbleHandlers()},insert:function(e,t){var i=this.parent();return i&&i._initChildren&&(t&&t.isDirectory&&(i.hasDirectories=!0),i.hasChildren=!0,i._initChildren()),r.fn.insert.call(this,e,t)},remove:function(e){var t,i=e.parentNode(),n=this;return i&&i._initChildren&&(n=i.children),this._cleanDestroyed(e),t=r.fn.remove.call(n,e),i&&n.data()&&!n.data().length?i.hasChildren=!1:i&&!this._hasDirectories(i)&&(i.hasDirectories=!1),t},_cleanDestroyed:function(e){var t=this;e.parentNode&&e.parentNode()?((t=(e=e.parentNode()).children)._destroyed=[],this._cleanDestroyed(e)):t._destroyed=[]},_hasDirectories:function(e){return!!e.children.data()&&!!e.children.data().filter((function(e){return e.isDirectory})).length}});s.create=function(e){var t=(e=e&&e.push?{data:e}:e)||{},i=t.data;return i&&i._dataSource?i._dataSource:(t.data=i,t instanceof s?t:new s(t))},t.observableFileManagerData=function(e){var i=s.create({data:e,schema:t.data.schemas.filemanager});return i.fetch(),i._data._dataSource=i,i._data},i(t.data,{FileManagerDataSource:s,FileEntry:d})}(window.kendo.jQuery),function(e){var t=window.kendo,i=e.extend,n=t.template,a=t.ui.ContextMenu,o="action",r=a.extend({init:function(e,t){var i=this;a.fn.init.call(i,e,t),i._overrideTemplates(),i._initDefaultItems(),i._extendItems(),i.bind("select",i._onSelect.bind(i)),i.bind("open",i._onOpen.bind(i))},_overrideTemplates:function(){this.templates.sprite=n((({spriteCssClass:e,icon:i})=>e?`<span class="${e}"></span>`:i?t.ui.icon(i):""))},_initDefaultItems:function(){var e=this,t=e.options.messages;e.options.isLocalBinding?e.defaultItems={}:e.defaultItems={rename:{text:t.rename,icon:"pencil",command:"RenameCommand"},delete:{text:t.delete,icon:"trash",command:"DeleteCommand"}}},events:a.fn.events.concat([o]),_extendItems:function(){var t,i=this,n=i.options.items;if(n&&n.length)for(var a=0;a<n.length;a++)t=n[a],e.isPlainObject(t)&&1===Object.keys(t).length&&t.name&&(t=t.name),e.isPlainObject(t)?(i._extendItem(t),i.append(t)):i.defaultItems[t]&&(t=i.defaultItems[t],i._extendItem(t),i.append(t));else for(var o in i.defaultItems)t=i.defaultItems[o],i._extendItem(t),i.append(t)},_extendItem:function(e){var t=this.options.messages;i(e,{text:t[e.text],spriteCssClass:e.spriteCssClass||"",attr:{"data-command":e.command}})},_onSelect:function(t){var i=e(t.item).data("command"),n=e(t.target);i&&this.action({command:i,options:{target:n}})},_onOpen:function(t){!t.sender.options.items&&e.isEmptyObject(this.defaultItems)&&t.preventDefault()},action:function(e){this.trigger(o,e)}});i(t.ui.filemanager,{ContextMenu:r})}(window.kendo.jQuery);var t,i,n,a,o,r,d,s,l,c,u,m,p,g,f,h,v,w,b,_,k,C,y,S,x,D;t=window.kendo.jQuery,i=kendo.ui,n=t.extend,a=kendo.htmlEncode,o=t.isPlainObject,r=Array.isArray,d=i.DataBoundWidget,s=kendo.template,l=kendo._outerHeight,c="navigate",u="select",m="open",p="error",g="change",f="close",h="dataBinding",v="dataBound",w="drop",b="execute",_="command",k="keydownAction",C="tree",y=".",S={wrapper:"k-widget k-filemanager",header:"k-filemanager-header",navigation:"k-filemanager-navigation",contentContainer:"k-filemanager-content-container",content:"k-filemanager-content",preview:"k-filemanager-preview",toolbar:"k-filemanager-toolbar",treeview:"k-filemanager-treeview",breadcrumb:"k-filemanager-breadcrumb",view:"k-filemanager-view",grid:"k-filemanager-grid",list:"k-filemanager-listview",upload:"k-filemanager-upload",uploadDialog:"k-filemanager-upload-dialog",splitBar:"k-splitbar",splitBarHorizontal:"k-splitbar-horizontal k-splitbar-draggable-horizontal",splitBarHover:"k-splitbar-horizontal-hover",splitBarIcon:"k-icon k-resize-handle",splitBarNavigation:"k-filemanager-splitbar-navigation",splitBarPreview:"k-filemanager-splitbar-preview",resizable:"k-filemanager-resizable"},x={filePreview:"k-file-preview",fileInfo:"k-file-info",fileName:"k-file-name",fileMeta:"k-file-meta",metaLabel:"k-file-meta-label",metaValue:"k-file-meta-value",extension:"k-file-type",size:"k-file-size",created:"k-file-created",modified:"k-file-modified"},D=d.extend({init:function(e,t){var n=this;d.fn.init.call(n,e,t),n.options=kendo.deepExtend({},n.options,t),n.defaultSortOption={field:"name",dir:"asc"},n.folderSortOption={field:"isDirectory",dir:"desc"},n._commandStack=new i.filemanager.CommandStack,n._dataSource(),n._wrapper(),n._renderHeader(),n._renderContentContainer(),n._initContextMenu(),n._renderNavigation(),n._renderContent(),n._renderPreview(),n._initUploadDialog(),n._resizable(),n._attachKeyDown(),n.resize(),kendo.notify(n,kendo.ui)},options:{name:"FileManager",height:500,resizable:!0,initialView:"list",toolbar:{resizable:!0},contextMenu:{},upload:{},uploadUrl:"",views:{},breadcrumb:{},draggable:!0,dialogs:{upload:{width:530},moveConfirm:{width:350,closable:!0},deleteConfirm:{width:360,closable:!0},renamePrompt:{width:350,closable:!0}},previewPane:{metaFields:["extension","size","created","modified"],noFileTemplate:({styles:e,messages:t})=>`<div class="${a(e.fileInfo)}"><div class="${a(e.filePreview)}"><span class="k-file-icon k-icon k-svg-icon k-i-none" aria-hidden="true"></span></div><span class="${a(e.fileName)}" k-no-file-selected>${a(t.noFileSelected)}</span></div>`,singleFileTemplate:({styles:e,selection:t,metaFields:i,messages:n})=>{let o="";if(o+=`<div class="${a(e.fileInfo)}"><div class="${a(e.filePreview)}">`+kendo.ui.icon({icon:t[0].isDirectory?"folder":a(kendo.getFileGroup(t[0].extension,!0)),iconClass:"k-file-icon",size:"xxxlarge"})+"</div>"+`<span class="${a(e.fileName)}">${a(t[0].name)}</span>`,i){o+=`<dl class="${a(e.fileMeta)}">`;for(var r=0;r<i.length;r+=1){var d=i[r];o+=`<dt class="${a(e.metaLabel)}">${a(n[d])}: </dt><dd class="${a(e.metaValue)} ${a(e[d])}">`,"size"==d?o+=` ${a(kendo.getFileSizeMessage(t[0][d]))}`:t[0][d]instanceof Date?o+=` ${a(kendo.toString(t[0][d],"G"))}`:o+="extension"==d?` ${a(t[0].isDirectory?"folder":kendo.getFileGroup(t[0].extension))}`:` ${a(t[0][d])}`,o+='</dd><dd class="k-line-break"></dd>'}o+="</dl>"}return o+="</div>",o},multipleFilesTemplate:({styles:e,selection:t,messages:i})=>`<div class="${a(e.fileInfo)}"><div class="${a(e.filePreview)}">`+kendo.ui.icon({icon:"file",iconClass:"k-file-icon",size:"xxxlarge"})+"</div>"+`<span class="${a(e.fileName)}">`+`${a(t.length)} `+`${a(i.items)}</span></div>`},messages:{toolbar:{createFolder:"New Folder",upload:"Upload",sortDirection:"Sort Direction",sortDirectionAsc:"Sort Direction Ascending",sortDirectionDesc:"Sort Direction Descending",sortField:"Sort By",nameField:"Name",sizeField:"File Size",typeField:"Type",dateModifiedField:"Date Modified",dateCreatedField:"Date Created",listView:"List View",gridView:"Grid View",search:"Search",details:"View Details",detailsChecked:"On",detailsUnchecked:"Off",delete:"Delete",rename:"Rename"},views:{nameField:"Name",sizeField:"File Size",typeField:"Type",dateModifiedField:"Date Modified",dateCreatedField:"Date Created",items:"items",listLabel:"FileManager ListView",gridLabel:"FileManager Grid",treeLabel:"FileManager TreeView"},dialogs:{upload:{title:"Upload Files",clear:"Clear List",done:"Done"},moveConfirm:{title:"Confirm",content:"<p class='k-text-center'>Do you want to move or copy?</p>",okText:"Copy",cancel:"Move",close:"close"},deleteConfirm:{title:"Confirm",content:"<p class='k-text-center'>Are you sure you want to delete the selected file(s)?</br>You cannot undo this action.</p>",okText:"Delete",cancel:"Cancel",close:"close"},renamePrompt:{title:"Prompt",content:"<p class='k-text-center'>Enter new name for the file.</p>",okText:"Rename",cancel:"Cancel",close:"close"}},previewPane:{noFileSelected:"No File Selected",extension:"Type",size:"Size",created:"Date Created",createdUtc:"Date Created UTC",modified:"Date Modified",modifiedUtc:"Date Modified UTC",items:"items"}}},events:[c,u,m,h,v,p,w,b,_],defaultTools:{createFolder:{type:"button",name:"createFolder",command:"CreateFolderCommand",rules:{remote:!0}},upload:{type:"button",name:"upload",command:"OpenDialogCommand",options:'{ "type": "uploadDialog" }',rules:{remote:!0}},sortDirection:{type:"buttonGroup",buttons:[{name:"sortDirectionAsc",showText:"overflow",icon:"sort-asc-small",togglable:!0,group:"sortDirection",command:"SortCommand",options:'{ "dir": "asc" }',selected:!0},{name:"sortDirectionDesc",showText:"overflow",icon:"sort-desc-small",togglable:!0,group:"sortDirection",command:"SortCommand",options:'{ "dir": "desc" }'}]},sortField:{type:"splitButton",name:"sortField",command:"SortCommand",menuButtons:[{name:"nameField",options:'{"field": "name"}',command:"SortCommand"},{name:"typeField",options:'{"field": "extension"}',command:"SortCommand"},{name:"sizeField",options:'{"field": "size"}',command:"SortCommand"},{name:"dateCreatedField",options:'{"field": "created"}',command:"SortCommand"},{name:"dateModifiedField",options:'{"field": "modified"}',command:"SortCommand"}]},changeView:{type:"buttonGroup",buttons:[{name:"gridView",showText:"overflow",icon:"grid-layout",togglable:!0,group:"changeView",command:"ChangeViewCommand",options:"grid"},{name:"listView",showText:"overflow",icon:"grid",togglable:!0,group:"changeView",command:"ChangeViewCommand",options:"list"}]},spacer:{type:"spacer"},details:{type:"component",name:"details",items:[{template:function(e){return"<label for='details-toggle'>"+a(e.componentOptions.messages.text)+"</label>"},overflow:"never",componentOptions:{messages:{text:"details"}}},{name:"details",command:"TogglePaneCommand",options:'{ "type": "preview" }',overflow:"never",element:"<input id='details-toggle' class='k-filemanager-details-toggle' />",component:"Switch",componentOptions:{messages:{checked:"detailsChecked",unchecked:"detailsUnchecked"},commandOn:"change"}}]},search:{type:"component",name:"search",command:"SearchCommand",options:'{ "field": "name", "operator": "startswith" }',overflow:"never",component:"TextBox",componentOptions:{placeholder:"search",icon:"search",commandOn:"input"}}},_attachKeyDown:function(){var e=this;e.wrapper.on("keydown.kendoFileManager",(t=>{t.keyCode===kendo.keys.F10&&(t.preventDefault(),e.toolbar.element.find("[tabindex=0]").first().trigger("focus"))}))},_dataSource:function(){var e,t=this,i=t.options.dataSource||{},a=t.folderSortOption,d=t.defaultSortOption;i instanceof kendo.data.FileManagerDataSource?e=i:(e=r(i)?{data:i,autoSync:!1,sort:[a,d]}:n(!0,i,{autoSync:!1,sort:[a,d]}),i&&o(i.schema)?e.schema=i.schema:o(kendo.data.schemas.filemanager)&&(e.schema=kendo.data.schemas.filemanager)),t.dataSource&&t._errorHandler?(t.dataSource.unbind(p,t._errorHandler),t.dataSource.unbind(g,t._changeHandler)):(t._errorHandler=t._error.bind(t),t._changeHandler=t._change.bind(t)),t.dataSource=kendo.data.FileManagerDataSource.create(e).bind(p,t._errorHandler).bind(g,t._changeHandler)},_error:function(e){this.trigger(p,e)||window.console.warn("Error! The requested URL returned "+e.xhr.status+" - "+e.xhr.statusText)},_wrapper:function(){var e=this,t=e.options,i=t.width,n=t.height;e.wrapper=e.element.addClass(S.wrapper),i&&e.wrapper.width(i),n&&e.wrapper.height(n),e._resizeHandler=kendo.onResize((function(){e.resize(!0)}))},_renderHeader:function(){var e=this,i=e.options;i.toolbar&&(e.header=t("<div />").addClass(S.header)),e.wrapper.append(e.header),i.toolbar&&(e._initToolbar(),e.toolbar._tabIndex())},_renderContentContainer:function(){var e=this,i=t("<div />").addClass(S.contentContainer);e.contentContainer=i,e.wrapper.append(e.contentContainer)},_initContextMenu:function(){var e=this,t=e.options,a=n({},t.contextMenu,{filemanager:e,messages:t.messages.toolbar,target:e.contentContainer,filter:"[data-uid]",action:e.executeCommand.bind(e),isLocalBinding:e.dataSource.isLocalBinding});!1!==t.contextMenu&&(e.contextMenu=new i.filemanager.ContextMenu("<ul></ul>",a),e.contextMenu.bind(m,e._cacheFocus.bind(e)))},_renderNavigation:function(){var e=this;e.navigation=t("<div />").addClass(S.navigation),e.navigation.append(e._initTreeView().element),e.contentContainer.append(e.navigation)},_renderContent:function(){var e=this,i=e.options,n=e.toolbar;e.content=t("<div />").addClass(S.content),i.breadcrumb&&e.content.append(e._initBreadcrumb().element),e.content.append(e._initView()),n&&e._isToolEnabled(e.defaultTools.upload.name)||e.content.append(e._initUpload().wrapper.hide()),e.contentContainer.append(e.content)},_renderPreview:function(){var e=this;e.options.previewPane&&(e.preview=t("<div tabindex='0' />").addClass(S.preview),e.previewContainer=t("<div />").addClass(S.previewContainer),e.preview.append(e.previewContainer),e._setPreviewPaneContent(),e.contentContainer.append(e.preview.hide()))},_setPreviewPaneContent:function(){var e,t=this,i=t.options,n=i.messages.previewPane,a=i.previewPane,o=t.getSelected();if(!o)return e=s(a.noFileTemplate)({styles:x,messages:n}),void t.previewContainer.html(e);e=1===o.length?a.singleFileTemplate:a.multipleFilesTemplate,e=s(e)({styles:x,messages:n,selection:o,metaFields:a.metaFields}),t.previewContainer.html(e)},_initToolbar:function(){var e=this,i=e.options,a=t("<div />").addClass(S.toolbar),o=n({},i.toolbar),r=o.items?o.items:Object.keys(e.defaultTools);return r=e._processTools(r),o.tools=r,o.defaultTools=e.defaultTools,o.parentMessages=e.options.messages.toolbar,e.header.append(a),e.toolbar=new kendo.ui.ToolBar(a,o),e.options.toolbar=e.toolbar.options,e.toolbar.bind("toggle",e._toolbarClick.bind(e)),e.toolbar.bind(f,e._toolbarClick.bind(e)),e.toolbar.bind("click",e._toolbarClick.bind(e)),e.toolbar.bind(g,e._toolbarClick.bind(e)),e.toolbar},_processTools:function(e){var t=this;return e.forEach((e=>{var i=e.rules||(t.defaultTools[e]?t.defaultTools[e].rules:null);i&&i.remote&&t.dataSource.isLocalBinding&&(e.rules?e.hidden=!0:t.defaultTools[e].hidden=!0),"changeView"===e.name?t.defaultTools[e.name].buttons.forEach(((i,n)=>{i.options===t.options.initialView&&(t.defaultTools[e.name].buttons[n].selected=!0)})):e.buttons&&"changeView"===e.buttons[0].group&&e.buttons.forEach(((i,n)=>{i.options===t.options.initialView&&(e.buttons[n].selected=!0)}))})),e},_toolbarClick:function(e){var i=t(e.target).data("command"),a=t(e.target).data("options");t(e.target).val()&&(a=n({},a,{value:t(e.target).val()})),i&&this.executeCommand({command:i,options:a})},_isToolEnabled:function(e){for(var t=this.options.toolbar.items||this.defaultTools,i=!1,n=0;n<t.length;n++)if(t[n].name==e){i=!0;break}return t[e]||i},_initTreeView:function(){var e=this,a=t("<div />").addClass(S.treeview),o=e.options.views[C],r=n(!0,{},{dataSource:e.options.dataSource,messages:e.options.messages.views,draggable:e.options.draggable,isLocalBinding:e.dataSource.isLocalBinding});return e.treeView=new i.filemanager.ViewComponents[C](a,o,r),e.treeView.bind(c,e._navigate.bind(e)).bind("load",e._load.bind(e)).bind(w,e._drop.bind(e)).bind(k,e._keydownAction.bind(e)),e.treeView},_drop:function(e){var t=this;!t.trigger(w,e)&&e.items.indexOf(e.target)<0&&t._confirm({type:"move",target:e.target}).done((function(){t.executeCommand({command:"CopyCommand",options:e})})).fail((function(){t.executeCommand({command:"MoveCommand",options:e})}))},_keydownAction:function(e){var t=e.keyCode,i=kendo.keys;t===i.DELETE&&this.executeCommand({command:"DeleteCommand",options:{target:e.target}}),t===i.F2&&this.executeCommand({command:"RenameCommand",options:{target:e.target}})},_confirm:function(e){var i=this,a=i.options.messages.dialogs[e.type+"Confirm"],o=t("<div></div>").kendoConfirm(n({},{title:a.title,content:a.content,messages:a},i.options.dialogs[e.type+"Confirm"])).data("kendoConfirm");return o.bind(m,i._cacheFocus.bind(i)),o.bind("hide",i._restoreFocus.bind(i,e.target)),o.open(),o.wrapper.removeClass("k-confirm"),o.result},_prompt:function(e){var i=this,a=this.options.messages.dialogs[e.type+"Prompt"],o=t("<div></div>").kendoPrompt(n({},{title:a.title,content:a.content,messages:a,value:e.defaultInput},this.options.dialogs[e.type+"Prompt"])).data("kendoPrompt");return o.bind(m,i._cacheFocus.bind(i)),o.bind(f,i._restoreFocus.bind(i,e.target)),o.open(),o.wrapper.removeClass("k-prompt"),o.result},_cacheFocus:function(){var e=this,i=t(document.activeElement),n=e.view(),a=e.treeView.widgetComponent;if(!e.contextMenu||!e.contextMenu.popup.visible()){if(e.treeView._shouldFocus=!1,a.current()&&a.current().find(".k-focus").length||i.hasClass(S.treeview))return e.treeView._shouldFocus=!0,void(n._focusElement=i);n._focusElement=i.hasClass(S[e._viewType])?i:null}},_restoreFocus:function(e){var t=this.view();e&&(t._focusElement?t._focusElement.trigger("focus"):e.closest&&e.closest(":kendoFocusable").length&&e.closest(":kendoFocusable").trigger("focus"))},_initView:function(){var e=this,i=t("<div />").addClass(S.view),n=e.options.initialView;return e.viewWrapper=i,e.viewWrapper.append(e.view(n)),i},_initBreadcrumb:function(){var e=this,a=e.options,o=t("<nav />").addClass(S.breadcrumb),r=n({},{items:[{type:"rootitem",text:""}],change:e._breadcrumbChange.bind(e)},a.breadcrumb);return e.breadcrumb=new i.Breadcrumb(o,r),e.breadcrumb},_breadcrumbChange:function(e){var t=e.sender.items().filter((function(t){return t.path===e.value.substring(1)})).shift();this._navigate({path:t?t.id:""})},_initUploadDialog:function(){var e,a=this,o=a.options,r=o.messages.dialogs.upload,d=t("<div />"),s=n({},{title:r.title,modal:!0,visible:!1,width:500,actions:[{text:()=>r.done,primary:!0},{text:()=>r.clear,action:a._clearUploadFilesList.bind(a)}],messages:r},o.dialogs.upload);if(a._shouldInitUpload())return e=a._initUpload(),a.uploadDialog=new i.Dialog(d,s),a.uploadDialog.wrapper.addClass(S.uploadDialog),a.uploadDialog.element.append(e.wrapper),a.uploadDialog.bind(m,a._toggleUploadDropZone.bind(a,"")),a.uploadDialog.bind(f,a._toggleUploadDropZone.bind(a,a.viewWrapper)),a.uploadDialog},_shouldInitUpload:function(){var e=this.options,t=!1;return(e.uploadUrl||e.upload.async&&e.upload.async.saveUrl)&&!1!==e.upload&&(t=!0),t},_initUpload:function(){var e=this,a=e.options,o=t("<input type='file' name='file'/>").addClass(S.upload),r=n(!0,{async:{autoUpload:!0,saveUrl:a.uploadUrl},dropZone:e.viewWrapper},a.upload);return e.upload=new i.Upload(o[0],r),e.upload.bind("upload",e._sendUploadPathParameter.bind(e)),e.upload.bind("success",e._success.bind(e)),e.upload},_sendUploadPathParameter:function(e){e.data=n(e.data,{path:this.path()})},_success:function(){this._view.widgetComponent.dataSource.read()},_clearUploadFilesList:function(){var e=this.upload;e&&e.clearAllFiles()},_toggleUploadDropZone:function(e){var t=this.upload;t&&t.setOptions({dropZone:e})},_binding:function(e){this.trigger(h,{source:"view",action:e.action,items:e.items,index:e.index})&&e.preventDefault()},_bound:function(){this.options.previewPane&&this._setPreviewPaneContent(),this.trigger(v)},_createResizableSplitBar:function(e){var i=t("<div />").addClass(S.splitBar).addClass(S.splitBarHorizontal).addClass(e),n=t("<span />").addClass(S.splitBarIcon);return i.append(n),i.hover((function(){t(this).toggleClass(S.splitBarHover)})),i},_initResizableNavigation:function(){var e,t,i=this,n=i.wrapper,a=i._createResizableSplitBar(S.splitBarNavigation),o=n.find(y+S.content),r=n.find(y+S.navigation);a.insertAfter(r),i._resizeDraggable.navigation=i.wrapper.find(a).end().kendoResizable({handle:y+S.splitBarNavigation,start:function(){e=o.width(),t=r.width()},resize:function(i){var a=i.x.initialDelta;kendo.support.isRtl(n)&&(a*=-1),t+a<-2||e-a<-2||r.width(t+a)}}).getKendoResizable()},_initResizablePreview:function(){var e,t,i=this,n=i.wrapper,a=i._createResizableSplitBar(S.splitBarPreview),o=n.find(y+S.content),r=n.find(y+S.preview);i.options.previewPane&&(a.insertBefore(r).hide(),i._resizeDraggable.preview=n.find(a).end().kendoResizable({handle:y+S.splitBarPreview,start:function(){e=o.width(),t=r.width()},resize:function(i){var a=i.x.initialDelta;kendo.support.isRtl(n)&&(a*=-1),t-a<-2||e+a<-2||r.width(t-a)}}).getKendoResizable())},_resizable:function(){var e=this,t=e.options;e._resizeDraggable={},t.resizable&&(e.wrapper.addClass(S.resizable),e._initResizableNavigation(),e._initResizablePreview())},view:function(e){var a=this,o=t("<div></div>"),r=a.options.views[e],d=n(!0,{},{dataSource:a._viewDataSource||a.dataSource,messages:a.options.messages.views,draggable:a.options.draggable,ariaLabel:a.options.messages.views[e+"Label"]});if(void 0===e)return a._view;if(!i.filemanager.ViewComponents[e])throw new Error(kendo.format("There is no {0} ViewComponent registered!",e));if(a._view&&a._view.destroy&&(a._view.destroy(),a.viewWrapper.empty()),a._viewType=e,a._view=new i.filemanager.ViewComponents[e](o,r,d),a._view.bind(u,a._select.bind(a)),a._view.bind(m,a._open.bind(a)),a._view.bind(h,a._binding.bind(a)),a._view.bind(v,a._bound.bind(a)),a._view.bind(w,a._drop.bind(a)),a._view.bind(k,a._keydownAction.bind(a)),a._view.bind("cancel",a._cancel.bind(a)),a._view.element.addClass(S[e]),a.viewWrapper.removeClass(Object.keys(i.filemanager.ViewComponents).map((function(e){return S.view+"-"+e})).join(" ")).addClass(S.view+"-"+e),a.toolbar){let t=a.toolbar.wrapper.find(`[data-options="${e}"]`);t&&a.toolbar.toggle(t,!0)}a.viewWrapper.append(a._view.element)},executeCommand:function(e){var t=e.command,a=n({filemanager:this},o(e.options)?e.options:{value:e.options}),r=new i.filemanager.commands[t](a);if(!this.trigger(b,e))return r.exec()},_navigate:function(e){var t=e.path;this.trigger(c,{path:t})||this.navigate(t)},_load:function(e){this.dataSource.get(e.entryId).load()},_select:function(e){this.options.previewPane&&this._setPreviewPaneContent(),this.trigger(u,{entries:e.entries})},_open:function(e){var t=e.entry;this.trigger(m,{entry:t}),t.isDirectory&&this._navigate({path:t.id})},_cancel:function(){var e=this._commandStack,t=e.next();e.reject(t),this.trigger(_,{status:"cancel",action:"itemchange",data:t.data})},_change:function(e){var t=this,i=t._commandStack,n=e.node?e.node.children:t.dataSource;if(!t.trigger(h,{source:"tree",action:e.action,items:e.items,index:e.index})){if(t.treeView._refreshDataSource(e),"remove"===e.action||"itemchange"===e.action||"add"===e.action)if(i.empty())n.sync();else{var a=i.next();n.sync().then((function(n){i.resolve(a),t.trigger(_,{status:"success",action:e.action,data:a.data,response:n})})).fail((function(n){i.reject(a),t.trigger(_,{status:"fail",action:e.action,data:a.data,response:n})}))}"remove"===e.action&&t._viewDataSource&&t._viewDataSource.parent()&&e.items[0]===t._viewDataSource.parent()&&t._navigateToParent(e.items[0]),"itemchange"==e.action&&t._viewDataSource&&t._viewDataSource.parent()&&t.path().indexOf(e.items[0].id)>=0&&t._navigateToParent(e.items[0]),"itemchange"===e.action&&e.items[0].loaded(!1)}},_navigateToParent:function(e){var t=e.parentNode(),i=t?t.id:"";this._navigate({path:i})},_buildBreadcrumbPath:function(e){for(var t=this.breadcrumb,i=[];e;)i.push({id:e.id,text:e.name,path:e.path}),e=e.parentNode&&e.parentNode();i.push({type:"rootItem",id:"",text:""}),t.items(i.reverse())},_adjustDimensions:function(){var e=this,t=e.wrapper,i=y+S.grid,n=y+S.list,a=y+S.contentContainer,o=t.height(),r=0,d=0;e.toolbar&&(r=l(e.toolbar.wrapper)),e.breadcrumb&&(d=l(e.breadcrumb.wrapper)),"auto"!==e.options.height&&(t.find([i].join(",")).height(o-(r+d+1)),t.find(n).parent().height(o-(r+d+1)),t.find(a).height(o-r))},_resize:function(){this._adjustDimensions(),kendo.resize(this.element.children())},setDataSource:function(e){var t=this;t.options.dataSource=e,t._dataSource(),t.toolbar&&(t.toolbar.destroy(),t.header.empty(),t._initToolbar(),t.toolbar._tabIndex()),t.treeView&&(t.treeView.destroy(),t.navigation.empty(),t.navigation.append(t._initTreeView().element)),t._view&&t.view(t._viewType||t.options.initialView),t._initContextMenu()},refresh:function(){(this._viewDataSource||this.dataSource).read()},getSize:function(){return kendo.dimensions(this.wrapper)},getSelected:function(){var e=this,t=e._view.getSelected(),i=e.treeView;if(t&&t.length)return t;var n=i.getSelected();return n?[e.dataSource.get(n.id)]:void 0},path:function(){return this._path||""},navigate:function(e){var i=this,n=i.dataSource,a=n.get(e.replace(/^\//,"")),o=i._view,r=i.treeView,d=i.breadcrumb,s=""===e||"/"===e;if(a||s){if(i._path=e,!i.trigger(h,{source:"navigation",action:"rebind",items:[a]})){if(d&&i._buildBreadcrumbPath(a),s)return n.sort([i.folderSortOption,i.defaultSortOption]),i._viewDataSource=n,o.refresh(i._viewDataSource),r.treeView.select(t()),void(i.options.previewPane&&i._setPreviewPaneContent());a.loaded&&!a.loaded()&&a.load(),o&&(i._viewDataSource=a.children,i._viewDataSource._sort=[i.folderSortOption,i.defaultSortOption],o.refresh(i._viewDataSource)),r&&r.refresh(a.id),i.options.previewPane&&i._setPreviewPaneContent()}}else window.console.warn("Error! Could not navigate to the folder at the requested path("+e+"). Make sure that the parent folder of the target folder has already been loaded.")},items:function(){return this.treeView.widgetComponent.items().add(this._view.widgetComponent.items())},destroy:function(){var e=this;d.fn.destroy.call(e),e.dataSource.unbind(p,e._errorHandler).unbind(g,e._changeHandler),e._resizeDraggable.navigation&&(e._resizeDraggable.navigation.destroy(),e._resizeDraggable.navigation=null),e._resizeDraggable.preview&&(e._resizeDraggable.preview.destroy(),e._resizeDraggable.preview=null),e.uploadDialog&&(e.uploadDialog.destroy(),e.uploadDialog=null),e.upload&&(e.upload.destroy(),e.upload=null),e.contextMenu&&(e.contextMenu.destroy(),e.contextMenu=null),kendo.unbindResize(e._resizeHandler),e.dataSource=null,e._viewDataSource=null,kendo.destroy(e.element)}}),i.plugin(D);var F=kendo;e.__meta__={id:"filemanager",name:"FileManager",category:"web",description:"The FileManager widget displays offers file management functionality.",depends:["core","data","listview","toolbar","breadcrumb","menu","treeview","upload","dialog","switch","resizable","selectable","editable","textbox","icons"],features:[{id:"filemanager-grid-view",name:"GridView",description:"Support for GridView",depends:["grid"]}]},e.default=F,Object.defineProperty(e,"__esModule",{value:!0})}));
//# sourceMappingURL=kendo.filemanager.min.js.map