{"version":3,"file":"kendo.propertygrid.min.js","names":["global","factory","exports","module","require","define","amd","globalThis","self","kendopropertygrid","js","this","$","undefined$1","kendo","window","TreeListContextMenu","ui","treelist","ContextMenu","extend","PropertyGridContextMenu","init","element","options","fn","call","defaultItems","separator","name","copy","text","icon","command","softRules","copyName","copyDeclaration","resize","rules","reset","expandItem","collapseItem","propertygrid","jQuery","Class","keys","Command","propertyGrid","CopyCommand","exec","that","target","closest","dataItem","selectedText","getSelection","getRangeAt","toString","navigator","clipboard","writeText","field","value","_objectFromNodes","tabDelimitedValue","JSON","stringify","description","filter","item","join","ResetCommand","dataSource","cancelChanges","trigger","type","model","container","_render","ResizeColumnCommand","_actionButtonsTemplate","apply","cancel","insertButtonIcon","cancelButtonIcon","html","renderButton","themeColor","dialog","form","tableColumnIndex","index","columnIndex","grouped","columnSelector","oldColumnWidth","table","find","outerWidth","dialogOptions","title","visible","resizable","minWidth","totalWidth","width","e","delta","wrapper","data","formData","columnsize","newColumnWidth","columns","children","eq","column","oldWidth","newWidth","close","preventDefault","destroy","component","colCount","length","widths","idx","push","each","col","adjustColWidths","appendTo","document","body","kendoWindow","_createForm","after","on","end","keyCode","ENTER","ESC","center","open","currentColumnWidth","kendoForm","validation","validateOnBlur","validaitonSummary","renderButtons","items","label","editor","editorOptions","min","ToggleItemCommand","expand","collapse","ToggleGroupLayout","removeClass","_refreshLayout","_updateDetails","ToggleDetails","visibleDetails","toggleClass","ExcelExport","saveAsExcel","PDFExport","saveAsPDF","PropertyGridCommand","commands","NS","kendoDom","dom","kendoDomElement","kendoHtmlElement","kendoTextElement","F10","Editable","TreeList","isArray","Array","isPlainObject","CHANGE","EXPAND","COLLAPSE","GROUP_EXPAND","GROUP_COLLAPSE","CARET_ALT_DOWN","GROUPING_ROW","TR","TD","defaultBodyContextMenu","defaultCommands","group","togglable","showText","commandName","attributes","overflow","details","sort","componentOptions","commandOn","dataTextField","dataValueField","class","search","prefixOptions","placeholder","spacer","excel","pdf","isNullorUndefined","isEditable","PropertyGridDataSource","TreeListDataSource","groupedItemsTree","currentChildren","_childrenMap","view","_defaultParentId","Query","toArray","filterGroupedItemsTree","expression","filterExpression","filters","logic","groups","filterItems","filtered","i","hasChildren","childNodes","filteredGroups","forEach","itm","DynamicInCellEditor","createEditable","fields","editable","clearContainer","change","off","empty","removeAttr","attr","PropertyGrid","_processOptions","_processedModel","_processModel","_createDataSource","_wrapper","_detailsBox","_groupable","notify","hasHeader","groupable","contextMenu","sortable","selectable","scrollable","showDetails","size","defaultTools","messages","defaultGroupName","events","defaultEditors","string","date","number","boolean","_groupContentTemplate","groupName","action","_detailsTemplate","_setEditable","editMode","toolbar","_extendColumnOptions","fieldColumn","valueColumn","_processSettings","obj","settings","flatData","_flatten","_setDefaults","Object","entries","map","x","serverGrouping","schema","id","parentId","expanded","appendNested","result","key","nestedKeys","nestedObject","collectionIdx","nestedKey","flattenObject","propType","collection","nested","flattenCollection","isDate","isComplexObject","tempId","parsed","parseDate","_setDefaultEditor","_createIncellEditor","cell","toJSON","parentColumn","fieldRenderer","_cellContent","bind","_createDirtyTemplate","templateSettings","_customTemplateSettings","template","columnTemplate","incellEditing","_isIncellEditable","isValueColumn","dirtyIndicator","dirty","get","dirtyIndicatorTemplate","format","_editableCellContent","bTag","content","_generateGroupRow","groupRowContent","tdElement","className","colSpan","role","uid","_generateDetailsBox","_renderRows","selected","childrenMap","viewChildrenMap","hasFooterTemplate","selectedRow","_selectedRowUid","rows","prepend","_groupedData","groupTr","concat","_trs","editedColumn","editedColumnIndex","aggregates","level","remove","_contentTree","render","_generateRowOptions","pageable","_renderedModelLevel","isAlt","_absoluteIndex","_renderRow","rowOptions","renderer","row","_tds","groupTdElement","splice","editCell","cellIndex","draggable","isColumnEditable","_editCell","css","addClass","_toolbar","toolbarOptions","_processToolbarItems","_verifyItems","kendoToolBar","navigateOnTab","navigatable","_attachToolbarHandlers","append","toolbarWidget","getKendoToolBar","sortElement","_toolbarClick","getKendoDropDownList","_sortItems","some","hasOwnProperty","findIndex","_getCommandType","toLowerCase","Error","imageClass","spriteCssClass","iconClass","menuButtons","buttons","click","origEvent","event","originalEvent","stopPropagation","_commandClick","currentTarget","ev","val","_action","dir","sender","refresh","_initContextMenu","tbodyContextMenu","mainOptions","tbody","states","_buildStates","isResizable","windowHasSelection","rangeCount","isDirty","isNotInEditMode","hasClass","isNotGroupColumn","isExpandable","isCollapsible","args","commandOptions","rootNodes","hashTable","create","node","childNode","guid","_groupableClickHandler","groupRow","is","_groupRowKeyDown","current","handled","focusElement","_setCurrent","_findCurrentCell","LEFT","RIGHT","altKey","_handleGroupRowExpandCollapse","parent","_toggleGroup","_search","input","clearTimeout","_searchTimeOut","setTimeout","searchFields","operator","select","_","detailsTemplate","detailsContainer","_clearDetails","setDataSource","selectItem","toggleItem","toggleGroup","toggleDetails","edit","saveState","saveChanges","resetState","setOptions","currentOptions","getOptions","_events","deepExtend","before","_setEvents","PropertyGridExcelExporter","ExcelExporter","_trimColumns","allColumns","_leafColumns","_prepareColumn","_visibleColumns","widget","hasGroups","hierarchy","hasGroupHeaderColumn","groupHeaderColumnTemplate","collapsible","_recursiveRows","this$1$1","_dataRow","_depth","itmIdx","_buildGroupedDataRows","groupItem","cells","background","color","_buildDataRows","parents","previousItemId","depth","itemLevel","itemId","hasFooter","_hasFooterTemplate","previousLevel","_hierarchyFooterRows","rootAggregate","_hierarchyFooter","_hierarchyRows","_prependHeaderRows","workbook","Deferred","d","fetch","then","_hierarchy","resolve","promise","PropertyGridExcelMixin","proto","proxyURL","filterable","fileName","exporter","allPages","book","ooxml","Workbook","skipCustomHeight","toDataURLAsync","dataURI","saveAs","forceProxy","_restoreExpandedState","prototype","cssProperties","propertyDictionary","registerPrefix","plugin"],"sources":["kendo.propertygrid.js"],"mappings":"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","sourcesContent":["(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('kendo.menu.js'), require('kendo.excel.js'), require('kendo.progressbar.js'), require('kendo.treelist.js'), require('kendo.dialog.js')) :\n typeof define === 'function' && define.amd ? define(['kendo.menu', 'kendo.excel', 'kendo.progressbar', 'kendo.treelist', 'kendo.dialog'], factory) :\n (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.kendopropertygrid = global.kendopropertygrid || {}, global.kendopropertygrid.js = factory()));\n})(this, (function () {\n (function($, undefined$1) {\n const kendo = window.kendo,\n ui = kendo.ui,\n TreeListContextMenu = ui.treelist.ContextMenu,\n extend = $.extend;\n\n let PropertyGridContextMenu = TreeListContextMenu.extend({\n init: function(element, options) {\n const that = this;\n\n TreeListContextMenu.fn.init.call(that, element, options);\n },\n defaultItems: {\n \"separator\": { name: \"separator\", separator: true },\n \"copy\": { name: \"copy\", text: \"Copy\", icon: \"copy\", command: \"CopyCommand\", softRules: \"windowHasSelection\",options: \"copy:selection\" },\n \"copyName\": { name: \"copyName\", text: \"Copy Name\", icon: \"file-txt\", command: \"CopyCommand\", options: \"copy:name\" },\n \"copyDeclaration\": { name: \"copyDeclatarion\", text: \"Copy Declaration\", icon: \"file-data\", command: \"CopyCommand\", options: \"copy:declaration\" },\n \"resize\": { name: \"resize\", text: \"Resize Column\", icon: \"arrows-left-right\", rules: \"isResizable\", command: \"ResizeColumnCommand\",softRules: \"isNotGroupColumn\" },\n \"reset\": { name: \"reset\", text: \"Reset\", icon: \"arrow-rotate-ccw\", command: \"ResetCommand\", rules: \"isEditable\", softRules: \"isDirty;isNotInEditMode\" },\n \"expandItem\": { name: \"expandItem\", text: \"Expand Item\", icon: \"folder-open\", softRules: \"isExpandable\", command: \"ToggleItemCommand\", options: \"expand:true\" },\n \"collapseItem\": { name: \"collapseItem\", text: \"Collapse Item\", icon: \"folder\", softRules: \"isCollapsible\", command: \"ToggleItemCommand\", options: \"expand:false\" }\n }\n });\n\n kendo.ui.propertygrid = kendo.ui.propertygrid || {};\n\n extend(kendo.ui.propertygrid, {\n ContextMenu: PropertyGridContextMenu\n });\n })(window.kendo.jQuery);\n\n (function($, undefined$1) {\n let kendo = window.kendo,\n extend = $.extend,\n Class = kendo.Class,\n keys = kendo.keys,\n COLUMNSIZE = \"#columnsize\";\n\n let Command = Class.extend({\n init: function(options) {\n this.options = options;\n this.propertyGrid = options.propertyGrid;\n }\n });\n\n let CopyCommand = Command.extend({\n exec: function() {\n const that = this,\n options = that.options,\n propertyGrid = that.propertyGrid,\n target = that.options.target.closest(\"tr\"),\n dataItem = propertyGrid.dataItem(target);\n if (options.copy == \"selection\") {\n let sel = window.getSelection();\n let range = sel.getRangeAt(0);\n let selectedText = range.toString();\n\n navigator.clipboard.writeText(selectedText);\n } else if (options.copy == \"name\") {\n navigator.clipboard.writeText(dataItem.field);\n } else if (options.copy == \"declaration\") {\n let value = that.propertyGrid._objectFromNodes(dataItem);\n let tabDelimitedValue = [dataItem.field, JSON.stringify(value[dataItem.field]), dataItem.description].filter(item => item !== undefined$1).join(\"\\t\");\n navigator.clipboard.writeText(tabDelimitedValue);\n }\n }\n });\n\n let ResetCommand = Command.extend({\n exec: function() {\n let that = this,\n propertyGrid = that.propertyGrid,\n target = that.options.target.closest(\"tr\"),\n dataItem = propertyGrid.dataItem(target);\n\n propertyGrid.dataSource.cancelChanges(dataItem);\n propertyGrid.trigger(\"cancel\", { type: \"cancel\", model: dataItem, container: that.options.target });\n propertyGrid._render();\n }\n });\n\n let ResizeColumnCommand = Command.extend({\n _actionButtonsTemplate: function({ apply, cancel, insertButtonIcon, cancelButtonIcon }) {\n return '
${kendo.ui.icon($(''), icon)}${groupName}
`,\n\n _detailsTemplate: ({ description }) => `${description || ' '}`,\n\n _setEditable: function(value) {\n const that = this;\n that.options.editable = value;\n },\n\n _processOptions: function(options) {\n const that = this;\n\n kendo.type(options.editMode) === \"boolean\" && !options.editMode ? that._setEditable(false) : that._setEditable(\"incell\");\n if (isNullorUndefined(options.toolbar)) {\n options.toolbar = that.options.defaultTools;\n }\n that._extendColumnOptions(options);\n },\n\n _extendColumnOptions: function(options) {\n const that = this;\n if (!options.columns) {\n return;\n }\n that.options.columns[0] = extend(true, options.columns.fieldColumn, that.options.columns[0]);\n that.options.columns[1] = extend(true, options.columns.valueColumn, that.options.columns[1]);\n delete options.columns;\n },\n\n _processSettings: function(obj, settings) {\n const that = this;\n settings.forEach((item) => {\n if (obj[item.field]) {\n extend(obj[item.field], item);\n\n if (obj[item.field].items) {\n that._processSettings(obj[item.field].value, obj[item.field].items);\n }\n }\n });\n },\n\n _processModel: function() {\n const that = this,\n model = that.options.model,\n options = that.options;\n\n let flatData = that._flatten(model);\n that._setDefaults(flatData);\n that._processSettings(flatData, options.items );\n\n return asArray(flatData);\n },\n\n _createDataSource: function() {\n const that = this,\n dataSource = new PropertyGridDataSource({\n data: that._processedModel,\n serverGrouping: false,\n schema: {\n model: {\n id: \"id\",\n parentId: \"parentId\",\n expanded: true,\n fields: {\n field: { editable: false },\n value: { editable: true }\n }\n },\n }\n });\n\n that.options.dataSource = dataSource;\n },\n\n _flatten: function(model) {\n let id = 1;\n\n function appendNested(result, key, nestedKeys, nestedObject, collectionIdx) {\n if (!isNullorUndefined(collectionIdx)) {\n nestedKeys.forEach (nestedKey => {\n result[`${key}.${collectionIdx}.${nestedKey}`] = nestedObject[nestedKey];\n result[`${key}.${collectionIdx}.${nestedKey}`].parentId = result[`${key}.${collectionIdx}`].id;\n });\n } else {\n nestedKeys.forEach (nestedKey => {\n result[`${key}.${nestedKey}`] = nestedObject[nestedKey];\n });\n }\n }\n\n function flattenCollection(result, obj, key, parentId) {\n const collection = obj[key];\n\n result[key] = {\n id: id++,\n parentId: parentId,\n propType: \"Array\",\n field: key,\n value: collection,\n };\n\n for (let i = 0; i < collection.length; i++) {\n const nested = typeof collection[i] === \"object\" ?\n flattenObject(collection[i], result[key].id) :\n collection[i];\n\n result[`${key}.${i}`] = {\n id: id++,\n parentId: result[key].id,\n propType: typeof obj[key],\n field: `${key}[${i}]`,\n value: nested\n };\n\n if (typeof collection[i] === \"object\") {\n const nestedKeys = Object.keys(nested);\n appendNested(result, key, nestedKeys, nested, i);\n }\n }\n }\n\n function flattenObject(obj, parentId) {\n const result = {},\n keys = Object.keys(obj || { } );\n\n keys.forEach ((key) => {\n if (isNullorUndefined(obj[key])) {\n result[key] = {\n id: id++,\n parentId: parentId,\n propType: typeof obj[key],\n field: key,\n value: obj[key]\n };\n } else if (isCollection(obj[key])) {\n flattenCollection(result, obj, key, parentId);\n } else if (isComplexObject(obj[key])) {\n let tempId = id++;\n const nestedObject = flattenObject(obj[key], tempId);\n const nestedKeys = Object.keys(nestedObject);\n\n result[key] = {\n id: tempId,\n parentId: parentId,\n propType: typeof obj[key],\n field: key,\n value: nestedObject,\n };\n\n appendNested(result, key, nestedKeys, nestedObject);\n } else {\n let parsed = kendo.parseDate(obj[key].toString());\n result[key] = {\n id: id++,\n parentId: parentId,\n propType: parsed != null ? typeof parsed : typeof obj[key],\n field: key,\n value: parsed != null ? parsed : obj[key]\n };\n }\n });\n\n return result;\n }\n\n return flattenObject(model, null);\n },\n\n _setDefaults: function(obj) {\n const that = this;\n\n Object.keys(obj).forEach(key => {\n if (that.options.groupable && !obj[key].group) {\n obj[key].group = that.options.messages.defaultGroupName;\n }\n that._setDefaultEditor(obj[key]);\n });\n },\n\n _setDefaultEditor: function(obj) {\n const that = this,\n type = kendo.type(obj.value);\n switch (type) {\n case \"date\":\n obj.editor = that.defaultEditors.date;\n break;\n case \"boolean\":\n obj.editor = that.defaultEditors.boolean;\n break;\n case \"number\":\n obj.editor = that.defaultEditors.number;\n break;\n default:\n obj.editor = that.defaultEditors.string;\n break;\n }\n },\n\n _createIncellEditor: function(cell, options) {\n const that = this;\n let column = extend({}, options.columns[0]);\n options.model.fields.value.validation = options.model.validation ? options.model.validation.toJSON() : {};\n delete column.parentColumn;\n\n return new DynamicInCellEditor(cell, extend({}, {\n fieldRenderer: that._cellContent.bind(that),\n appendTo: that.wrapper,\n clearContainer: false,\n target: that,\n columns: [column],\n model: options.model,\n change: options.change\n }));\n },\n\n _createDirtyTemplate: function(model) {\n const that = this;\n let templateSettings = that._customTemplateSettings();\n let dirtyIndicator = function(data) {\n return '';\n };\n let templateFunction = function(data) {\n return (dirtyIndicator() + kendo.template(model.template)(model));\n };\n\n return kendo.template(templateFunction, templateSettings).bind({ columnTemplate: model.template });\n },\n\n _cellContent: function(column, model) {\n const that = this,\n incellEditing = that._isIncellEditable(),\n isValueColumn = column.field == \"value\";\n let value, dirtyIndicator, template;\n\n if (isValueColumn && model.template) {\n template = model.dirty ? that._createDirtyTemplate(model) : kendo.template(model.template);\n value = template(model);\n } else if (column.field) {\n value = model.get(column.field);\n dirtyIndicator = incellEditing ? column.dirtyIndicatorTemplate(model) : \"\";\n if (!isNullorUndefined(value)) {\n if (model.format) {\n value = kendo.format(model.format, value);\n }\n\n value = dirtyIndicator + value;\n } else {\n value = dirtyIndicator;\n }\n } else if (isNullorUndefined(value)) {\n value = \"\";\n }\n\n if (model.template) {\n return kendoHtmlElement(value);\n } else {\n if (incellEditing) {\n return isEditable(model.value) && isValueColumn ? that._editableCellContent(value) : kendoHtmlElement(value);\n } else {\n return kendoTextElement(value);\n }\n }\n },\n\n _editableCellContent: function(value) {\n let bTag = kendoDomElement(\"b\");\n let content = kendoHtmlElement(value);\n bTag.children.push(content);\n return bTag;\n },\n\n _generateGroupRow: function(item) {\n const that = this;\n let groupRowContent = (kendo.template(that._groupContentTemplate)({\n groupName: item.value,\n action: item.visible ? COLLAPSE : EXPAND,\n icon: item.visible ? COLLAPSE_ICON : EXPAND_ICON\n }));\n let tdElement = kendoDomElement(TD, { className: \"k-table-td\", class: \"k-table-td\", colSpan: \"3\" , role: \"gridcell\", \"aria-expanded\": item.visible, visible: true }, [kendo.dom.html(groupRowContent)] );\n let trElement = kendoDomElement(TR, { className: \"k-table-group-row k-grouping-row k-table-row\", role: \"row\" , \"data-uid\": item.uid }, [tdElement] );\n return trElement;\n },\n\n _generateDetailsBox: function() {\n const that = this;\n let tdElement = kendoDomElement(TD, { className: \"k-table-td\", class: \"k-table-td\", colSpan: that.grouped ? 3 : 2 , role: \"gridcell\", visible: true }, [kendo.dom.html(\" \")] );\n let trElement = kendoDomElement(TR, {\n className: `k-details-box k-bottom k-sticky k-footer-template k-table-row ${!that.visibleDetails ? 'k-hidden' : ''}`,\n role: \"row\"\n }, [tdElement] );\n return trElement;\n },\n\n _renderRows: function(options, data, columns, selected, childrenMap, viewChildrenMap, hasFooterTemplate) {\n const that = this;\n let selectedRow = selected.length ? selected : that._selectedRowUid;\n let rows = [];\n if (that.grouped) {\n if (that.table.find(\">colgroup>col.k-group-col\").length === 0) {\n that.table.find(\">colgroup\").prepend('