angular.module("app", ["angularGrid"]).controller("MainCtrl", ['$timeout', MainCtrl ]);
function MainCtrl($timeout) {
"use strict";
var vm = this;
vm.name = "test";
var columnDefs = [
{displayName: "Make", field: "make"},
{displayName: "Model", field: "model"},
{displayName: "Price", field: "price"},
{displayName: "Price2 ", field: "price2"},
{displayName: "Test 4", field: "test4"},
{displayName: "Test 5", field: "test5"},
{displayName: "Test 6", field: "test6"},
];
var rowData = [
{make: "Toyota Toyota Toyota Toyota Toyota", model: "Celica", price: 35000, price2: 145, "Test 4": "Test 4", "Test 5": "Test 5", "Test 6": "Test 6"},
{make: "Acura", model: "Celica", price: 35000, price2: 145, "Test 4": "Test 4", "Test 5": "Test 5", "Test 6": "Test 6"}
];
vm.gridOptions = {
columnDefs: columnDefs,
rowData: rowData
};
vm.resize = function() {
vm.gridOptions.api.sizeColumnsToFit();
};
vm.fixCss = function() {
jQuery(".ag-body-viewport").css("margin-bottom", "-3px");
};
$timeout(function() {vm.gridOptions.api.sizeColumnsToFit();}, 5);
}
/*
.ag-body-viewport {
margin-bottom: -3px;
}
*/
<!doctype html>
<html ng-app="app">
<head>
<script src="https://code.jquery.com/jquery-2.1.4.js"></script>
<script src="https://code.angularjs.org/1.4.0/angular.js"></script>
<script src="angular-grid.js"></script>
<link rel="stylesheet" href="angular-grid.css" type="text/css">
<link rel="stylesheet" href="theme-fresh.css" type="text/css">
<link rel="stylesheet" href="main.css" type="text/css">
</head>
<body>
<div ng-controller="MainCtrl as main">
<div angular-grid="main.gridOptions" class="ag-fresh" style="width: 100%"></div>
<p>
<button ng-click="main.resize()">Resize</button>
</p>
<p>
<button ng-click="main.fixCss()">Apply CSS Fix</button>
</p>
</div>
<script src="app.js"></script>
</body>
</html>
.ag-root {
font-size: 14px;
cursor: default;
/* Set to relative, so absolute popups appear relative to this */
position: relative;
/*disable user mouse selection */
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
.ag-no-scrolls {
white-space: nowrap;
display: inline-block;
}
.ag-scrolls {
height: 100%;
}
.ag-popup-backdrop {
position: fixed;
left: 0px;
top: 0px;
width: 100%;
height: 100%;
}
.ag-header {
position: absolute;
top: 0px;
left: 0px;
white-space: nowrap;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
overflow: hidden;
width: 100%;
}
.ag-pinned-header {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
display: inline-block;
overflow: hidden;
height: 100%;
}
.ag-header-viewport {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
display: inline-block;
overflow: hidden;
height: 100%;
}
.ag-scrolls .ag-header-container {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
position: relative;
white-space: nowrap;
height: 100%;
}
.ag-no-scrolls .ag-header-container {
white-space: nowrap;
}
.ag-header-cell {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
vertical-align: bottom;
text-align: center;
display: inline-block;
}
.ag-header-cell-grouped {
height: 50%;
}
.ag-header-cell-not-grouped {
height: 100%;
}
.ag-header-group {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
display: inline-block;
height: 100%;
}
.ag-header-group-cell {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
text-align: center;
height: 50%;
-o-text-overflow: ellipsis;
text-overflow: ellipsis;
overflow: hidden;
}
.ag-header-group-cell-label {
-o-text-overflow: ellipsis;
text-overflow: ellipsis;
overflow: hidden;
}
.ag-header-cell-label {
-o-text-overflow: ellipsis;
text-overflow: ellipsis;
overflow: hidden;
}
.ag-header-cell-resize {
height: 100%;
width: 4px;
float: right;
cursor: col-resize;
}
.ag-header-cell-menu-button {
float: right;
}
.ag-loading-panel {
z-index: 1;
position: absolute;
display: table;
width: 100%;
/* Height is set by javascript, to cover the table */
}
.ag-loading-wrapper {
display: table-cell;
vertical-align: middle;
text-align: center;
}
.ag-body {
height: 100%;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
.ag-pinned-cols-viewport {
float: left;
position: absolute;
overflow: hidden;
}
.ag-pinned-cols-container {
display: inline-block;
position: relative;
}
.ag-body-viewport-wrapper {
height: 100%;
}
.ag-body-viewport {
overflow: auto;
height: 100%;
}
.ag-scrolls .ag-body-container {
position: relative;
display: inline-block;
}
.ag-scrolls .ag-row {
white-space: nowrap;
position: absolute;
width: 100%;
}
.agile-gird-row:hover {
background-color: #f0f8ff;
}
.ag-cell {
display: inline-block;
white-space: nowrap;
height: 100%;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
-o-text-overflow: ellipsis;
text-overflow: ellipsis;
overflow: hidden;
float: left;
}
.ag-group-cell-entire-row {
width: 100%;
display: inline-block;
white-space: nowrap;
height: 100%;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
-o-text-overflow: ellipsis;
text-overflow: ellipsis;
overflow: hidden;
}
.ag-footer-cell-entire-row {
width: 100%;
display: inline-block;
white-space: nowrap;
height: 100%;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
-o-text-overflow: ellipsis;
text-overflow: ellipsis;
overflow: hidden;
}
.ag-large .ag-root {
font-size: 20px;
}
.ag-filter {
position: absolute;
z-index: 100;
}
.ag-filter-list-viewport {
overflow-x: auto;
height: 200px;
width: 200px;
}
.ag-filter-list-container {
position: relative;
overflow: hidden;
}
.ag-filter-item {
-o-text-overflow: ellipsis;
text-overflow: ellipsis;
overflow: hidden;
white-space: nowrap;
position: absolute;
}
.ag-filter-filter {
width: 170px;
margin: 4px;
}
.ag-filter-select {
width: 110px;
margin: 4px 4px 0px 4px;
}
.ag-paging-panel {
position: absolute;
}
!function e(t,i,r){function o(s,l){if(!i[s]){if(!t[s]){var a="function"==typeof require&&require;if(!l&&a)return a(s,!0);if(n)return n(s,!0);var d=new Error("Cannot find module '"+s+"'");throw d.code="MODULE_NOT_FOUND",d}var u=i[s]={exports:{}};t[s][0].call(u.exports,function(e){var i=t[s][1][e];return o(i?i:e)},u,u.exports,e,t,i,r)}return i[s].exports}for(var n="function"==typeof require&&require,s=0;s<r.length;s++)o(r[s]);return o}({1:[function(e,t,i){(function(){function r(e,t,i,r){var o;if(r){var n=r.agGrid;if(o=t.$eval(n),!o)return void console.warn("WARNING - grid options for Angular Grid not found. Please ensure the attribute ag-grid points to a valid object on the scope")}else if(console.warn("WARNING - Directive angular-grid is deprecated, you should use the ag-grid directive instead."),o=t.angularGrid,!o)return void console.warn("WARNING - grid options for Angular Grid not found. Please ensure the attribute angular-grid points to a valid object on the scope");var l=e[0],a=new s(l,o,t,i);t.$on("$destroy",function(){a.setFinished()})}function o(e,t){var i;if("string"==typeof e){if(i=document.querySelector(e),!i)return void console.log("WARNING - was not able to find element "+e+" in the DOM, Angular Grid initialisation aborted.")}else i=e;new s(i,t,null,null)}var n=this,s=e("./grid");if("undefined"!=typeof angular){var l=angular.module("angularGrid",[]);l.directive("angularGrid",function(){return{restrict:"A",controller:["$element","$scope","$compile",r],scope:{angularGrid:"="}}}),l.directive("agGrid",function(){return{restrict:"A",controller:["$element","$scope","$compile","$attrs",r],scope:!0}})}"undefined"!=typeof i&&("undefined"!=typeof t&&t.exports&&(i=t.exports=o),i.angularGrid=o),n.angularGrid=o}).call(window)},{"./grid":14}],2:[function(e,t,i){function r(e,t){function i(e,t){function i(){a(o,l,t)}var o=d(!0),l=d(!1);e.appendChild(o),e.appendChild(l),o.addEventListener("click",i),l.addEventListener("click",i),e.addEventListener("dblclick",i),r(o,l,t.node.expanded),t.eGridCell&&t.eGridCell.addEventListener("keydown",function(e){n.isKeyPressed(e,s.KEY_ENTER)&&(i(),e.preventDefault())})}function r(e,t,i){n.setVisible(e,!i),n.setVisible(t,i)}function o(e,t,i){n.useRenderer(e,i,t)}function a(e,t,i){i.node.expanded=!i.node.expanded,i.api.onGroupExpandedOrCollapsed(i.rowIndex+1),r(e,t,i.node.expanded)}function d(t){return t?n.createIcon("groupContracted",e,null,l.createArrowRightSvg):n.createIcon("groupExpanded",e,null,l.createArrowDownSvg)}function u(e,t){var i="Total "+p(t),r=document.createTextNode(i);e.appendChild(r)}function p(e){var t=e.colDef.cellRenderer;if(t&&t.keyMap&&"object"==typeof t.keyMap&&null!==e.colDef.cellRenderer){var i=t.keyMap[e.node.key];return i?i:e.node.key}return e.node.key}function c(e,t){var i=" "+p(t),r=t.colDef.cellRenderer&&t.colDef.cellRenderer.suppressCount;!r&&t.node.allChildrenCount>=0&&(i+=" ("+t.node.allChildrenCount+")");var o=document.createTextNode(i);e.appendChild(o)}function h(e,t){if(t.value){var i=document.createTextNode(" "+t.value);e.appendChild(i)}}return function(e){var r=document.createElement("span"),n=e.node,s=n.group&&!n.footer;s&&i(r,e);var l=e.colDef&&e.colDef.cellRenderer&&e.colDef.cellRenderer.checkbox&&!n.footer;if(l){var a=t.createSelectionCheckbox(n,e.rowIndex);r.appendChild(a)}if(e.colDef&&e.colDef.cellRenderer&&e.colDef.cellRenderer.innerRenderer?o(r,e,e.colDef.cellRenderer.innerRenderer):n.footer?u(r,e):n.group?c(r,e):h(r,e),n.footer||n.level>0){var d=10*n.level;n.footer?d+=10:n.group||(d+=5),r.style.paddingLeft=d+"px"}return r}}var o=e("../svgFactory"),n=e("../utils"),s=e("../constants"),l=new o;t.exports=r},{"../constants":4,"../svgFactory":23,"../utils":27}],3:[function(e,t,i){function r(){this.createModel()}function o(e,t){this.pinned=e,this.name=t,this.allColumns=[],this.visibleColumns=[],this.expandable=!1,this.expanded=!1}function n(e,t,i){this.colDef=e,this.index=t,this.pinned=i,this.colKey=t}var s=e("./constants");r.prototype.init=function(e,t,i){this.gridOptionsWrapper=i,this.angularGrid=e,this.selectionRendererFactory=t},r.prototype.createModel=function(){var e=this;this.model={getAllColumns:function(){return e.columns},getVisibleColumns:function(){return e.visibleColumns},getBodyContainerWidth:function(){return e.getTotalColWidth(!1)},getPinnedContainerWidth:function(){return e.getTotalColWidth(!0)},getColumnGroups:function(){return e.columnGroups},getColumn:function(t){for(var i=0;i<e.columns.length;i++){var r=e.columns[i].colDef===t,o=e.columns[i].colDef.field===t;if(r||o)return e.columns[i]}},getVisibleColBefore:function(t){var i=e.visibleColumns.indexOf(t);return i>0?e.visibleColumns[i-1]:null},getVisibleColAfter:function(t){var i=e.visibleColumns.indexOf(t);return i<e.visibleColumns.length-1?e.visibleColumns[i+1]:null}}},r.prototype.getModel=function(){return this.model},r.prototype.setColumns=function(e){this.buildColumns(e),this.ensureEachColHasSize(),this.buildGroups(),this.updateGroups(),this.updateVisibleColumns()},r.prototype.columnGroupOpened=function(e){e.expanded=!e.expanded,this.updateGroups(),this.updateVisibleColumns(),this.angularGrid.refreshHeaderAndBody()},r.prototype.updateVisibleColumns=function(){if(!this.gridOptionsWrapper.isGroupHeaders())return void(this.visibleColumns=this.columns);this.visibleColumns=[];for(var e=0;e<this.columnGroups.length;e++){var t=this.columnGroups[e];t.addToVisibleColumns(this.visibleColumns)}},r.prototype.sizeColumnsToFit=function(e){if(!(0>=e||0===this.visibleColumns.length)){for(var t=0,i=[],r=e,o=0;o<this.visibleColumns.length;o++)this.visibleColumns[o].colDef.suppressSizeToFit===!0?r-=this.visibleColumns[o].actualWidth:(i.push(this.visibleColumns[o]),t+=this.visibleColumns[o].actualWidth);if(!(0>=r)){for(var n=r/t,s=r,l=0;l<i.length-1;l++){var a=i[l],d=parseInt(a.actualWidth*n);a.actualWidth=d,s-=d}var u=i[i.length-1];u.actualWidth=s,this.angularGrid.refreshHeaderAndBody()}}},r.prototype.buildGroups=function(){if(!this.gridOptionsWrapper.isGroupHeaders())return void(this.columnGroups=null);var e=null;this.columnGroups=[];var t=this,i=!0;this.columns.forEach(function(r){var n=i&&!r.pinned;r.pinned||(i=!1);var s=e&&r.colDef.group!==e.name,l=e&&!e.name,a=0===r.index,d=a||n||s||l;if(d){var u=r.pinned;e=new o(u,r.colDef.group),t.columnGroups.push(e)}e.addColumn(r)})},r.prototype.updateGroups=function(){if(this.gridOptionsWrapper.isGroupHeaders())for(var e=0;e<this.columnGroups.length;e++){var t=this.columnGroups[e];t.calculateExpandable(),t.calculateVisibleColumns()}},r.prototype.buildColumns=function(e){this.columns=[];var t=this,i=this.gridOptionsWrapper.getPinnedColCount();if(e)for(var r=0;r<e.length;r++){var o=e[r];"checkboxSelection"===o&&(o=t.selectionRendererFactory.createCheckboxColDef());var s=i>r,l=new n(o,r,s);t.columns.push(l)}},r.prototype.ensureEachColHasSize=function(){var e=this.gridOptionsWrapper.getColWidth();("number"!=typeof e||e<s.MIN_COL_WIDTH)&&(e=200),this.columns.forEach(function(t){var i=t.colDef;t.actualWidth||(t.actualWidth=i.width?i.width<s.MIN_COL_WIDTH?s.MIN_COL_WIDTH:i.width:e)})},r.prototype.getTotalColWidth=function(e){var t=0,i="boolean"!=typeof e;return this.visibleColumns.forEach(function(r){var o=i||r.pinned===e;o&&(t+=r.actualWidth)}),t},o.prototype.addColumn=function(e){this.allColumns.push(e)},o.prototype.calculateExpandable=function(){for(var e=!1,t=!1,i=!1,r=0,o=this.allColumns.length;o>r;r++){var n=this.allColumns[r];"open"===n.colDef.groupShow?(e=!0,i=!0):"closed"===n.colDef.groupShow?(t=!0,i=!0):(e=!0,t=!0)}this.expandable=e&&t&&i},o.prototype.calculateVisibleColumns=function(){if(this.visibleColumns=[],!this.expandable)return void(this.visibleColumns=this.allColumns);for(var e=0,t=this.allColumns.length;t>e;e++){var i=this.allColumns[e];switch(i.colDef.groupShow){case"open":this.expanded&&this.visibleColumns.push(i);break;case"closed":this.expanded||this.visibleColumns.push(i);break;default:this.visibleColumns.push(i)}}},o.prototype.addToVisibleColumns=function(e){for(var t=0;t<this.visibleColumns.length;t++){var i=this.visibleColumns[t];e.push(i)}},t.exports=r},{"./constants":4}],4:[function(e,t,i){var r={STEP_EVERYTHING:0,STEP_FILTER:1,STEP_SORT:2,STEP_MAP:3,ASC:"asc",DESC:"desc",ROW_BUFFER_SIZE:20,SORT_STYLE_SHOW:"display:inline;",SORT_STYLE_HIDE:"display:none;",MIN_COL_WIDTH:10,KEY_TAB:9,KEY_ENTER:13,KEY_SPACE:32,KEY_DOWN:40,KEY_UP:38,KEY_LEFT:37,KEY_RIGHT:39},o=!!window.opera||navigator.userAgent.indexOf(" OPR/")>=0,n="undefined"!=typeof InstallTrigger,s=Object.prototype.toString.call(window.HTMLElement).indexOf("Constructor")>0,l=!!window.chrome&&!this.isOpera,a=!1||!!document.documentMode;o?r.BROWSER="opera":n?r.BROWSER="firefox":s?r.BROWSER="safari":l?r.BROWSER="chrome":a&&(r.BROWSER="ie");var d=navigator.platform.toUpperCase().indexOf("MAC")>=0,u=navigator.platform.toUpperCase().indexOf("WIN")>=0;d?r.PLATFORM="mac":u&&(r.PLATFORM="win"),t.exports=r},{}],5:[function(e,t,i){function r(){}function r(){this.expressionToFunctionCache={}}r.prototype.evaluate=function(e,t){},r.prototype.evaluate=function(e,t){try{var i=this.createExpressionFunction(e),r=i(t.value,t.context,t.node,t.data,t.colDef,t.rowIndex,t.api);return r}catch(o){return console.error("Processing of the expression failed"),console.error("Expression = "+e),console.error("Exception = "+o),null}},r.prototype.createExpressionFunction=function(e){if(this.expressionToFunctionCache[e])return this.expressionToFunctionCache[e];var t=this.createFunctionBody(e),i=new Function("x, ctx, node, data, colDef, rowIndex, api",t);return this.expressionToFunctionCache[e]=i,i},r.prototype.createFunctionBody=function(e){return e.indexOf("return")>=0?e:"return "+e+";"},t.exports=r},{}],6:[function(e,t,i){function r(){}var o=e("./../utils"),n=e("./setFilter"),s=e("./numberFilter"),l=e("./textFilter");r.prototype.init=function(e,t,i,r,o,n){this.$compile=i,this.$scope=r,this.gridOptionsWrapper=t,this.grid=e,this.allFilters={},this.expressionService=o,this.columnModel=n},r.prototype.setFilterModel=function(e){var t=this;if(e){var i=Object.keys(e);o.iterateObject(this.allFilters,function(r,n){var s=n.column.colDef.field;if(o.removeFromArray(i,s),s){var l=e[s];t.setModelOnFilterWrapper(n.filter,l)}else console.warn("Warning ag-grid - no field found for column while doing setFilterModel")}),o.iterateArray(i,function(i){var r=t.columnModel.getColumn(i);if(!r)return void console.warn("Warning ag-grid - no column found for field "+i);var o=t.getOrCreateFilterWrapper(r);t.setModelOnFilterWrapper(o.filter,e[i])})}else o.iterateObject(this.allFilters,function(e,i){t.setModelOnFilterWrapper(i.filter,null)})},r.prototype.setModelOnFilterWrapper=function(e,t){if("function"!=typeof e.getApi)return void console.warn("Warning ag-grid - filter missing getApi method, which is needed for getFilterModel");var i=e.getApi();return"function"!=typeof i.setModel?void console.warn("Warning ag-grid - filter API missing setModel method, which is needed for setFilterModel"):void i.setModel(t)},r.prototype.getFilterModel=function(){var e={};return o.iterateObject(this.allFilters,function(t,i){if("function"!=typeof i.filter.getApi)return void console.warn("Warning ag-grid - filter missing getApi method, which is needed for getFilterModel");var r=i.filter.getApi();if("function"!=typeof r.getModel)return void console.warn("Warning ag-grid - filter API missing getModel method, which is needed for getFilterModel");var o=r.getModel();if(o){var n=i.column.colDef.field;n?e[n]=o:console.warn("Warning ag-grid - cannot get filter model when no field value present for column")}}),e},r.prototype.setRowModel=function(e){this.rowModel=e},r.prototype.isFilterPresent=function(){var e=!1,t=this,i=Object.keys(this.allFilters);return i.forEach(function(i){var r=t.allFilters[i];r.filter.isFilterActive||console.error("Filter is missing method isFilterActive"),r.filter.isFilterActive()&&(e=!0)}),e},r.prototype.isFilterPresentForCol=function(e){var t=this.allFilters[e];if(!t)return!1;t.filter.isFilterActive||console.error("Filter is missing method isFilterActive");var i=t.filter.isFilterActive();return i},r.prototype.doesFilterPass=function(e){for(var t=e.data,i=Object.keys(this.allFilters),r=0,o=i.length;o>r;r++){var n=i[r],s=this.allFilters[n];if(void 0!==s){s.filter.doesFilterPass||console.error("Filter is missing method doesFilterPass");var l={node:e,data:t};if(!s.filter.doesFilterPass(l))return!1}}return!0},r.prototype.onNewRowsLoaded=function(){var e=this;Object.keys(this.allFilters).forEach(function(t){var i=e.allFilters[t].filter;i.onNewRowsLoaded&&i.onNewRowsLoaded()})},r.prototype.positionPopup=function(e,t,i){var r=e.getBoundingClientRect(),o=i.getBoundingClientRect(),n=r.left-o.left,s=r.top-o.top+r.height,l=200,a=o.right-o.left,d=a-l-20;n>d&&(n=d),0>n&&(n=0),t.style.left=n+"px",t.style.top=s+"px"},r.prototype.createValueGetter=function(e){var t=this;return function(i){var r=t.gridOptionsWrapper.getApi(),n=t.gridOptionsWrapper.getContext();return o.getValue(t.expressionService,i.data,e,i,r,n)}},r.prototype.getFilterApi=function(e){var t=this.getOrCreateFilterWrapper(e);return t&&"function"==typeof t.filter.getApi?t.filter.getApi():void 0},r.prototype.getOrCreateFilterWrapper=function(e){var t=this.allFilters[e.colKey];return t||(t=this.createFilterWrapper(e),this.allFilters[e.colKey]=t),t},r.prototype.createFilterWrapper=function(e){var t=e.colDef,i={column:e},r=this.grid.onFilterChanged.bind(this.grid),a=t.filterParams,d={colDef:t,rowModel:this.rowModel,filterChangedCallback:r,filterParams:a,localeTextFunc:this.gridOptionsWrapper.getLocaleTextFunc(),valueGetter:this.createValueGetter(t)};if("function"==typeof t.filter){if(this.gridOptionsWrapper.isAngularCompileFilters()){var u=this.$scope.$new();i.scope=u,d.$scope=u}i.filter=new t.filter(d)}else i.filter="text"===t.filter?new l(d):"number"===t.filter?new s(d):new n(d);if(!i.filter.getGui)throw"Filter is missing method getGui";var p=document.createElement("div");p.className="ag-filter";var c=i.filter.getGui();if(o.isNodeOrElement(c))p.appendChild(c);else{var h=document.createElement("span");h.innerHTML=c,p.appendChild(h)}return i.gui=i.scope?this.$compile(p)(i.scope)[0]:p,i},r.prototype.showFilter=function(e,t){var i=this.getOrCreateFilterWrapper(e),r=this.grid.getPopupParent();this.positionPopup(t,i.gui,r),o.addAsModalPopup(r,i.gui),i.filter.afterGuiAttached&&i.filter.afterGuiAttached()},t.exports=r},{"./../utils":27,"./numberFilter":7,"./setFilter":9,"./textFilter":12}],7:[function(e,t,i){function r(e){this.filterChangedCallback=e.filterChangedCallback,this.localeTextFunc=e.localeTextFunc,this.valueGetter=e.valueGetter,this.createGui(),this.filterNumber=null,this.filterType=s,this.createApi()}var o=e("./../utils"),n=e("./numberFilterTemplate.js"),s=1,l=2,a=3;r.prototype.afterGuiAttached=function(){this.eFilterTextField.focus()},r.prototype.doesFilterPass=function(e){if(null===this.filterNumber)return!0;var t=this.valueGetter(e);if(!t&&0!==t)return!1;var i;switch(i="number"==typeof t?t:parseFloat(t),this.filterType){case s:return i===this.filterNumber;case l:return i<=this.filterNumber;case a:return i>=this.filterNumber;default:return console.log("invalid filter type "+this.filterType),!1}},r.prototype.getGui=function(){return this.eGui},r.prototype.isFilterActive=function(){return null!==this.filterNumber},r.prototype.createTemplate=function(){return n.replace("[FILTER...]",this.localeTextFunc("filterOoo","Filter...")).replace("[EQUALS]",this.localeTextFunc("equals","Equals")).replace("[LESS THAN]",this.localeTextFunc("lessThan","Less than")).replace("[GREATER THAN]",this.localeTextFunc("greaterThan","Greater than"))},r.prototype.createGui=function(){this.eGui=o.loadTemplate(this.createTemplate()),this.eFilterTextField=this.eGui.querySelector("#filterText"),this.eTypeSelect=this.eGui.querySelector("#filterType"),o.addChangeListener(this.eFilterTextField,this.onFilterChanged.bind(this)),this.eTypeSelect.addEventListener("change",this.onTypeChanged.bind(this))},r.prototype.onTypeChanged=function(){this.filterType=parseInt(this.eTypeSelect.value),this.filterChangedCallback()},r.prototype.onFilterChanged=function(){var e=o.makeNull(this.eFilterTextField.value);e&&""===e.trim()&&(e=null),this.filterNumber=e?parseFloat(e):null,this.filterChangedCallback()},r.prototype.createApi=function(){var e=this;this.api={EQUALS:s,LESS_THAN:l,GREATER_THAN:a,setType:function(t){e.filterType=t,e.eTypeSelect.value=t},setFilter:function(t){t=o.makeNull(t),null!==t&&"number"!=typeof t&&(t=parseFloat(t)),e.filterNumber=t,e.eFilterTextField.value=t},getType:function(){return e.filterType},getFilter:function(){return e.filterNumber},getModel:function(){return e.isFilterActive()?{type:e.filterType,filter:e.filterNumber}:null},setModel:function(e){e?(this.setType(e.type),this.setFilter(e.filter)):this.setFilter(null)}}},r.prototype.getApi=function(){return this.api},t.exports=r},{"./../utils":27,"./numberFilterTemplate.js":8}],8:[function(e,t,i){var r=["<div>","<div>",'<select class="ag-filter-select" id="filterType">','<option value="1">[EQUALS]</option>','<option value="2">[LESS THAN]</option>','<option value="3">[GREATER THAN]</option>',"</select>","</div>","<div>",'<input class="ag-filter-filter" id="filterText" type="text" placeholder="[FILTER...]"/>',"</div>","</div>"].join("");t.exports=r},{}],9:[function(e,t,i){function r(e){var t=e.filterParams;this.rowHeight=t&&t.cellHeight?t.cellHeight:l,this.model=new n(e.colDef,e.rowModel,e.valueGetter),this.filterChangedCallback=e.filterChangedCallback,this.valueGetter=e.valueGetter,this.rowsInBodyContainer={},this.colDef=e.colDef,this.localeTextFunc=e.localeTextFunc,t&&(this.cellRenderer=t.cellRenderer),this.createGui(),this.addScrollListener(),this.createApi()}var o=e("./../utils"),n=e("./setFilterModel"),s=e("./setFilterTemplate"),l=20;r.prototype.afterGuiAttached=function(){this.drawVirtualRows()},r.prototype.isFilterActive=function(){return this.model.isFilterActive()},r.prototype.doesFilterPass=function(e){if(this.model.isEverythingSelected())return!0;if(this.model.isNothingSelected())return!1;var t=this.valueGetter(e);t=o.makeNull(t);var i=this.model.isValueSelected(t);return i},r.prototype.getGui=function(){return this.eGui},r.prototype.onNewRowsLoaded=function(){this.model.selectEverything(),this.updateAllCheckboxes(!0)},r.prototype.createTemplate=function(){return s.replace("[SELECT ALL]",this.localeTextFunc("selectAll","Select All")).replace("[SEARCH...]",this.localeTextFunc("searchOoo","Search..."))},r.prototype.createGui=function(){var e=this;this.eGui=o.loadTemplate(this.createTemplate()),this.eListContainer=this.eGui.querySelector(".ag-filter-list-container"),this.eFilterValueTemplate=this.eGui.querySelector("#itemForRepeat"),this.eSelectAll=this.eGui.querySelector("#selectAll"),this.eListViewport=this.eGui.querySelector(".ag-filter-list-viewport"),this.eMiniFilter=this.eGui.querySelector(".ag-filter-filter"),this.eListContainer.style.height=this.model.getUniqueValueCount()*this.rowHeight+"px",this.setContainerHeight(),this.eMiniFilter.value=this.model.getMiniFilter(),o.addChangeListener(this.eMiniFilter,function(){e.onMiniFilterChanged()}),o.removeAllChildren(this.eListContainer),this.eSelectAll.onclick=this.onSelectAll.bind(this),this.model.isEverythingSelected()?(this.eSelectAll.indeterminate=!1,this.eSelectAll.checked=!0):this.model.isNothingSelected()?(this.eSelectAll.indeterminate=!1,this.eSelectAll.checked=!1):this.eSelectAll.indeterminate=!0},r.prototype.setContainerHeight=function(){this.eListContainer.style.height=this.model.getDisplayedValueCount()*this.rowHeight+"px"},r.prototype.drawVirtualRows=function(){var e=this.eListViewport.scrollTop,t=e+this.eListViewport.offsetHeight,i=Math.floor(e/this.rowHeight),r=Math.floor(t/this.rowHeight);this.ensureRowsRendered(i,r)},r.prototype.ensureRowsRendered=function(e,t){for(var i=this,r=Object.keys(this.rowsInBodyContainer),o=e;t>=o;o++)if(r.indexOf(o.toString())>=0)r.splice(r.indexOf(o.toString()),1);else if(this.model.getDisplayedValueCount()>o){var n=this.model.getDisplayedValue(o);i.insertRow(n,o)}this.removeVirtualRows(r)},r.prototype.removeVirtualRows=function(e){var t=this;e.forEach(function(e){var i=t.rowsInBodyContainer[e];t.eListContainer.removeChild(i),delete t.rowsInBodyContainer[e]})},r.prototype.insertRow=function(e,t){var i=this,r=this.eFilterValueTemplate.cloneNode(!0),n=r.querySelector(".ag-filter-value");if(this.cellRenderer){var s=this.cellRenderer({value:e});o.isNode(s)?n.appendChild(s):n.innerHTML=s}else{var l="("+this.localeTextFunc("blanks","Blanks")+")",a=null===e?l:e;n.innerHTML=a}var d=r.querySelector("input");d.checked=this.model.isValueSelected(e),d.onclick=function(){i.onCheckboxClicked(d,e)},r.style.top=this.rowHeight*t+"px",this.eListContainer.appendChild(r),this.rowsInBodyContainer[t]=r},r.prototype.onCheckboxClicked=function(e,t){var i=e.checked;i?(this.model.selectValue(t),this.model.isEverythingSelected()?(this.eSelectAll.indeterminate=!1,this.eSelectAll.checked=!0):this.eSelectAll.indeterminate=!0):(this.model.unselectValue(t),this.model.isNothingSelected()?(this.eSelectAll.indeterminate=!1,this.eSelectAll.checked=!1):this.eSelectAll.indeterminate=!0),this.filterChangedCallback()},r.prototype.onMiniFilterChanged=function(){var e=this.model.setMiniFilter(this.eMiniFilter.value);e&&(this.setContainerHeight(),this.refreshVirtualRows())},r.prototype.refreshVirtualRows=function(){this.clearVirtualRows(),this.drawVirtualRows()},r.prototype.clearVirtualRows=function(){var e=Object.keys(this.rowsInBodyContainer);this.removeVirtualRows(e)},r.prototype.onSelectAll=function(){var e=this.eSelectAll.checked;e?this.model.selectEverything():this.model.selectNothing(),this.updateAllCheckboxes(e),this.filterChangedCallback()},r.prototype.updateAllCheckboxes=function(e){for(var t=this.eListContainer.querySelectorAll("[filter-checkbox=true]"),i=0,r=t.length;r>i;i++)t[i].checked=e},r.prototype.addScrollListener=function(){var e=this;this.eListViewport.addEventListener("scroll",function(){e.drawVirtualRows()})},r.prototype.getApi=function(){return this.api},r.prototype.createApi=function(){var e=this.model,t=this;this.api={setMiniFilter:function(t){e.setMiniFilter(t)},getMiniFilter:function(){return e.getMiniFilter()},selectEverything:function(){e.selectEverything()},isFilterActive:function(){return e.isFilterActive()},selectNothing:function(){e.selectNothing()},unselectValue:function(i){e.unselectValue(i),t.refreshVirtualRows()},selectValue:function(i){e.selectValue(i),t.refreshVirtualRows()},isValueSelected:function(t){return e.isValueSelected(t)},isEverythingSelected:function(){return e.isEverythingSelected()},isNothingSelected:function(){return e.isNothingSelected()},getUniqueValueCount:function(){return e.getUniqueValueCount()},getUniqueValue:function(t){return e.getUniqueValue(t)},getModel:function(){return e.getModel()},setModel:function(i){e.setModel(i),t.refreshVirtualRows()}}},t.exports=r},{"./../utils":27,"./setFilterModel":10,"./setFilterTemplate":11}],10:[function(e,t,i){function r(e,t,i){e.filterParams&&e.filterParams.values?this.uniqueValues=e.filterParams.values:this.createUniqueValues(t,e.field,i),this.uniqueValues.sort(e.comparator?e.comparator:o.defaultComparator),this.displayedValues=this.uniqueValues,this.miniFilter=null,this.selectedValuesMap={},this.selectEverything()}var o=e("../utils");r.prototype.createUniqueValues=function(e,t,i){function r(e){for(var t=0;t<e.length;t++){var s=e[t];if(s.group&&!s.footer)r(s.children);else{var l=i(s);(""===l||void 0===l)&&(l=null),o.hasOwnProperty(l)||(n.push(l),o[l]=1)}}}var o={},n=[],s=e.getTopLevelNodes();r(s),this.uniqueValues=n},r.prototype.setMiniFilter=function(e){return e=o.makeNull(e),this.miniFilter===e?!1:(this.miniFilter=e,this.filterDisplayedValues(),!0)},r.prototype.getMiniFilter=function(){return this.miniFilter},r.prototype.filterDisplayedValues=function(){if(null===this.miniFilter)return void(this.displayedValues=this.uniqueValues);this.displayedValues=[];for(var e=this.miniFilter.toUpperCase(),t=0,i=this.uniqueValues.length;i>t;t++){var r=this.uniqueValues[t];null!==r&&r.toString().toUpperCase().indexOf(e)>=0&&this.displayedValues.push(r)}},r.prototype.getDisplayedValueCount=function(){return this.displayedValues.length},r.prototype.getDisplayedValue=function(e){return this.displayedValues[e]},r.prototype.selectEverything=function(){for(var e=this.uniqueValues.length,t=0;e>t;t++){var i=this.uniqueValues[t];this.selectedValuesMap[i]=null}this.selectedValuesCount=e},r.prototype.isFilterActive=function(){return this.uniqueValues.length!==this.selectedValuesCount},r.prototype.selectNothing=function(){this.selectedValuesMap={},this.selectedValuesCount=0},r.prototype.getUniqueValueCount=function(){return this.uniqueValues.length},r.prototype.getUniqueValue=function(e){return this.uniqueValues[e]},r.prototype.unselectValue=function(e){void 0!==this.selectedValuesMap[e]&&(delete this.selectedValuesMap[e],this.selectedValuesCount--)},r.prototype.selectValue=function(e){void 0===this.selectedValuesMap[e]&&(this.selectedValuesMap[e]=null,this.selectedValuesCount++)},r.prototype.isValueSelected=function(e){return void 0!==this.selectedValuesMap[e]},r.prototype.isEverythingSelected=function(){return this.uniqueValues.length===this.selectedValuesCount},r.prototype.isNothingSelected=function(){return 0===this.uniqueValues.length},r.prototype.getModel=function(){if(!this.isFilterActive())return null;var e=[];return o.iterateObject(this.selectedValuesMap,function(t){e.push(t)}),e},r.prototype.setModel=function(e){if(e){this.selectNothing();for(var t=0;t<e.length;t++){var i=e[t];this.uniqueValues.indexOf(i)>=0?this.selectValue(e[t]):console.warn("Value "+i+" is not a valid value for filter")}}else this.selectEverything()},t.exports=r},{"../utils":27}],11:[function(e,t,i){var r=["<div>",' <div class="ag-filter-header-container">',' <input class="ag-filter-filter" type="text" placeholder="[SEARCH...]"/>'," </div>",' <div class="ag-filter-header-container">'," <label>",' <input id="selectAll" type="checkbox" class="ag-filter-checkbox"/>'," ([SELECT ALL])"," </label>"," </div>",' <div class="ag-filter-list-viewport">',' <div class="ag-filter-list-container">',' <div id="itemForRepeat" class="ag-filter-item">'," <label>",' <input type="checkbox" class="ag-filter-checkbox" filter-checkbox="true"/>',' <span class="ag-filter-value"></span>'," </label>"," </div>"," </div>"," </div>","</div>"].join("");t.exports=r},{}],12:[function(e,t,i){function r(e){this.filterChangedCallback=e.filterChangedCallback,this.localeTextFunc=e.localeTextFunc,this.valueGetter=e.valueGetter,this.createGui(),this.filterText=null,this.filterType=s,this.createApi()}var o=e("../utils"),n=e("./textFilterTemplate"),s=1,l=2,a=3,d=4;r.prototype.afterGuiAttached=function(){this.eFilterTextField.focus()},r.prototype.doesFilterPass=function(e){if(!this.filterText)return!0;var t=this.valueGetter(e);if(!t)return!1;var i=t.toString().toLowerCase();switch(this.filterType){case s:return i.indexOf(this.filterText)>=0;case l:return i===this.filterText;case a:return 0===i.indexOf(this.filterText);case d:var r=i.indexOf(this.filterText);return r>=0&&r===i.length-this.filterText.length;default:return console.log("invalid filter type "+this.filterType),!1}},r.prototype.getGui=function(){return this.eGui},r.prototype.isFilterActive=function(){return null!==this.filterText},r.prototype.createTemplate=function(){return n.replace("[FILTER...]",this.localeTextFunc("filterOoo","Filter...")).replace("[EQUALS]",this.localeTextFunc("equals","Equals")).replace("[CONTAINS]",this.localeTextFunc("contains","Contains")).replace("[STARTS WITH]",this.localeTextFunc("startsWith","Starts with")).replace("[ENDS WITH]",this.localeTextFunc("endsWith","Ends with"))},r.prototype.createGui=function(){this.eGui=o.loadTemplate(this.createTemplate()),this.eFilterTextField=this.eGui.querySelector("#filterText"),this.eTypeSelect=this.eGui.querySelector("#filterType"),o.addChangeListener(this.eFilterTextField,this.onFilterChanged.bind(this)),this.eTypeSelect.addEventListener("change",this.onTypeChanged.bind(this))},r.prototype.onTypeChanged=function(){this.filterType=parseInt(this.eTypeSelect.value),this.filterChangedCallback()},r.prototype.onFilterChanged=function(){var e=o.makeNull(this.eFilterTextField.value);e&&""===e.trim()&&(e=null),this.filterText=e?e.toLowerCase():null,this.filterChangedCallback()},r.prototype.createApi=function(){var e=this;this.api={EQUALS:l,CONTAINS:s,STARTS_WITH:a,ENDS_WITH:d,setType:function(t){e.filterType=t,e.eTypeSelect.value=t},setFilter:function(t){t=o.makeNull(t),t?(e.filterText=t.toLowerCase(),e.eFilterTextField.value=t):(e.filterText=null,e.eFilterTextField.value=null)},getType:function(){return e.filterType},getFilter:function(){return e.filterText},getModel:function(){return e.isFilterActive()?{type:e.filterType,filter:e.filterText}:null},setModel:function(e){e?(this.setType(e.type),this.setFilter(e.filter)):this.setFilter(null)}}},r.prototype.getApi=function(){return this.api},t.exports=r},{"../utils":27,"./textFilterTemplate":13}],13:[function(e,t,i){var r=["<div>","<div>",'<select class="ag-filter-select" id="filterType">','<option value="1">[CONTAINS]</option>','<option value="2">[EQUALS]</option>','<option value="3">[STARTS WITH]</option>','<option value="4">[ENDS WITH]</option>',"</select>","</div>","<div>",'<input class="ag-filter-filter" id="filterText" type="text" placeholder="[FILTER...]"/>',"</div>","</div>"].join("");t.exports=r},{}],14:[function(e,t,i){function r(e,t,i,r){this.addEnvironmentClasses(e),this.gridOptions=t,this.gridOptionsWrapper=new s(this.gridOptions);var d=!this.gridOptionsWrapper.isDontUseScrolls();e.innerHTML=d?l:a;var u=this;this.quickFilter=null,i&&i.$watch("angularGrid.quickFilterText",function(e){u.onQuickFilterChanged(e)}),this.virtualRowCallbacks={},this.addApi(),this.findAllElements(e),this.createAndWireBeans(i,r,e,d),this.scrollWidth=o.getScrollbarWidth(),this.inMemoryRowController.setAllRows(this.gridOptionsWrapper.getAllRows()),d&&(this.addScrollListener(),this.setBodySize()),this.setupColumns(),this.updateModelAndRefresh(n.STEP_EVERYTHING),this.finished=!1;var p=!this.gridOptionsWrapper.getAllRows()&&!this.gridOptionsWrapper.isVirtualPaging();this.showLoadingPanel(p),this.gridOptionsWrapper.getDatasource()&&this.setDatasource(),"function"==typeof this.gridOptionsWrapper.getReady()&&this.gridOptionsWrapper.getReady()(t.api)}var o=e("./utils"),n=e("./constants"),s=e("./gridOptionsWrapper"),l=e("./template.js"),a=e("./templateNoScrolls.js"),d=e("./selectionController"),u=e("./filter/filterManager"),p=e("./selectionRendererFactory"),c=e("./columnController"),h=e("./rowRenderer"),f=e("./headerRenderer"),g=e("./inMemoryRowController"),v=e("./virtualPageRowController"),y=e("./paginationController"),C=e("./expressionService"),w=e("./templateService");r.prototype.addEnvironmentClasses=function(e){var t="ag-env-"+n.PLATFORM+"-"+n.BROWSER;o.addCssClass(e,t)},r.prototype.createAndWireBeans=function(e,t,i,r){var o=this.gridOptionsWrapper,n=this.gridOptions,s=new d,l=new u,a=new p,m=new c,R=new h,S=new f,b=new g,A=new v,x=new C,O=new w,F=m.getModel();O.init(e),s.init(this,this.eParentOfRows,o,e,R),l.init(this,o,t,e,x,F),a.init(this,s),m.init(this,a,o),R.init(n,F,o,i,this,a,t,e,s,x,O,this.eParentOfRows),S.init(o,m,F,i,this,l,e,t),b.init(o,F,this,l,e,x),A.init(R);var T=b.getModel();s.setRowModel(T),l.setRowModel(T),R.setRowModel(T);var E=null;r&&(E=new y,E.init(this.ePagingPanel,this,o)),this.rowModel=T,this.selectionController=s,this.columnController=m,this.columnModel=F,this.inMemoryRowController=b,this.virtualPageRowController=A,this.rowRenderer=R,this.headerRenderer=S,this.paginationController=E,this.filterManager=l},r.prototype.showAndPositionPagingPanel=function(){
if(this.ePagingPanel)if(this.isShowPagingPanel()){this.ePagingPanel.style.display="inline";var e=this.ePagingPanel.offsetHeight;this.eBody.style["padding-bottom"]=e+"px";var t=this.eRoot.clientHeight,i=t-e;this.ePagingPanel.style.top=i+"px"}else this.ePagingPanel.style.display="none",this.eBody.style["padding-bottom"]=null},r.prototype.isShowPagingPanel=function(){return this.showPagingPanel},r.prototype.setDatasource=function(e){e&&(this.gridOptions.datasource=e);var t=this.gridOptionsWrapper.getDatasource();this.doingVirtualPaging=this.gridOptionsWrapper.isVirtualPaging()&&t,this.doingPagination=t&&!this.doingVirtualPaging,this.doingVirtualPaging?(this.paginationController.setDatasource(null),this.virtualPageRowController.setDatasource(t),this.rowModel=this.virtualPageRowController.getModel(),this.showPagingPanel=!1):this.doingPagination?(this.paginationController.setDatasource(t),this.virtualPageRowController.setDatasource(null),this.rowModel=this.inMemoryRowController.getModel(),this.showPagingPanel=!0):(this.paginationController.setDatasource(null),this.virtualPageRowController.setDatasource(null),this.rowModel=this.inMemoryRowController.getModel(),this.showPagingPanel=!1),this.selectionController.setRowModel(this.rowModel),this.filterManager.setRowModel(this.rowModel),this.rowRenderer.setRowModel(this.rowModel),this.setBodySize(),this.rowRenderer.refreshView()},r.prototype.refreshHeaderAndBody=function(){this.headerRenderer.refreshHeader(),this.headerRenderer.updateFilterIcons(),this.setBodyContainerWidth(),this.setPinnedColContainerWidth(),this.rowRenderer.refreshView()},r.prototype.setFinished=function(){this.finished=!0},r.prototype.getPopupParent=function(){return this.eRoot},r.prototype.getQuickFilter=function(){return this.quickFilter},r.prototype.onQuickFilterChanged=function(e){(void 0===e||""===e)&&(e=null),this.quickFilter!==e&&((void 0===e||""===e)&&(e=null),null!==e&&(e=e.toUpperCase()),this.quickFilter=e,this.onFilterChanged())},r.prototype.onFilterChanged=function(){this.updateModelAndRefresh(n.STEP_FILTER),this.headerRenderer.updateFilterIcons()},r.prototype.onRowClicked=function(e,t,i){if(this.gridOptions.rowClicked){var r={node:i,data:i.data,event:e};this.gridOptions.rowClicked(r)}if(!i.group){var o=this.gridOptionsWrapper,n=this.selectionController;if(o.isRowSelection()&&!o.isSuppressRowClickSelection()){var s=e.ctrlKey||e.metaKey,l=s&&n.isNodeSelected(i)&&o.isRowDeselection();if(l)n.deselectNode(i);else{var a=s;n.selectNode(i,a)}}}},r.prototype.setHeaderHeight=function(){var e=this.gridOptionsWrapper.getHeaderHeight(),t=e+"px",i=this.gridOptionsWrapper.isDontUseScrolls();i?this.eHeaderContainer.style.height=t:(this.eHeader.style.height=t,this.eBody.style["padding-top"]=t,this.eLoadingPanel.style["margin-top"]=t)},r.prototype.showLoadingPanel=function(e){this.eLoadingPanel.style.display=e?"table":"none"},r.prototype.setupColumns=function(){this.setHeaderHeight(),this.columnController.setColumns(this.gridOptionsWrapper.getColumnDefs()),this.showPinnedColContainersIfNeeded(),this.headerRenderer.refreshHeader(),this.gridOptionsWrapper.isDontUseScrolls()||(this.setPinnedColContainerWidth(),this.setBodyContainerWidth()),this.headerRenderer.updateFilterIcons()},r.prototype.setBodyContainerWidth=function(){var e=this.columnModel.getBodyContainerWidth()+"px";this.eBodyContainer.style.width=e},r.prototype.updateModelAndRefresh=function(e,t){this.inMemoryRowController.updateModel(e),this.rowRenderer.refreshView(t)},r.prototype.setRows=function(e,t){e&&(this.gridOptions.rowData=e),this.inMemoryRowController.setAllRows(this.gridOptionsWrapper.getAllRows(),t),this.selectionController.deselectAll(),this.filterManager.onNewRowsLoaded(),this.updateModelAndRefresh(n.STEP_EVERYTHING),this.headerRenderer.updateFilterIcons(),this.showLoadingPanel(!1)},r.prototype.ensureNodeVisible=function(e){if(this.doingVirtualPaging)throw"Cannot use ensureNodeVisible when doing virtual paging, as we cannot check rows that are not in memory";for(var t=this.rowModel.getVirtualRowCount(),i="function"==typeof e,r=-1,o=0;t>o;o++){var n=this.rowModel.getVirtualRow(o);if(i){if(e(n)){r=o;break}}else if(e===n||e===n.data){r=o;break}}r>=0&&this.ensureIndexVisible(r)},r.prototype.ensureIndexVisible=function(e){var t=this.rowModel.getVirtualRowCount();if("number"!=typeof e||0>e||e>=t)return void console.warn("invalid row index for ensureIndexVisible: "+e);var i=this.gridOptionsWrapper.getRowHeight(),r=i*e,o=r+i,n=this.eBodyViewport.scrollTop,s=this.eBodyViewport.offsetHeight,l=this.eBodyViewport.clientWidth<this.eBodyViewport.scrollWidth;l&&(s-=this.scrollWidth);var a=n+s,d=n>r,u=o>a;if(d)this.eBodyViewport.scrollTop=r;else if(u){var p=o-s;this.eBodyViewport.scrollTop=p}},r.prototype.ensureColIndexVisible=function(e){if("number"!=typeof e)return void console.warn("col index must be a number: "+e);var t=this.columnModel.getVisibleColumns();if("number"!=typeof e||0>e||e>=t.length)return void console.warn("invalid col index for ensureColIndexVisible: "+e+", should be between 0 and "+(t.length-1));var i=t[e],r=this.gridOptionsWrapper.getPinnedColCount();if(r>e)return void console.warn("invalid col index for ensureColIndexVisible: "+e+", scrolling to a pinned col makes no sense");for(var o=0,n=r;e>n;n++)o+=t[n].actualWidth;var s=o+i.actualWidth,l=this.eBodyViewport.scrollLeft,a=this.eBodyViewport.offsetWidth,d=this.eBodyViewport.clientHeight<this.eBodyViewport.scrollHeight;d&&(a-=this.scrollWidth);var u=l+a,p=l>o,c=s>u;if(p)this.eBodyViewport.scrollLeft=o;else if(c){var h=s-a;this.eBodyViewport.scrollLeft=h}},r.prototype.addApi=function(){var e=this,t={setDatasource:function(t){e.setDatasource(t)},onNewDatasource:function(){e.setDatasource()},setRows:function(t){e.setRows(t)},onNewRows:function(){e.setRows()},onNewCols:function(){e.onNewCols()},unselectAll:function(){console.error("unselectAll deprecated, call deselectAll instead"),this.deselectAll()},refreshView:function(){e.rowRenderer.refreshView()},softRefreshView:function(){e.rowRenderer.softRefreshView()},refreshGroupRows:function(){e.rowRenderer.refreshGroupRows()},refreshHeader:function(){e.headerRenderer.refreshHeader(),e.headerRenderer.updateFilterIcons()},getModel:function(){return e.rowModel},onGroupExpandedOrCollapsed:function(t){e.updateModelAndRefresh(n.STEP_MAP,t)},expandAll:function(){e.inMemoryRowController.expandOrCollapseAll(!0,null),e.updateModelAndRefresh(n.STEP_MAP)},collapseAll:function(){e.inMemoryRowController.expandOrCollapseAll(!1,null),e.updateModelAndRefresh(n.STEP_MAP)},addVirtualRowListener:function(t,i){e.addVirtualRowListener(t,i)},rowDataChanged:function(t){e.rowRenderer.rowDataChanged(t)},setQuickFilter:function(t){e.onQuickFilterChanged(t)},selectIndex:function(t,i,r){e.selectionController.selectIndex(t,i,r)},deselectIndex:function(t){e.selectionController.deselectIndex(t)},selectNode:function(t,i,r){e.selectionController.selectNode(t,i,r)},deselectNode:function(t){e.selectionController.deselectNode(t)},selectAll:function(){e.selectionController.selectAll(),e.rowRenderer.refreshView()},deselectAll:function(){e.selectionController.deselectAll(),e.rowRenderer.refreshView()},recomputeAggregates:function(){e.inMemoryRowController.doAggregate(),e.rowRenderer.refreshGroupRows()},sizeColumnsToFit:function(){var t=e.eBody.clientWidth,i=e.eBodyViewport.clientHeight<e.eBodyViewport.scrollHeight;i&&(t-=e.scrollWidth),e.columnController.sizeColumnsToFit(t)},showLoading:function(t){e.showLoadingPanel(t)},isNodeSelected:function(t){return e.selectionController.isNodeSelected(t)},getSelectedNodes:function(){return e.selectionController.getSelectedNodes()},getBestCostNodeSelection:function(){return e.selectionController.getBestCostNodeSelection()},ensureColIndexVisible:function(t){return e.ensureColIndexVisible(t)},ensureIndexVisible:function(t){return e.ensureIndexVisible(t)},ensureNodeVisible:function(t){return e.ensureNodeVisible(t)},forEachInMemory:function(t){e.rowModel.forEachInMemory(t)},getFilterApiForColDef:function(e){return console.warn("ag-grid API method getFilterApiForColDef deprecated, use getFilterApi instead"),this.getFilterApi(e)},getFilterApi:function(t){var i=e.columnModel.getColumn(t);return e.filterManager.getFilterApi(i)},onFilterChanged:function(){e.onFilterChanged()},setSortModel:function(t){e.setSortModel(t)},getSortModel:function(){return e.getSortModel()},setFilterModel:function(t){e.filterManager.setFilterModel(t)},getFilterModel:function(){return e.filterManager.getFilterModel()}};this.gridOptions.api=t},r.prototype.getSortModel=function(){var e,t=this.columnModel.getAllColumns(),i=[];for(e=0;e<t.length;e++)t[e].sort&&i.push(t[e]);i.sort(function(e,t){return e.sortedAt-t.sortedAt});var r=[];for(e=0;e<i.length;e++){var o={field:i[e].colDef.field,sort:i[e].sort};r.push(o)}return r},r.prototype.setSortModel=function(e){for(var t=null!==e&&void 0!==e&&e.length>0,i=this.columnModel.getAllColumns(),r=0;r<i.length;r++){var o=i[r],s=null,l=-1;if(t&&!o.colDef.suppressSorting)for(var a=0;a<e.length;a++){var d=e[a];"string"==typeof d.field&&"string"==typeof o.colDef.field&&d.field===o.colDef.field&&(s=d.sort,l=a)}s?(o.sort=s,o.sortedAt=l):(o.sort=null,o.sortedAt=null)}this.headerRenderer.updateSortIcons(),this.updateModelAndRefresh(n.STEP_SORT)},r.prototype.addVirtualRowListener=function(e,t){this.virtualRowCallbacks[e]||(this.virtualRowCallbacks[e]=[]),this.virtualRowCallbacks[e].push(t)},r.prototype.onVirtualRowSelected=function(e,t){this.virtualRowCallbacks[e]&&this.virtualRowCallbacks[e].forEach(function(e){"function"==typeof e.rowRemoved&&e.rowSelected(t)})},r.prototype.onVirtualRowRemoved=function(e){this.virtualRowCallbacks[e]&&this.virtualRowCallbacks[e].forEach(function(e){"function"==typeof e.rowRemoved&&e.rowRemoved()}),delete this.virtualRowCallbacks[e]},r.prototype.onNewCols=function(){this.setupColumns(),this.updateModelAndRefresh(n.STEP_EVERYTHING)},r.prototype.findAllElements=function(e){this.gridOptionsWrapper.isDontUseScrolls()?(this.eRoot=e.querySelector(".ag-root"),this.eHeaderContainer=e.querySelector(".ag-header-container"),this.eBodyContainer=e.querySelector(".ag-body-container"),this.eLoadingPanel=e.querySelector(".ag-loading-panel"),this.eParentOfRows=this.eBodyContainer):(this.eRoot=e.querySelector(".ag-root"),this.eBody=e.querySelector(".ag-body"),this.eBodyContainer=e.querySelector(".ag-body-container"),this.eBodyViewport=e.querySelector(".ag-body-viewport"),this.eBodyViewportWrapper=e.querySelector(".ag-body-viewport-wrapper"),this.ePinnedColsContainer=e.querySelector(".ag-pinned-cols-container"),this.ePinnedColsViewport=e.querySelector(".ag-pinned-cols-viewport"),this.ePinnedHeader=e.querySelector(".ag-pinned-header"),this.eHeader=e.querySelector(".ag-header"),this.eHeaderContainer=e.querySelector(".ag-header-container"),this.eLoadingPanel=e.querySelector(".ag-loading-panel"),this.eParentOfRows=this.eBody,this.ePagingPanel=e.querySelector(".ag-paging-panel"))},r.prototype.showPinnedColContainersIfNeeded=function(){if(!this.gridOptionsWrapper.isDontUseScrolls()){var e=this.gridOptionsWrapper.getPinnedColCount()>0;e?(this.ePinnedHeader.style.display="inline-block",this.ePinnedColsViewport.style.display="inline"):(this.ePinnedHeader.style.display="none",this.ePinnedColsViewport.style.display="none")}},r.prototype.updateBodyContainerWidthAfterColResize=function(){this.rowRenderer.setMainRowWidths(),this.setBodyContainerWidth()},r.prototype.updatePinnedColContainerWidthAfterColResize=function(){this.setPinnedColContainerWidth()},r.prototype.setPinnedColContainerWidth=function(){var e=this.columnModel.getPinnedContainerWidth()+"px";this.ePinnedColsContainer.style.width=e,this.eBodyViewportWrapper.style.marginLeft=e},r.prototype.setPinnedColHeight=function(){var e=this.eBodyViewport.clientWidth<this.eBodyViewport.scrollWidth,t=this.eBodyViewport.offsetHeight;this.ePinnedColsViewport.style.height=e?t-this.scrollWidth+"px":t+"px",this.eLoadingPanel.style.height=t+"px"},r.prototype.setBodySize=function(){var e=this,t=this.eBodyViewport.offsetHeight,i=this.isShowPagingPanel();(this.bodyHeightLastTime!=t||this.showPagingPanelVisibleLastTime!=i)&&(this.bodyHeightLastTime=t,this.showPagingPanelVisibleLastTime=i,this.setPinnedColHeight(),this.rowModel.getVirtualRowCount()>0&&this.rowRenderer.drawVirtualRows(),this.showAndPositionPagingPanel()),this.finished||setTimeout(function(){e.setBodySize()},200)},r.prototype.addScrollListener=function(){var e=this,t=-1,i=-1;this.eBodyViewport.addEventListener("scroll",function(){var r=e.eBodyViewport.scrollLeft,o=e.eBodyViewport.scrollTop;r!==t&&(t=r,e.scrollHeader(r)),o!==i&&(i=o,e.scrollPinned(o),e.rowRenderer.drawVirtualRows())}),this.ePinnedColsViewport.addEventListener("scroll",function(){e.ePinnedColsViewport.scrollTop=0})},r.prototype.scrollHeader=function(e){this.eHeaderContainer.style.left=-e+"px"},r.prototype.scrollPinned=function(e){this.ePinnedColsContainer.style.top=-e+"px"},t.exports=r},{"./columnController":3,"./constants":4,"./expressionService":5,"./filter/filterManager":6,"./gridOptionsWrapper":15,"./headerRenderer":17,"./inMemoryRowController":18,"./paginationController":19,"./rowRenderer":20,"./selectionController":21,"./selectionRendererFactory":22,"./template.js":24,"./templateNoScrolls.js":25,"./templateService":26,"./utils":27,"./virtualPageRowController":28}],15:[function(e,t,i){function r(e){this.gridOptions=e,this.setupDefaults()}function o(e){return e===!0||"true"===e}var n=30;r.prototype.isRowSelection=function(){return"single"===this.gridOptions.rowSelection||"multiple"===this.gridOptions.rowSelection},r.prototype.isRowDeselection=function(){return o(this.gridOptions.rowDeselection)},r.prototype.isRowSelectionMulti=function(){return"multiple"===this.gridOptions.rowSelection},r.prototype.getContext=function(){return this.gridOptions.context},r.prototype.isVirtualPaging=function(){return o(this.gridOptions.virtualPaging)},r.prototype.isRowsAlreadyGrouped=function(){return o(this.gridOptions.rowsAlreadyGrouped)},r.prototype.isGroupSelectsChildren=function(){return o(this.gridOptions.groupSelectsChildren)},r.prototype.isGroupIncludeFooter=function(){return o(this.gridOptions.groupIncludeFooter)},r.prototype.isSuppressRowClickSelection=function(){return o(this.gridOptions.suppressRowClickSelection)},r.prototype.isSuppressCellSelection=function(){return o(this.gridOptions.suppressCellSelection)},r.prototype.isGroupHeaders=function(){return o(this.gridOptions.groupHeaders)},r.prototype.getGroupInnerRenderer=function(){return this.gridOptions.groupInnerRenderer},r.prototype.isDontUseScrolls=function(){return o(this.gridOptions.dontUseScrolls)},r.prototype.getRowStyle=function(){return this.gridOptions.rowStyle},r.prototype.getRowClass=function(){return this.gridOptions.rowClass},r.prototype.getGridOptions=function(){return this.gridOptions},r.prototype.getHeaderCellRenderer=function(){return this.gridOptions.headerCellRenderer},r.prototype.getApi=function(){return this.gridOptions.api},r.prototype.isEnableSorting=function(){return this.gridOptions.enableSorting},r.prototype.isEnableColResize=function(){return this.gridOptions.enableColResize},r.prototype.isEnableFilter=function(){return this.gridOptions.enableFilter},r.prototype.getColWidth=function(){return this.gridOptions.colWidth},r.prototype.getGroupDefaultExpanded=function(){return this.gridOptions.groupDefaultExpanded},r.prototype.getGroupKeys=function(){return this.gridOptions.groupKeys},r.prototype.getGroupAggFunction=function(){return this.gridOptions.groupAggFunction},r.prototype.getGroupAggFields=function(){return this.gridOptions.groupAggFields},r.prototype.getAllRows=function(){return this.gridOptions.rowData},r.prototype.isGroupUseEntireRow=function(){return o(this.gridOptions.groupUseEntireRow)},r.prototype.isAngularCompileRows=function(){return o(this.gridOptions.angularCompileRows)},r.prototype.isAngularCompileFilters=function(){return o(this.gridOptions.angularCompileFilters)},r.prototype.isAngularCompileHeaders=function(){return o(this.gridOptions.angularCompileHeaders)},r.prototype.getColumnDefs=function(){return this.gridOptions.columnDefs},r.prototype.getRowHeight=function(){return this.gridOptions.rowHeight},r.prototype.getModelUpdated=function(){return this.gridOptions.modelUpdated},r.prototype.getCellClicked=function(){return this.gridOptions.cellClicked},r.prototype.getCellDoubleClicked=function(){return this.gridOptions.cellDoubleClicked},r.prototype.getCellValueChanged=function(){return this.gridOptions.cellValueChanged},r.prototype.getRowSelected=function(){return this.gridOptions.rowSelected},r.prototype.getSelectionChanged=function(){return this.gridOptions.selectionChanged},r.prototype.getVirtualRowRemoved=function(){return this.gridOptions.virtualRowRemoved},r.prototype.getDatasource=function(){return this.gridOptions.datasource},r.prototype.getReady=function(){return this.gridOptions.ready},r.prototype.getRowBuffer=function(){return this.gridOptions.rowBuffer},r.prototype.setSelectedRows=function(e){return this.gridOptions.selectedRows=e},r.prototype.setSelectedNodesById=function(e){return this.gridOptions.selectedNodesById=e},r.prototype.getIcons=function(){return this.gridOptions.icons},r.prototype.isDoInternalGrouping=function(){return!this.isRowsAlreadyGrouped()&&this.gridOptions.groupKeys},r.prototype.getHeaderHeight=function(){return"number"==typeof this.gridOptions.headerHeight?this.gridOptions.headerHeight:this.isGroupHeaders()?50:25},r.prototype.setupDefaults=function(){this.gridOptions.rowHeight||(this.gridOptions.rowHeight=n)},r.prototype.getPinnedColCount=function(){return this.isDontUseScrolls()?0:this.gridOptions.pinnedColumnCount?Number(this.gridOptions.pinnedColumnCount):0},r.prototype.getLocaleTextFunc=function(){var e=this;return function(t,i){var r=e.gridOptions.localeText;return r&&r[t]?r[t]:i}},t.exports=r},{}],16:[function(e,t,i){function r(){}r.prototype.group=function(e,t,i,r){var o={level:-1,children:[],childrenMap:{}},n=[];n.push(o);var s,l,a,d,u,p,c,h,f=t.length-1,g=-1;for(s=0;s<e.length;s++)for(a=e[s],d=a.data,a.level=f+1,l=0;l<t.length;l++)p=t[l],c=d[p],0==l&&(u=o),h=u.childrenMap[c],h||(h={group:!0,field:p,id:g--,key:c,expanded:this.isExpanded(r,l),children:[],parent:u===o?null:u,allChildrenCount:0,level:u.level+1,childrenMap:{}},u.childrenMap[c]=h,u.children.push(h),n.push(h)),h.allChildrenCount++,l==f?(a.parent=h===o?null:h,h.children.push(a)):u=h;for(s=0;s<n.length;s++)delete n[s].childrenMap;return o.children},r.prototype.isExpanded=function(e,t){return"number"==typeof e?e>t:e===!0||"true"===e},t.exports=new r},{}],17:[function(e,t,i){function r(){}var o=e("./utils"),n=e("./svgFactory"),s=e("./constants"),l=new n;r.prototype.init=function(e,t,i,r,o,n,s,l){this.gridOptionsWrapper=e,this.columnModel=i,this.columnController=t,this.angularGrid=o,this.filterManager=n,this.$scope=s,this.$compile=l,this.findAllElements(r)},r.prototype.findAllElements=function(e){this.gridOptionsWrapper.isDontUseScrolls()?(this.eHeaderContainer=e.querySelector(".ag-header-container"),this.eRoot=e.querySelector(".ag-root"),this.eHeaderParent=this.eHeaderContainer):(this.ePinnedHeader=e.querySelector(".ag-pinned-header"),this.eHeaderContainer=e.querySelector(".ag-header-container"),this.eHeader=e.querySelector(".ag-header"),this.eRoot=e.querySelector(".ag-root"),this.eHeaderParent=this.eHeader)},r.prototype.refreshHeader=function(){o.removeAllChildren(this.ePinnedHeader),o.removeAllChildren(this.eHeaderContainer),this.childScopes&&this.childScopes.forEach(function(e){e.$destroy()}),this.childScopes=[],this.gridOptionsWrapper.isGroupHeaders()?this.insertHeadersWithGrouping():this.insertHeadersWithoutGrouping()},r.prototype.insertHeadersWithGrouping=function(){var e=this.columnModel.getColumnGroups(),t=this;e.forEach(function(e){var i=t.createGroupedHeaderCell(e),r=e.pinned?t.ePinnedHeader:t.eHeaderContainer;r.appendChild(i)})},r.prototype.createGroupedHeaderCell=function(e){var t=document.createElement("div");t.className="ag-header-group";var i=document.createElement("div");e.eHeaderGroupCell=i;var r=["ag-header-group-cell"];if(r.push(e.name?"ag-header-group-cell-with-group":"ag-header-group-cell-no-group"),i.className=r.join(" "),this.gridOptionsWrapper.isEnableColResize()){var o=document.createElement("div");o.className="ag-header-cell-resize",i.appendChild(o),e.eHeaderCellResize=o;var n=this.groupDragCallbackFactory(e);this.addDragHandler(o,n)}var s=e.name;if(s&&""!==s){var l=document.createElement("div");l.className="ag-header-group-cell-label",i.appendChild(l);var a=document.createElement("span");a.className="ag-header-group-text",a.innerHTML=s,l.appendChild(a),e.expandable&&this.addGroupExpandIcon(e,l,e.expanded)}t.appendChild(i);var d=this;return e.visibleColumns.forEach(function(i){var r=d.createHeaderCell(i,!0,e);t.appendChild(r)}),d.setWidthOfGroupHeaderCell(e),t},r.prototype.addGroupExpandIcon=function(e,t,i){var r;r=i?o.createIcon("columnGroupOpened",this.gridOptionsWrapper,null,l.createArrowLeftSvg):o.createIcon("columnGroupClosed",this.gridOptionsWrapper,null,l.createArrowRightSvg),r.className="ag-header-expand-icon",t.appendChild(r);var n=this;r.onclick=function(){n.columnController.columnGroupOpened(e)}},r.prototype.addDragHandler=function(e,t){var i=this;e.onmousedown=function(e){t.onDragStart(),i.eRoot.style.cursor="col-resize",i.dragStartX=e.clientX,i.eRoot.onmousemove=function(e){var r=e.clientX,o=r-i.dragStartX;t.onDragging(o)},i.eRoot.onmouseup=function(){i.stopDragging()},i.eRoot.onmouseleave=function(){i.stopDragging()}}},r.prototype.setWidthOfGroupHeaderCell=function(e){var t=0;e.visibleColumns.forEach(function(e){t+=e.actualWidth}),e.eHeaderGroupCell.style.width=o.formatWidth(t),e.actualWidth=t},r.prototype.insertHeadersWithoutGrouping=function(){var e=this.ePinnedHeader,t=this.eHeaderContainer,i=this;this.columnModel.getVisibleColumns().forEach(function(r){var o=i.createHeaderCell(r,!1);r.pinned?e.appendChild(o):t.appendChild(o)})},r.prototype.createHeaderCell=function(e,t,i){var r=this,n=e.colDef,s=document.createElement("div");e.eHeaderCell=s;var a=["ag-header-cell"];if(a.push(t?"ag-header-cell-grouped":"ag-header-cell-not-grouped"),s.className=a.join(" "),n.headerTooltip&&(s.title=n.headerTooltip),this.gridOptionsWrapper.isEnableColResize()){var d=document.createElement("div");d.className="ag-header-cell-resize",s.appendChild(d);var u=this.headerDragCallbackFactory(s,e,i);this.addDragHandler(d,u)}var p=this.gridOptionsWrapper.isEnableFilter()&&!n.suppressMenu;if(p){var c=o.createIcon("menu",this.gridOptionsWrapper,e,l.createMenuSvg);o.addCssClass(c,"ag-header-icon"),c.setAttribute("class","ag-header-cell-menu-button"),c.onclick=function(){r.filterManager.showFilter(e,this)},s.appendChild(c),s.onmouseenter=function(){c.style.opacity=1},s.onmouseleave=function(){c.style.opacity=0},c.style.opacity=0,c.style["-webkit-transition"]="opacity 0.5s, border 0.2s",c.style.transition="opacity 0.5s, border 0.2s"}var h=document.createElement("div");h.className="ag-header-cell-label",this.gridOptionsWrapper.isEnableSorting()&&!n.suppressSorting&&(e.eSortAsc=o.createIcon("sortAscending",this.gridOptionsWrapper,e,l.createArrowDownSvg),e.eSortDesc=o.createIcon("sortDescending",this.gridOptionsWrapper,e,l.createArrowUpSvg),o.addCssClass(e.eSortAsc,"ag-header-icon"),o.addCssClass(e.eSortDesc,"ag-header-icon"),h.appendChild(e.eSortAsc),h.appendChild(e.eSortDesc),e.eSortAsc.style.display="none",e.eSortDesc.style.display="none",this.addSortHandling(h,e)),e.eFilterIcon=o.createIcon("filter",this.gridOptionsWrapper,e,l.createFilterSvg),o.addCssClass(e.eFilterIcon,"ag-header-icon"),h.appendChild(e.eFilterIcon);var f;if(n.headerCellRenderer?f=n.headerCellRenderer:this.gridOptionsWrapper.getHeaderCellRenderer()&&(f=this.gridOptionsWrapper.getHeaderCellRenderer()),f){var g;this.gridOptionsWrapper.isAngularCompileHeaders()&&(g=this.$scope.$new());var v,y={colDef:n,$scope:g,context:this.gridOptionsWrapper.getContext(),api:this.gridOptionsWrapper.getApi()},C=f(y);if(o.isNodeOrElement(C))v=C;else{var w=document.createElement("span");w.innerHTML=C,v=w}if(this.gridOptionsWrapper.isAngularCompileHeaders()){g.colDef=n,g.colIndex=n.index,g.colDefWrapper=e,this.childScopes.push(g);var m=this.$compile(v)(g)[0];h.appendChild(m)}else h.appendChild(v)}else{var R=document.createElement("span");R.className="ag-header-cell-text",R.innerHTML=n.displayName,h.appendChild(R)}return s.appendChild(h),s.style.width=o.formatWidth(e.actualWidth),s},r.prototype.addSortHandling=function(e,t){var i=this;e.addEventListener("click",function(e){t.sort=t.sort===s.DESC?null:t.sort===s.ASC?s.DESC:s.ASC,t.sortedAt=t.sort?(new Date).valueOf():null,i.columnModel.getAllColumns().forEach(function(i){e.shiftKey||i===t||(i.sort=null)}),i.updateSortIcons(),i.angularGrid.updateModelAndRefresh(s.STEP_SORT)})},r.prototype.updateSortIcons=function(){this.columnModel.getAllColumns().forEach(function(e){var t=e.sort===s.ASC,i=e.sort===s.DESC;e.eSortAsc&&o.setVisible(e.eSortAsc,t),e.eSortDesc&&o.setVisible(e.eSortDesc,i)})},r.prototype.groupDragCallbackFactory=function(e){var t=this,i=e.visibleColumns;return{onDragStart:function(){this.groupWidthStart=e.actualWidth,this.childrenWidthStarts=[];var t=this;i.forEach(function(e){t.childrenWidthStarts.push(e.actualWidth)}),this.minWidth=i.length*s.MIN_COL_WIDTH},onDragging:function(r){var o=this.groupWidthStart+r;o<this.minWidth&&(o=this.minWidth);var n=o+"px";e.eHeaderGroupCell.style.width=n,e.actualWidth=o;var l=o/this.groupWidthStart,a=o,d=this;e.visibleColumns.forEach(function(e,r){var o,n=r!==i.length-1;if(n){var u=d.childrenWidthStarts[r];o=u*l,o<s.MIN_COL_WIDTH&&(o=s.MIN_COL_WIDTH),a-=o}else o=a;var p=i[r].eHeaderCell;t.adjustColumnWidth(o,e,p)}),e.pinned?t.angularGrid.updatePinnedColContainerWidthAfterColResize():t.angularGrid.updateBodyContainerWidthAfterColResize()}}},r.prototype.adjustColumnWidth=function(e,t,i){for(var r=e+"px",o=".cell-col-"+t.index,n=this.eRoot.querySelectorAll(o),s=0;s<n.length;s++)n[s].style.width=r;i.style.width=r,t.actualWidth=e},r.prototype.headerDragCallbackFactory=function(e,t,i){var r=this;return{onDragStart:function(){this.startWidth=t.actualWidth},onDragging:function(o){var n=this.startWidth+o;n<s.MIN_COL_WIDTH&&(n=s.MIN_COL_WIDTH),r.adjustColumnWidth(n,t,e),i&&r.setWidthOfGroupHeaderCell(i),t.pinned?r.angularGrid.updatePinnedColContainerWidthAfterColResize():r.angularGrid.updateBodyContainerWidthAfterColResize()}}},r.prototype.stopDragging=function(){this.eRoot.style.cursor="",this.eRoot.onmouseup=null,this.eRoot.onmouseleave=null,this.eRoot.onmousemove=null},r.prototype.updateFilterIcons=function(){var e=this;this.columnModel.getVisibleColumns().forEach(function(t){if(t.eFilterIcon){var i=e.filterManager.isFilterPresentForCol(t.colKey),r=i?"inline":"none";t.eFilterIcon.style.display=r}})},t.exports=r},{"./constants":4,"./svgFactory":23,"./utils":27}],18:[function(e,t,i){function r(){this.createModel()}var o=e("./groupCreator"),n=e("./utils"),s=e("./constants");r.prototype.init=function(e,t,i,r,o,n){this.gridOptionsWrapper=e,this.columnModel=t,this.angularGrid=i,this.filterManager=r,this.$scope=o,this.expressionService=n,this.allRows=null,this.rowsAfterGroup=null,this.rowsAfterFilter=null,this.rowsAfterSort=null,this.rowsAfterMap=null},r.prototype.createModel=function(){var e=this;this.model={getTopLevelNodes:function(){return e.rowsAfterGroup},getVirtualRow:function(t){return e.rowsAfterMap[t]},getVirtualRowCount:function(){return e.rowsAfterMap?e.rowsAfterMap.length:0},forEachInMemory:function(t){e.forEachInMemory(t)}}},r.prototype.getModel=function(){return this.model},r.prototype.forEachInMemory=function(e){function t(e,i){if(e)for(var r=0;r<e.length;r++){var o=e[r];i(o),o.group&&group.children&&t(group.children)}}t(this.rowsAfterGroup,e)},r.prototype.updateModel=function(e){switch(e){case s.STEP_EVERYTHING:this.doGrouping();case s.STEP_FILTER:this.doFilter(),this.doAggregate();case s.STEP_SORT:this.doSort();case s.STEP_MAP:this.doGroupMapping()}if("function"==typeof this.gridOptionsWrapper.getModelUpdated()){this.gridOptionsWrapper.getModelUpdated()();var t=this.$scope;t&&setTimeout(function(){t.$apply()},0)}},r.prototype.defaultGroupAggFunctionFactory=function(e){return function(t){for(var i={},r=0;r<e.length;r++){for(var o=e[r],n=null,s=0;s<t.length;s++){var l=t[s],a=l.data[o];"number"==typeof a&&(n+=a)}i[o]=n}return i}},r.prototype.getValue=function(e,t,i,r){var o=this.gridOptionsWrapper.getApi(),s=this.gridOptionsWrapper.getContext();return n.getValue(this.expressionService,e,t,i,r,o,s)},r.prototype.doAggregate=function(){var e=this.gridOptionsWrapper.getGroupAggFunction();if("function"==typeof e)return void this.recursivelyCreateAggData(this.rowsAfterFilter,e);var t=this.gridOptionsWrapper.getGroupAggFields();if(t){var i=this.defaultGroupAggFunctionFactory(t);return void this.recursivelyCreateAggData(this.rowsAfterFilter,i)}},r.prototype.expandOrCollapseAll=function(e,t){if(null===t&&(t=this.rowsAfterGroup),t){var i=this;t.forEach(function(t){t.group&&(t.expanded=e,i.expandOrCollapseAll(e,t.children))})}},r.prototype.recursivelyCreateAggData=function(e,t){for(var i=0,r=e.length;r>i;i++){var o=e[i];if(o.group){this.recursivelyCreateAggData(o.childrenAfterFilter,t);var n=t(o.childrenAfterFilter);o.data=n,o.sibling&&(o.sibling.data=n)}}},r.prototype.doSort=function(){var e=[];this.columnModel.getAllColumns().forEach(function(t){if(t.sort){var i=t.sort===s.ASC;e.push({inverter:i?1:-1,sortedAt:t.sortedAt,colDef:t.colDef})}}),e.sort(function(e,t){return e.sortedAt-t.sortedAt});var t=this.rowsAfterFilter?this.rowsAfterFilter.slice(0):null;e.length?this.sortList(t,e):this.recursivelyResetSort(t),this.rowsAfterSort=t},r.prototype.recursivelyResetSort=function(e){if(e)for(var t=0,i=e.length;i>t;t++){var r=e[t];r.group&&r.children&&(r.childrenAfterSort=r.childrenAfterFilter,this.recursivelyResetSort(r.children))}},r.prototype.sortList=function(e,t){function i(e,t,i){var r=l.getValue(e.data,i,e),o=l.getValue(t.data,i,t);return i.comparator?i.comparator(r,o,e,t):n.defaultComparator(r,o,e,t)}for(var r=0,o=e.length;o>r;r++){var s=e[r];s.group&&s.children&&(s.childrenAfterSort=s.childrenAfterFilter.slice(0),this.sortList(s.childrenAfterSort,t))}var l=this;e.sort(function(e,r){for(var o=0,n=t.length;n>o;o++){var s=t[o],l=i(e,r,s.colDef);if(0!==l)return l*s.inverter}return 0})},r.prototype.doGrouping=function(){var e;if(this.gridOptionsWrapper.isDoInternalGrouping()){var t=this.gridOptionsWrapper.getGroupDefaultExpanded();e=o.group(this.allRows,this.gridOptionsWrapper.getGroupKeys(),this.gridOptionsWrapper.getGroupAggFunction(),t)}else e=this.allRows;this.rowsAfterGroup=e},r.prototype.doFilter=function(){var e,t=null!==this.angularGrid.getQuickFilter(),i=this.filterManager.isFilterPresent(),r=t||i;r?e=this.filterItems(this.rowsAfterGroup,t,i):(e=this.rowsAfterGroup,this.recursivelyResetFilter(this.rowsAfterGroup)),this.rowsAfterFilter=e},r.prototype.filterItems=function(e,t,i){for(var r=[],o=0,n=e.length;n>o;o++){var s=e[o];s.group?(s.childrenAfterFilter=this.filterItems(s.children,t,i),s.childrenAfterFilter.length>0&&(s.allChildrenCount=this.getTotalChildCount(s.childrenAfterFilter),r.push(s))):this.doesRowPassFilter(s,t,i)&&r.push(s)}return r},r.prototype.recursivelyResetFilter=function(e){if(e)for(var t=0,i=e.length;i>t;t++){var r=e[t];r.group&&r.children&&(r.childrenAfterFilter=r.children,r.allChildrenCount=this.getTotalChildCount(r.childrenAfterFilter),this.recursivelyResetFilter(r.children))}},r.prototype.setAllRows=function(e,t){var i;if(this.gridOptionsWrapper.isRowsAlreadyGrouped())i=e,this.recursivelyCheckUserProvidedNodes(i,null,0);else{var i=[];if(e)for(var r=0;r<e.length;r++)i.push({data:e[r]})}var o=t?t:0;this.recursivelyAddIdToNodes(i,o),this.allRows=i},r.prototype.recursivelyAddIdToNodes=function(e,t){if(e){for(var i=0;i<e.length;i++){var r=e[i];r.id=t++,r.group&&r.children&&(t=this.recursivelyAddIdToNodes(r.children,t));
}return t}},r.prototype.recursivelyCheckUserProvidedNodes=function(e,t,i){if(e)for(var r=0;r<e.length;r++){var o=e[r];t&&(o.parent=t),o.level=i,o.group&&o.children&&this.recursivelyCheckUserProvidedNodes(o.children,o,i+1)}},r.prototype.getTotalChildCount=function(e){for(var t=0,i=0,r=e.length;r>i;i++){var o=e[i];o.group?t+=o.allChildrenCount:t++}return t},r.prototype.copyGroupNode=function(e,t,i){return{group:!0,data:e.data,field:e.field,key:e.key,expanded:e.expanded,children:t,allChildrenCount:i,level:e.level}},r.prototype.doGroupMapping=function(){var e=[];this.addToMap(e,this.rowsAfterSort),this.rowsAfterMap=e},r.prototype.addToMap=function(e,t){if(t)for(var i=0;i<t.length;i++){var r=t[i];if(e.push(r),r.group&&r.expanded&&(this.addToMap(e,r.childrenAfterSort),this.gridOptionsWrapper.isGroupIncludeFooter())){var o=this.createFooterNode(r);e.push(o)}}},r.prototype.createFooterNode=function(e){var t={};return Object.keys(e).forEach(function(i){t[i]=e[i]}),t.footer=!0,t.sibling=e,e.sibling=t,t},r.prototype.doesRowPassFilter=function(e,t,i){return t&&(e.quickFilterAggregateText||this.aggregateRowForQuickFilter(e),e.quickFilterAggregateText.indexOf(this.angularGrid.getQuickFilter())<0)?!1:i&&!this.filterManager.doesFilterPass(e)?!1:!0},r.prototype.aggregateRowForQuickFilter=function(e){var t="";this.columnModel.getAllColumns().forEach(function(i){var r=e.data,o=r?r[i.colDef.field]:null;o&&""!==o&&(t=t+o.toString().toUpperCase()+"_")}),e.quickFilterAggregateText=t},t.exports=r},{"./constants":4,"./groupCreator":16,"./utils":27}],19:[function(e,t,i){function r(){}var o=['<span id="pageRowSummaryPanel" class="ag-paging-row-summary-panel">','<span id="firstRowOnPage"></span>'," [TO] ",'<span id="lastRowOnPage"></span>'," [OF] ",'<span id="recordCount"></span>',"</span>",'<span class="ag-paging-page-summary-panel">','<button class="ag-paging-button" id="btFirst">[FIRST]</button>','<button class="ag-paging-button" id="btPrevious">[PREVIOUS]</button>'," [PAGE] ",'<span id="current"></span>'," [OF] ",'<span id="total"></span>','<button class="ag-paging-button" id="btNext">[NEXT]</button>','<button class="ag-paging-button" id="btLast">[LAST]</button>',"</span>"].join("");r.prototype.init=function(e,t,i){this.gridOptionsWrapper=i,this.angularGrid=t,this.populatePanel(e),this.callVersion=0},r.prototype.setDatasource=function(e){this.datasource=e,e&&this.reset()},r.prototype.reset=function(){this.pageSize=this.datasource.pageSize,"number"==typeof this.datasource.rowCount&&this.datasource.rowCount>=0?(this.rowCount=this.datasource.rowCount,this.foundMaxRow=!0,this.calculateTotalPages()):(this.rowCount=0,this.foundMaxRow=!1,this.totalPages=null),this.currentPage=0,this.ePageRowSummaryPanel.style.visibility="hidden",this.setTotalLabels(),this.loadPage()},r.prototype.setTotalLabels=function(){if(this.foundMaxRow)this.lbTotal.innerHTML=this.totalPages.toLocaleString(),this.lbRecordCount.innerHTML=this.rowCount.toLocaleString();else{var e=this.gridOptionsWrapper.getLocaleTextFunc()("more","more");this.lbTotal.innerHTML=e,this.lbRecordCount.innerHTML=e}},r.prototype.calculateTotalPages=function(){this.totalPages=Math.floor((this.rowCount-1)/this.pageSize)+1},r.prototype.pageLoaded=function(e,t){var i=this.currentPage*this.pageSize;this.angularGrid.setRows(e,i),!this.foundMaxRow&&"number"==typeof t&&t>=0&&(this.foundMaxRow=!0,this.rowCount=t,this.calculateTotalPages(),this.setTotalLabels(),this.currentPage>this.totalPages&&(this.currentPage=this.totalPages-1,this.loadPage())),this.enableOrDisableButtons(),this.updateRowLabels()},r.prototype.updateRowLabels=function(){var e,t;this.isZeroPagesToDisplay()?(e=0,t=0):(e=this.pageSize*this.currentPage+1,t=e+this.pageSize-1,this.foundMaxRow&&t>this.rowCount&&(t=this.rowCount)),this.lbFirstRowOnPage.innerHTML=e.toLocaleString(),this.lbLastRowOnPage.innerHTML=t.toLocaleString(),this.ePageRowSummaryPanel.style.visibility=null},r.prototype.loadPage=function(){this.enableOrDisableButtons();var e=this.currentPage*this.datasource.pageSize,t=(this.currentPage+1)*this.datasource.pageSize;this.lbCurrent.innerHTML=(this.currentPage+1).toLocaleString(),this.callVersion++;var i=this.callVersion,r=this;this.angularGrid.showLoadingPanel(!0),this.datasource.getRows(e,t,function(e,t){r.isCallDaemon(i)||r.pageLoaded(e,t)},function(){r.isCallDaemon(i)||r.angularGrid.setRows([])})},r.prototype.isCallDaemon=function(e){return e!==this.callVersion},r.prototype.onBtNext=function(){this.currentPage++,this.loadPage()},r.prototype.onBtPrevious=function(){this.currentPage--,this.loadPage()},r.prototype.onBtFirst=function(){this.currentPage=0,this.loadPage()},r.prototype.onBtLast=function(){this.currentPage=this.totalPages-1,this.loadPage()},r.prototype.isZeroPagesToDisplay=function(){return this.foundMaxRow&&0===this.totalPages},r.prototype.enableOrDisableButtons=function(){var e=0===this.currentPage;this.btPrevious.disabled=e,this.btFirst.disabled=e;var t=this.isZeroPagesToDisplay(),i=this.foundMaxRow&&this.currentPage===this.totalPages-1,r=i||t;this.btNext.disabled=r;var o=!this.foundMaxRow||t||this.currentPage===this.totalPages-1;this.btLast.disabled=o},r.prototype.createTemplate=function(){var e=this.gridOptionsWrapper.getLocaleTextFunc();return o.replace("[PAGE]",e("page","Page")).replace("[TO]",e("to","to")).replace("[OF]",e("of","of")).replace("[OF]",e("of","of")).replace("[FIRST]",e("first","First")).replace("[PREVIOUS]",e("previous","Previous")).replace("[NEXT]",e("next","Next")).replace("[LAST]",e("last","Last"))},r.prototype.populatePanel=function(e){e.innerHTML=this.createTemplate(),this.btNext=e.querySelector("#btNext"),this.btPrevious=e.querySelector("#btPrevious"),this.btFirst=e.querySelector("#btFirst"),this.btLast=e.querySelector("#btLast"),this.lbCurrent=e.querySelector("#current"),this.lbTotal=e.querySelector("#total"),this.lbRecordCount=e.querySelector("#recordCount"),this.lbFirstRowOnPage=e.querySelector("#firstRowOnPage"),this.lbLastRowOnPage=e.querySelector("#lastRowOnPage"),this.ePageRowSummaryPanel=e.querySelector("#pageRowSummaryPanel");var t=this;this.btNext.addEventListener("click",function(){t.onBtNext()}),this.btPrevious.addEventListener("click",function(){t.onBtPrevious()}),this.btFirst.addEventListener("click",function(){t.onBtFirst()}),this.btLast.addEventListener("click",function(){t.onBtLast()})},t.exports=r},{}],20:[function(e,t,i){function r(){}var o=e("./constants"),n=e("./utils"),s=e("./cellRenderers/groupCellRendererFactory");r.prototype.init=function(e,t,i,r,o,n,l,a,d,u,p,c){this.gridOptions=e,this.columnModel=t,this.gridOptionsWrapper=i,this.angularGrid=o,this.selectionRendererFactory=n,this.findAllElements(r),this.$compile=l,this.$scope=a,this.selectionController=d,this.expressionService=u,this.templateService=p,this.eParentOfRows=c,this.cellRendererMap={group:s(i,n)},this.renderedRows={},this.renderedRowStartEditingListeners={},this.editingCell=!1},r.prototype.setRowModel=function(e){this.rowModel=e},r.prototype.setMainRowWidths=function(){for(var e=this.columnModel.getBodyContainerWidth()+"px",t=this.eBodyContainer.querySelectorAll(".ag-row"),i=0;i<t.length;i++)t[i].style.width=e},r.prototype.findAllElements=function(e){this.gridOptionsWrapper.isDontUseScrolls()?this.eBodyContainer=e.querySelector(".ag-body-container"):(this.eBodyContainer=e.querySelector(".ag-body-container"),this.eBodyViewport=e.querySelector(".ag-body-viewport"),this.ePinnedColsContainer=e.querySelector(".ag-pinned-cols-container"))},r.prototype.refreshView=function(e){if(!this.gridOptionsWrapper.isDontUseScrolls()){var t=this.rowModel.getVirtualRowCount(),i=this.gridOptionsWrapper.getRowHeight()*t;this.eBodyContainer.style.height=i+"px",this.ePinnedColsContainer.style.height=i+"px"}this.refreshAllVirtualRows(e)},r.prototype.softRefreshView=function(){var e=this.firstVirtualRenderedRow,t=this.lastVirtualRenderedRow,i=this.columnModel.getVisibleColumns();if(i&&0!==i.length)for(var r=e;t>=r;r++){var o=this.rowModel.getVirtualRow(r);if(o)for(var n=0;n<=i.length;n++){var s=i[n],l=this.renderedRows[r],a=l.eVolatileCells[n];if(a){var d=0===n,u=l.scope;this.softRefreshCell(a,d,o,s,u,r)}}}},r.prototype.softRefreshCell=function(e,t,i,r,o,s){n.removeAllChildren(e);var l,a=this.getDataForNode(i),d=this.createValueGetter(a,r.colDef,i);d&&(l=d()),this.populateAndStyleGridCell(d,l,e,t,i,r,s,o),this.gridOptionsWrapper.isAngularCompileRows()&&this.$compile(e)(o)},r.prototype.rowDataChanged=function(e){var t=[],i=this.renderedRows;Object.keys(i).forEach(function(r){var o=i[r],n=e.indexOf(o.node.data)>=0;n&&t.push(r)}),this.removeVirtualRows(t),this.drawVirtualRows()},r.prototype.refreshAllVirtualRows=function(e){var t=Object.keys(this.renderedRows);this.removeVirtualRows(t,e),this.drawVirtualRows()},r.prototype.refreshGroupRows=function(){var e=[],t=this;Object.keys(this.renderedRows).forEach(function(i){var r=t.renderedRows[i],o=r.node;o.group&&e.push(i)}),this.removeVirtualRows(e),this.ensureRowsRendered()},r.prototype.removeVirtualRows=function(e,t){var i=this,r="number"==typeof t?t:-1;e.forEach(function(e){e>=r&&i.removeVirtualRow(e)})},r.prototype.removeVirtualRow=function(e){var t=this.renderedRows[e];t.pinnedElement&&this.ePinnedColsContainer&&this.ePinnedColsContainer.removeChild(t.pinnedElement),t.bodyElement&&this.eBodyContainer.removeChild(t.bodyElement),t.scope&&t.scope.$destroy(),this.gridOptionsWrapper.getVirtualRowRemoved()&&this.gridOptionsWrapper.getVirtualRowRemoved()(t.data,e),this.angularGrid.onVirtualRowRemoved(e),delete this.renderedRows[e],delete this.renderedRowStartEditingListeners[e]},r.prototype.drawVirtualRows=function(){var e,t,i=this.rowModel.getVirtualRowCount();if(this.gridOptionsWrapper.isDontUseScrolls())e=0,t=i;else{var r=this.eBodyViewport.scrollTop,n=r+this.eBodyViewport.offsetHeight;e=Math.floor(r/this.gridOptionsWrapper.getRowHeight()),t=Math.floor(n/this.gridOptionsWrapper.getRowHeight());var s=this.gridOptionsWrapper.getRowBuffer()||o.ROW_BUFFER_SIZE;e-=s,t+=s,0>e&&(e=0),t>i-1&&(t=i-1)}this.firstVirtualRenderedRow=e,this.lastVirtualRenderedRow=t,this.ensureRowsRendered()},r.prototype.getFirstVirtualRenderedRow=function(){return this.firstVirtualRenderedRow},r.prototype.getLastVirtualRenderedRow=function(){return this.lastVirtualRenderedRow},r.prototype.ensureRowsRendered=function(){for(var e=this.columnModel.getBodyContainerWidth(),t=this,i=Object.keys(this.renderedRows),r=this.firstVirtualRenderedRow;r<=this.lastVirtualRenderedRow;r++)if(i.indexOf(r.toString())>=0)i.splice(i.indexOf(r.toString()),1);else{var o=this.rowModel.getVirtualRow(r);o&&t.insertRow(o,r,e)}this.removeVirtualRows(i),this.gridOptionsWrapper.isAngularCompileRows()&&setTimeout(function(){t.$scope.$apply()},0)},r.prototype.insertRow=function(e,t,i){var r=this.columnModel.getVisibleColumns();if(r&&0!=r.length){var o=e.group,n=this.createChildScopeOrNull(e.data),s=this.createRowContainer(t,e,o,n),l=this.createRowContainer(t,e,o,n),a=this;l.style.width=i+"px";var d={scope:n,node:e,rowIndex:t,eCells:{},eVolatileCells:{}};this.renderedRows[t]=d,this.renderedRowStartEditingListeners[t]={};var u=this.gridOptionsWrapper.isGroupUseEntireRow(),p=o&&u;if(p){var c=r[0],h=a.createGroupElement(e,t,!1);if(c.pinned){s.appendChild(h);var f=a.createGroupElement(e,t,!0);l.appendChild(f)}else l.appendChild(h)}else r.forEach(function(i,r){var o=0===r,u=a.getDataForNode(e),p=a.createValueGetter(u,i.colDef,e);a.createCellFromColDef(o,i,p,e,t,l,s,n,d)});d.pinnedElement=this.compileAndAdd(this.ePinnedColsContainer,t,s,n),d.bodyElement=this.compileAndAdd(this.eBodyContainer,t,l,n)}},r.prototype.getDataForNode=function(e){if(e.footer)return e.data;if(e.group){var t=this.gridOptionsWrapper.isGroupIncludeFooter();return e.expanded&&t?void 0:e.data}return e.data},r.prototype.createValueGetter=function(e,t,i){var r=this;return function(){var o=r.gridOptionsWrapper.getApi(),s=r.gridOptionsWrapper.getContext();return n.getValue(r.expressionService,e,t,i,o,s)}},r.prototype.createChildScopeOrNull=function(e){if(this.gridOptionsWrapper.isAngularCompileRows()){var t=this.$scope.$new();return t.data=e,t}return null},r.prototype.compileAndAdd=function(e,t,i,r){if(r){var o=this.$compile(i)(r);return e&&e.appendChild(o[0]),o[0]}return e&&e.appendChild(i),i},r.prototype.createCellFromColDef=function(e,t,i,r,o,n,s,l,a){var d=this.createCell(e,t,i,r,o,l);t.colDef["volatile"]&&(a.eVolatileCells[t.colKey]=d),a.eCells[t.colKey]=d,t.pinned?s.appendChild(d):n.appendChild(d)},r.prototype.addClassesToRow=function(e,t,i){var r=["ag-row"];if(r.push(e%2==0?"ag-row-even":"ag-row-odd"),this.selectionController.isNodeSelected(t)&&r.push("ag-row-selected"),r.push(t.group?"ag-row-level-"+t.level:t.parent?"ag-row-level-"+(t.parent.level+1):"ag-row-level-0"),t.group&&r.push("ag-row-group"),t.group&&!t.footer&&t.expanded&&r.push("ag-row-group-expanded"),!t.group||t.footer||t.expanded||r.push("ag-row-group-contracted"),t.group&&t.footer&&r.push("ag-row-footer"),this.gridOptionsWrapper.getRowClass()){var o={node:t,data:t.data,rowIndex:e,context:this.gridOptionsWrapper.getContext(),api:this.gridOptionsWrapper.getApi()},n=this.gridOptionsWrapper.getRowClass()(o);n&&("string"==typeof n?r.push(n):Array.isArray(n)&&n.forEach(function(e){r.push(e)}))}var s=r.join(" ");i.className=s},r.prototype.createRowContainer=function(e,t,i,r){var o=document.createElement("div");if(this.addClassesToRow(e,t,o),o.setAttribute("row",e),this.gridOptionsWrapper.isDontUseScrolls()||(o.style.top=this.gridOptionsWrapper.getRowHeight()*e+"px"),o.style.height=this.gridOptionsWrapper.getRowHeight()+"px",this.gridOptionsWrapper.getRowStyle()){var n,s=this.gridOptionsWrapper.getRowStyle();if("function"==typeof s){var l={data:t.data,node:t,api:this.gridOptionsWrapper.getApi(),context:this.gridOptionsWrapper.getContext(),$scope:r};n=s(l)}else n=s;n&&Object.keys(n).forEach(function(e){o.style[e]=n[e]})}var a=this;return o.addEventListener("click",function(e){a.angularGrid.onRowClicked(e,Number(this.getAttribute("row")),t)}),o},r.prototype.getIndexOfRenderedNode=function(e){for(var t=this.renderedRows,i=Object.keys(t),r=0;r<i.length;r++)if(t[i[r]].node===e)return t[i[r]].rowIndex;return-1},r.prototype.createGroupElement=function(e,t,i){var r;if(i)r=document.createElement("span");else{var o={node:e,data:e.data,rowIndex:t,api:this.gridOptionsWrapper.getApi(),colDef:{cellRenderer:{renderer:"group",innerRenderer:this.gridOptionsWrapper.getGroupInnerRenderer()}}};r=this.cellRendererMap.group(o)}return e.footer?n.addCssClass(r,"ag-footer-cell-entire-row"):n.addCssClass(r,"ag-group-cell-entire-row"),r},r.prototype.putDataIntoCell=function(e,t,i,r,o,n,s,l,a){var d=e.colDef;if(d.template)n.innerHTML=d.template;else if(d.templateUrl){var u=this.templateService.getTemplate(d.templateUrl,a);u&&(n.innerHTML=u)}else d.cellRenderer?this.useCellRenderer(e,t,r,o,n,l,a,i,s):void 0!==t&&null!==t&&""!==t&&(n.innerHTML=t)},r.prototype.useCellRenderer=function(e,t,i,r,o,s,l,a,d){var u,p=e.colDef,c={value:t,valueGetter:a,data:i.data,node:i,colDef:p,column:e,$scope:r,rowIndex:s,api:this.gridOptionsWrapper.getApi(),context:this.gridOptionsWrapper.getContext(),refreshCell:l,eGridCell:d};if("object"==typeof p.cellRenderer&&null!==p.cellRenderer){if(u=this.cellRendererMap[p.cellRenderer.renderer],!u)throw"Cell renderer "+p.cellRenderer+" not found, available are "+Object.keys(this.cellRendererMap)}else{if("function"!=typeof p.cellRenderer)throw"Cell Renderer must be String or Function";u=p.cellRenderer}var h=u(c);n.isNodeOrElement(h)?o.appendChild(h):o.innerHTML=h},r.prototype.addStylesFromCollDef=function(e,t,i,r,o){var n=e.colDef;if(n.cellStyle){var s;if("function"==typeof n.cellStyle){var l={value:t,data:i.data,node:i,colDef:n,column:e,$scope:r,context:this.gridOptionsWrapper.getContext(),api:this.gridOptionsWrapper.getApi()};s=n.cellStyle(l)}else s=n.cellStyle;s&&Object.keys(s).forEach(function(e){o.style[e]=s[e]})}},r.prototype.addClassesFromCollDef=function(e,t,i,r,o){if(e.cellClass){var s;if("function"==typeof e.cellClass){var l={value:t,data:i.data,node:i,colDef:e,$scope:r,context:this.gridOptionsWrapper.getContext(),api:this.gridOptionsWrapper.getApi()};s=e.cellClass(l)}else s=e.cellClass;"string"==typeof s?n.addCssClass(o,s):Array.isArray(s)&&s.forEach(function(e){n.addCssClass(o,e)})}},r.prototype.addClassesToCell=function(e,t,i){var r=["ag-cell","ag-cell-no-focus","cell-col-"+e.index];t.group&&r.push(t.footer?"ag-footer-cell":"ag-group-cell"),i.className=r.join(" ")},r.prototype.addClassesFromRules=function(e,t,i,r,o){var s=e.cellClassRules;if("object"==typeof s&&null!==s)for(var l={value:i,data:r.data,node:r,colDef:e,rowIndex:o,api:this.gridOptionsWrapper.getApi(),context:this.gridOptionsWrapper.getContext()},a=Object.keys(s),d=0;d<a.length;d++){var u,p=a[d],c=s[p];"string"==typeof c?u=this.expressionService.evaluate(c,l):"function"==typeof c&&(u=c(l)),u?n.addCssClass(t,p):n.removeCssClass(t,p)}},r.prototype.createCell=function(e,t,i,r,o,s){var l=this,a=document.createElement("div");a.setAttribute("col",t.index),this.gridOptionsWrapper.isSuppressCellSelection()||a.setAttribute("tabindex","-1");var d;return i&&(d=i()),this.addClassesToCell(t,r,a),this.populateAndStyleGridCell(i,d,a,e,r,t,o,s),this.addCellClickedHandler(a,r,t,d,o),this.addCellDoubleClickedHandler(a,r,t,d,o,s,e,i),this.addCellNavigationHandler(a,o,t,r),a.style.width=n.formatWidth(t.actualWidth),this.renderedRowStartEditingListeners[o][t.index]=function(){return l.isCellEditable(t.colDef,r)?(l.startEditing(a,t,r,s,o,e,i),!0):!1},a},r.prototype.addCellNavigationHandler=function(e,t,i,r){var n=this;e.addEventListener("keydown",function(s){if(!n.editingCell&&s.target===e){var l=s.which||s.keyCode,a=l===o.KEY_DOWN||l===o.KEY_UP||l===o.KEY_LEFT||l===o.KEY_RIGHT;a&&(s.preventDefault(),n.navigateToNextCell(l,t,i));var d=l===o.KEY_ENTER;if(d){var u=n.renderedRowStartEditingListeners[t][i.colKey];if(u){var p=u();p&&s.preventDefault()}}var c=l===o.KEY_SPACE;if(c&&n.gridOptionsWrapper.isRowSelection()){var h=n.selectionController.isNodeSelected(r);h?n.selectionController.deselectNode(r):n.selectionController.selectNode(r,!0),s.preventDefault()}}})},r.prototype.navigateToNextCell=function(e,t,i){for(var r,o,n={rowIndex:t,column:i};!o;){if(n=this.getNextCellToFocus(e,n),!n)return;r=this.renderedRows[n.rowIndex],o=r.eCells[n.column.index]}this.angularGrid.ensureIndexVisible(r.rowIndex),this.focusCell(o,n.rowIndex,n.column.index,!0)},r.prototype.getNextCellToFocus=function(e,t){var i,r,n=t.rowIndex,s=t.column;switch(e){case o.KEY_UP:if(n===this.firstVirtualRenderedRow)return null;i=n-1,r=s;break;case o.KEY_DOWN:if(n===this.lastVirtualRenderedRow)return null;i=n+1,r=s;break;case o.KEY_RIGHT:var l=this.columnModel.getVisibleColAfter(s);if(!l)return null;i=n,r=l;break;case o.KEY_LEFT:var a=this.columnModel.getVisibleColBefore(s);if(!a)return null;i=n,r=a}return{rowIndex:i,column:r}},r.prototype.focusCell=function(e,t,i,r){if(!this.gridOptionsWrapper.isSuppressCellSelection()){n.querySelectorAll_replaceCssClass(this.eParentOfRows,".ag-cell-focus","ag-cell-focus","ag-cell-no-focus");var o='[row="'+t+'"] [col="'+i+'"]';n.querySelectorAll_replaceCssClass(this.eParentOfRows,o,"ag-cell-no-focus","ag-cell-focus"),r&&e.focus()}},r.prototype.populateAndStyleGridCell=function(e,t,i,r,o,n,s,l){var a=n.colDef;this.populateGridCell(i,r,o,n,s,t,e,l),this.addStylesFromCollDef(n,t,o,l,i),this.addClassesFromCollDef(a,t,o,l,i),this.addClassesFromRules(a,i,t,o,s)},r.prototype.populateGridCell=function(e,t,i,r,o,s,l,a){var d=document.createElement("span");n.addCssClass(d,"ag-cell-wrapper"),e.appendChild(d);var u=r.colDef;if(u.checkboxSelection){var p=this.selectionRendererFactory.createSelectionCheckbox(i,o);d.appendChild(p)}var c=document.createElement("span");n.addCssClass(c,"ag-cell-value"),d.appendChild(c);var h=this,f=function(){h.softRefreshCell(e,t,i,r,a,o)};this.putDataIntoCell(r,s,l,i,a,c,e,o,f)},r.prototype.addCellDoubleClickedHandler=function(e,t,i,r,o,n,s,l){var a=this,d=i.colDef;e.addEventListener("dblclick",function(u){if(a.gridOptionsWrapper.getCellDoubleClicked()){var p={node:t,data:t.data,value:r,rowIndex:o,colDef:d,event:u,eventSource:this,api:a.gridOptionsWrapper.getApi()};a.gridOptionsWrapper.getCellDoubleClicked()(p)}if(d.cellDoubleClicked){var c={node:t,data:t.data,value:r,rowIndex:o,colDef:d,event:u,eventSource:this,api:a.gridOptionsWrapper.getApi()};d.cellDoubleClicked(c)}a.isCellEditable(d,t)&&a.startEditing(e,i,t,n,o,s,l)})},r.prototype.addCellClickedHandler=function(e,t,i,r,o){var n=i.colDef,s=this;e.addEventListener("click",function(l){if(s.focusCell(e,o,i.index,!1),s.gridOptionsWrapper.getCellClicked()){var a={node:t,data:t.data,value:r,rowIndex:o,colDef:n,event:l,eventSource:this,api:s.gridOptionsWrapper.getApi()};s.gridOptionsWrapper.getCellClicked()(a)}if(n.cellClicked){var d={node:t,data:t.data,value:r,rowIndex:o,colDef:n,event:l,eventSource:this,api:s.gridOptionsWrapper.getApi()};n.cellClicked(d)}})},r.prototype.isCellEditable=function(e,t){return this.editingCell?!1:t.group?!1:"boolean"==typeof e.editable?e.editable:"function"==typeof e.editable?e.editable(t.data):!1},r.prototype.stopEditing=function(e,t,i,r,o,s,l,a,d){this.editingCell=!1;var u=o.value,p=t.colDef;o.removeEventListener("blur",s),n.removeAllChildren(e);var c={node:i,data:i.data,oldValue:i.data[p.field],newValue:u,rowIndex:l,colDef:p,api:this.gridOptionsWrapper.getApi(),context:this.gridOptionsWrapper.getContext()};p.newValueHandler?p.newValueHandler(c):i.data[p.field]=u;var u;d&&(u=d()),c.newValue=u,"function"==typeof p.cellValueChanged&&p.cellValueChanged(c),"function"==typeof this.gridOptionsWrapper.getCellValueChanged()&&this.gridOptionsWrapper.getCellValueChanged()(c),this.populateAndStyleGridCell(d,u,e,a,i,t,l,r)},r.prototype.startEditing=function(e,t,i,r,s,l,a){var d=this;this.editingCell=!0,n.removeAllChildren(e);var u=document.createElement("input");if(u.type="text",n.addCssClass(u,"ag-cell-edit-input"),a){var p=a();null!==p&&void 0!==p&&(u.value=p)}u.style.width=t.actualWidth-14+"px",e.appendChild(u),u.focus(),u.select();var c=function(){d.stopEditing(e,t,i,r,u,c,s,l,a)};u.addEventListener("blur",c),u.addEventListener("keypress",function(n){var p=n.which||n.keyCode;p==o.KEY_ENTER&&(d.stopEditing(e,t,i,r,u,c,s,l,a),d.focusCell(e,s,t.index,!0))}),u.addEventListener("keydown",function(n){var p=n.which||n.keyCode;return p==o.KEY_TAB?(d.stopEditing(e,t,i,r,u,c,s,l,a),d.startEditingNextCell(s,t,n.shiftKey),n.preventDefault(),!1):void 0})},r.prototype.startEditingNextCell=function(e,t,i){for(var r=this.firstVirtualRenderedRow,o=this.lastVirtualRenderedRow,n=e,s=this.columnModel.getVisibleColumns(),l=t;;){var a=s.indexOf(l);if(i){if(l=s[a-1],l||(l=s[s.length-1],n--),r>n)return}else if(l=s[a+1],l||(l=s[0],n++),n>o)return;var d=this.renderedRowStartEditingListeners[n][l.colKey];if(d){var u=d();if(u)return}}},t.exports=r},{"./cellRenderers/groupCellRendererFactory":2,"./constants":4,"./utils":27}],21:[function(e,t,i){function r(){}var o=e("./utils"),n=0,s=1,l=2,a=3;r.prototype.init=function(e,t,i,r,o){this.eRowsParent=t,this.angularGrid=e,this.gridOptionsWrapper=i,this.$scope=r,this.rowRenderer=o,this.gridOptionsWrapper=i,this.initSelectedNodesById(),this.selectedRows=[],i.setSelectedRows(this.selectedRows)},r.prototype.initSelectedNodesById=function(){this.selectedNodesById={},this.gridOptionsWrapper.setSelectedNodesById(this.selectedNodesById)},r.prototype.getSelectedNodes=function(){for(var e=[],t=Object.keys(this.selectedNodesById),i=0;i<t.length;i++){var r=t[i],o=this.selectedNodesById[r];e.push(o)}return e},r.prototype.getBestCostNodeSelection=function(){function e(t){for(var o=0,n=t.length;n>o;o++){var s=t[o];r.isNodeSelected(s)?i.push(s):s.group&&s.children&&e(s.children)}}if("function"!=typeof this.rowModel.getTopLevelNodes)throw"selectAll not available when rows are on the server";var t=this.rowModel.getTopLevelNodes(),i=[],r=this;return e(t),i},r.prototype.setRowModel=function(e){this.rowModel=e},r.prototype.deselectAll=function(){this.initSelectedNodesById(),this.syncSelectedRowsAndCallListener()},r.prototype.selectAll=function(){function e(r){if(r)for(var o=0;o<r.length;o++){var n=r[o];n.group?(e(n.children),i&&(t[n.id]=n)):t[n.id]=n}}if("function"!=typeof this.rowModel.getTopLevelNodes)throw"selectAll not available when rows are on the server";var t=this.selectedNodesById,i=!this.gridOptionsWrapper.isGroupSelectsChildren(),r=this.rowModel.getTopLevelNodes();e(r),this.syncSelectedRowsAndCallListener()},r.prototype.selectNode=function(e,t,i){var r,o=this.gridOptionsWrapper.isRowSelectionMulti()&&t;r=e.footer?e.sibling:e;var n=!1,s=!1;o||(n=this.doWorkOfDeselectAllNodes()),s=this.gridOptionsWrapper.isGroupSelectsChildren()&&r.group?this.recursivelySelectAllChildren(r):this.doWorkOfSelectNode(r,i),(n||s)&&this.syncSelectedRowsAndCallListener(i),this.updateGroupParentsIfNeeded()},r.prototype.recursivelySelectAllChildren=function(e,t){var i=!1;if(e.children)for(var r=0;r<e.children.length;r++){var o=e.children[r];o.group?this.recursivelySelectAllChildren(o)&&(i=!0):this.doWorkOfSelectNode(o,t)&&(i=!0)}return i},r.prototype.recursivelyDeselectAllChildren=function(e){if(e.children)for(var t=0;t<e.children.length;t++){var i=e.children[t];i.group?this.recursivelyDeselectAllChildren(i):this.deselectRealNode(i)}},r.prototype.doWorkOfSelectNode=function(e,t){return this.selectedNodesById[e.id]?!1:(this.selectedNodesById[e.id]=e,this.addCssClassForNode_andInformVirtualRowListener(e),e.group&&e.expanded&&e.sibling&&this.addCssClassForNode_andInformVirtualRowListener(e.sibling),t||"function"!=typeof this.gridOptionsWrapper.getRowSelected()||this.gridOptionsWrapper.getRowSelected()(e.data,e),!0)},r.prototype.addCssClassForNode_andInformVirtualRowListener=function(e){var t=this.rowRenderer.getIndexOfRenderedNode(e);t>=0&&(o.querySelectorAll_addCssClass(this.eRowsParent,'[row="'+t+'"]',"ag-row-selected"),this.angularGrid.onVirtualRowSelected(t,!0))},r.prototype.doWorkOfDeselectAllNodes=function(e){for(var t,i=Object.keys(this.selectedNodesById),r=0;r<i.length;r++){var o=i[r],n=this.selectedNodesById[o];n!==e&&(this.deselectRealNode(n),t=!0)}return t},r.prototype.deselectRealNode=function(e){this.removeCssClassForNode(e),e.group&&e.expanded&&e.sibling&&this.removeCssClassForNode(e.sibling),delete this.selectedNodesById[e.id]},r.prototype.removeCssClassForNode=function(e){var t=this.rowRenderer.getIndexOfRenderedNode(e);t>=0&&(o.querySelectorAll_removeCssClass(this.eRowsParent,'[row="'+t+'"]',"ag-row-selected"),this.angularGrid.onVirtualRowSelected(t,!1))},r.prototype.deselectIndex=function(e){var t=this.rowModel.getVirtualRow(e);this.deselectNode(t)},r.prototype.deselectNode=function(e){e&&(this.gridOptionsWrapper.isGroupSelectsChildren()&&e.group?this.recursivelyDeselectAllChildren(e):this.deselectRealNode(e)),this.syncSelectedRowsAndCallListener(),this.updateGroupParentsIfNeeded()},r.prototype.selectIndex=function(e,t,i){var r=this.rowModel.getVirtualRow(e);this.selectNode(r,t,i)},r.prototype.syncSelectedRowsAndCallListener=function(e){var t=this.selectedRows,i=t.length;t.length=0;for(var r=Object.keys(this.selectedNodesById),o=0;o<r.length;o++)if(void 0!==this.selectedNodesById[r[o]]){var n=this.selectedNodesById[r[o]];t.push(n.data)}var s=0===i&&0===t.length;s||e||"function"!=typeof this.gridOptionsWrapper.getSelectionChanged()||this.gridOptionsWrapper.getSelectionChanged()();var l=this;this.$scope&&setTimeout(function(){l.$scope.$apply()},0)},r.prototype.recursivelyCheckIfSelected=function(e){var t=!1,i=!1;if(e.children)for(var r=0;r<e.children.length;r++){var o,d=e.children[r];if(d.group)switch(o=this.recursivelyCheckIfSelected(d)){case n:t=!0;break;case s:i=!0;break;case l:t=!0,i=!0}else this.isNodeSelected(d)?t=!0:i=!0;if(t&&i)return l}return t?n:i?s:a},r.prototype.isNodeSelected=function(e){if(!this.gridOptionsWrapper.isGroupSelectsChildren()||!e.group)return void 0!==this.selectedNodesById[e.id];var t=this.recursivelyCheckIfSelected(e);switch(t){case n:return!0;case s:return!1;default:return void 0}},r.prototype.updateGroupParentsIfNeeded=function(){if(this.gridOptionsWrapper.isGroupSelectsChildren())for(var e=this.rowRenderer.getFirstVirtualRenderedRow(),t=this.rowRenderer.getLastVirtualRenderedRow(),i=e;t>=i;i++){var r=this.rowModel.getVirtualRow(i);if(r.group){var n=this.isNodeSelected(r);this.angularGrid.onVirtualRowSelected(i,n),n?o.querySelectorAll_addCssClass(this.eRowsParent,'[row="'+i+'"]',"ag-row-selected"):o.querySelectorAll_removeCssClass(this.eRowsParent,'[row="'+i+'"]',"ag-row-selected")}}},t.exports=r},{"./utils":27}],22:[function(e,t,i){function r(){}function o(e,t){"boolean"==typeof t?(e.checked=t,e.indeterminate=!1):e.indeterminate=!0}r.prototype.init=function(e,t){this.angularGrid=e,this.selectionController=t},r.prototype.createCheckboxColDef=function(){return{width:30,suppressMenu:!0,suppressSorting:!0,headerCellRenderer:function(){var e=document.createElement("input");return e.type="checkbox",e.name="name",e},cellRenderer:this.createCheckboxRenderer()}},r.prototype.createCheckboxRenderer=function(){var e=this;return function(t){return e.createSelectionCheckbox(t.node,t.rowIndex)}},r.prototype.createSelectionCheckbox=function(e,t){var i=document.createElement("input");i.type="checkbox",i.name="name",i.className="ag-selection-checkbox",o(i,this.selectionController.isNodeSelected(e));var r=this;return i.onclick=function(e){e.stopPropagation()},i.onchange=function(){var e=i.checked;e?r.selectionController.selectIndex(t,!0):r.selectionController.deselectIndex(t)},this.angularGrid.addVirtualRowListener(t,{rowSelected:function(e){o(i,e)},rowRemoved:function(){}}),i},t.exports=r},{}],23:[function(e,t,i){function r(){}function o(e){var t=n(),i=document.createElementNS(s,"polygon");return i.setAttribute("points",e),t.appendChild(i),t}function n(){var e=document.createElementNS(s,"svg");return e.setAttribute("width","10"),e.setAttribute("height","10"),e}var s="http://www.w3.org/2000/svg";r.prototype.createFilterSvg=function(){var e=n(),t=document.createElementNS(s,"polygon");return t.setAttribute("points","0,0 4,4 4,10 6,10 6,4 10,0"),t.setAttribute("class","ag-header-icon"),e.appendChild(t),e},r.prototype.createMenuSvg=function(){var e=document.createElementNS(s,"svg"),t="12";return e.setAttribute("width",t),e.setAttribute("height",t),["0","5","10"].forEach(function(i){var r=document.createElementNS(s,"rect");r.setAttribute("y",i),r.setAttribute("width",t),r.setAttribute("height","2"),r.setAttribute("class","ag-header-icon"),e.appendChild(r)}),e},r.prototype.createArrowUpSvg=function(){return o("0,10 5,0 10,10")},r.prototype.createArrowLeftSvg=function(){return o("10,0 0,5 10,10")},r.prototype.createArrowDownSvg=function(){return o("0,0 5,10 10,0")},r.prototype.createArrowRightSvg=function(){return o("0,0 10,5 0,10")},t.exports=r},{}],24:[function(e,t,i){var r=['<div class="ag-root ag-scrolls">'," <!-- The loading panel -->"," <!-- wrapping in outer div, and wrapper, is needed to center the loading icon -->"," <!-- The idea for centering came from here: http://www.vanseodesign.com/css/vertical-centering/ -->",' <div class="ag-loading-panel">',' <div class="ag-loading-wrapper">',' <span class="ag-loading-center">Loading...</span>'," </div>"," </div>"," <!-- header -->",' <div class="ag-header">',' <div class="ag-pinned-header"></div><div class="ag-header-viewport"><div class="ag-header-container"></div></div>'," </div>"," <!-- body -->",' <div class="ag-body">',' <div class="ag-pinned-cols-viewport">',' <div class="ag-pinned-cols-container"></div>'," </div>",' <div class="ag-body-viewport-wrapper">',' <div class="ag-body-viewport">',' <div class="ag-body-container"></div>'," </div>"," </div>"," </div>"," <!-- Paging -->",' <div class="ag-paging-panel">'," </div>"," </div>"].join("");t.exports=r},{}],25:[function(e,t,i){
var r=['<div class="ag-root ag-no-scrolls">'," <!-- See comment in template.html for why loading is laid out like so -->",' <div class="ag-loading-panel">',' <div class="ag-loading-wrapper">',' <span class="ag-loading-center">Loading...</span>'," </div>"," </div>"," <!-- header -->",' <div class="ag-header-container"></div>'," <!-- body -->",' <div class="ag-body-container"></div>',"</div>"].join("");t.exports=r},{}],26:[function(e,t,i){function r(){this.templateCache={},this.waitingCallbacks={}}r.prototype.init=function(e){this.$scope=e},r.prototype.getTemplate=function(e,t){var i=this.templateCache[e];if(i)return i;var r=this.waitingCallbacks[e],o=this;if(!r){r=[],this.waitingCallbacks[e]=r;var n=new XMLHttpRequest;n.onload=function(){o.handleHttpResult(this,e)},n.open("GET",e),n.send()}return t&&r.push(t),null},r.prototype.handleHttpResult=function(e,t){if(200!==e.status||null===e.response)return void console.log("Unable to get template error "+e.status+" - "+t);this.templateCache[t]=e.response;for(var i=this.waitingCallbacks[t],r=0;r<i.length;r++){var o=i[r];o()}if(this.$scope){var n=this;setTimeout(function(){n.$scope.$apply()},0)}},t.exports=r},{}],27:[function(e,t,i){function r(){}r.prototype.iterateObject=function(e,t){for(var i=Object.keys(e),r=0;r<i.length;r++){var o=i[r],n=e[o];t(o,n)}},r.prototype.iterateArray=function(e,t){for(var i=0;i<e.length;i++){var r=e[i];t(r,i)}},r.prototype.getValue=function(e,t,i,r,o,n){var s=i.valueGetter,l=i.field;if(!s)return l&&t?t[l]:void 0;var a={data:t,node:r,colDef:i,api:o,context:n};return"function"==typeof s?s(a):"string"==typeof s?e.evaluate(s,a):void 0},r.prototype.isNode=function(e){return"object"==typeof Node?e instanceof Node:e&&"object"==typeof e&&"number"==typeof e.nodeType&&"string"==typeof e.nodeName},r.prototype.isElement=function(e){return"object"==typeof HTMLElement?e instanceof HTMLElement:e&&"object"==typeof e&&null!==e&&1===e.nodeType&&"string"==typeof e.nodeName},r.prototype.isNodeOrElement=function(e){return this.isNode(e)||this.isElement(e)},r.prototype.addChangeListener=function(e,t){e.addEventListener("changed",t),e.addEventListener("paste",t),e.addEventListener("input",t)},r.prototype.makeNull=function(e){return null===e||void 0===e||""===e?null:e},r.prototype.removeAllChildren=function(e){if(e)for(;e.hasChildNodes();)e.removeChild(e.lastChild)},r.prototype.addAsModalPopup=function(e,t){var i=document.createElement("div");i.className="ag-popup-backdrop",i.onclick=function(){e.removeChild(t),e.removeChild(i)},e.appendChild(i),e.appendChild(t)},r.prototype.loadTemplate=function(e){var t=document.createElement("div");return t.innerHTML=e,t.firstChild},r.prototype.pixelStringToNumber=function(e){return"string"==typeof e?(e.indexOf("px")>=0&&e.replace("px",""),parseInt(e)):e},r.prototype.querySelectorAll_addCssClass=function(e,t,i){for(var r=e.querySelectorAll(t),o=0;o<r.length;o++)this.addCssClass(r[o],i)},r.prototype.querySelectorAll_removeCssClass=function(e,t,i){for(var r=e.querySelectorAll(t),o=0;o<r.length;o++)this.removeCssClass(r[o],i)},r.prototype.querySelectorAll_replaceCssClass=function(e,t,i,r){for(var o=e.querySelectorAll(t),n=0;n<o.length;n++)this.removeCssClass(o[n],i),this.addCssClass(o[n],r)},r.prototype.addCssClass=function(e,t){var i=e.className;if(i){if(i.indexOf(t)>=0)return;e.className=i+" "+t}else e.className=t},r.prototype.removeCssClass=function(e,t){var i=e.className;if(!(i.indexOf(t)<0)){var r=i.replace(" "+t,"");r=r.replace(t+" ",""),r==t&&(r=""),e.className=r}},r.prototype.removeFromArray=function(e,t){e.splice(e.indexOf(t),1)},r.prototype.defaultComparator=function(e,t){var i=null===e||void 0===e,r=null===t||void 0===t;return i&&r?0:i?-1:r?1:t>e?-1:e>t?1:0},r.prototype.formatWidth=function(e){return"number"==typeof e?e+"px":e},r.prototype.useRenderer=function(e,t,i){var r=t(i);if(this.isNode(r)||this.isElement(r))e.appendChild(r);else{var o=document.createElement("span");o.innerHTML=r,e.appendChild(o)}},r.prototype.createIcon=function(e,t,i,r){var o,n=document.createElement("span");if(i&&i.colDef.icons&&(o=i.colDef.icons[e]),!o&&t.getIcons()&&(o=t.getIcons()[e]),o){var s;if("function"==typeof o)s=o();else{if("string"!=typeof o)throw"icon from grid options needs to be a string or a function";s=o}if("string"==typeof s)n.innerHTML=s;else{if(!this.isNodeOrElement(s))throw"iconRenderer should return back a string or a dom object";n.appendChild(s)}}else n.appendChild(r());return n},r.prototype.getScrollbarWidth=function(){var e=document.createElement("div");e.style.visibility="hidden",e.style.width="100px",e.style.msOverflowStyle="scrollbar",document.body.appendChild(e);var t=e.offsetWidth;e.style.overflow="scroll";var i=document.createElement("div");i.style.width="100%",e.appendChild(i);var r=i.offsetWidth;return e.parentNode.removeChild(e),t-r},r.prototype.isKeyPressed=function(e,t){var i=e.which||e.keyCode;return i===t},r.prototype.setVisible=function(e,t){e.style.display=t?"inline":"none"},t.exports=new r},{}],28:[function(e,t,i){function r(){}var o=!0;r.prototype.init=function(e){this.rowRenderer=e,this.datasourceVersion=0},r.prototype.setDatasource=function(e){this.datasource=e,e&&this.reset()},r.prototype.reset=function(){"number"==typeof this.datasource.rowCount&&this.datasource.rowCount>=0?(this.virtualRowCount=this.datasource.rowCount,this.foundMaxRow=!0):(this.virtualRowCount=0,this.foundMaxRow=!1),this.datasourceVersion++,this.pageCache={},this.pageCacheSize=0,this.pageLoadsInProgress=[],this.pageLoadsQueued=[],this.pageAccessTimes={},this.accessTime=0,this.maxConcurrentDatasourceRequests="number"==typeof this.datasource.maxConcurrentRequests&&this.datasource.maxConcurrentRequests>0?this.datasource.maxConcurrentRequests:2,this.maxPagesInCache="number"==typeof this.datasource.maxPagesInCache&&this.datasource.maxPagesInCache>0?this.datasource.maxPagesInCache:null,this.pageSize=this.datasource.pageSize,this.overflowSize=this.datasource.overflowSize,this.doLoadOrQueue(0)},r.prototype.createNodesFromRows=function(e,t){var i=[];if(t)for(var r=0,o=t.length;o>r;r++){var n=e*this.pageSize+r;i.push({data:t[r],id:n})}return i},r.prototype.removeFromLoading=function(e){var t=this.pageLoadsInProgress.indexOf(e);this.pageLoadsInProgress.splice(t,1)},r.prototype.pageLoadFailed=function(e){this.removeFromLoading(e),this.checkQueueForNextLoad()},r.prototype.pageLoaded=function(e,t,i){this.putPageIntoCacheAndPurge(e,t),this.checkMaxRowAndInformRowRenderer(e,i),this.removeFromLoading(e),this.checkQueueForNextLoad()},r.prototype.putPageIntoCacheAndPurge=function(e,t){this.pageCache[e]=this.createNodesFromRows(e,t),this.pageCacheSize++,o&&console.log("adding page "+e);var i=this.maxPagesInCache&&this.maxPagesInCache<this.pageCacheSize;if(i){var r=this.findLeastRecentlyAccessedPage(Object.keys(this.pageCache));o&&console.log("purging page "+r+" from cache "+Object.keys(this.pageCache)),delete this.pageCache[r],this.pageCacheSize--}},r.prototype.checkMaxRowAndInformRowRenderer=function(e,t){if(this.foundMaxRow)this.rowRenderer.refreshAllVirtualRows();else{if("number"==typeof t&&t>=0)this.virtualRowCount=t,this.foundMaxRow=!0;else{var i=(e+1)*this.pageSize+this.overflowSize;this.virtualRowCount<i&&(this.virtualRowCount=i)}this.rowRenderer.refreshView()}},r.prototype.isPageAlreadyLoading=function(e){var t=this.pageLoadsInProgress.indexOf(e)>=0||this.pageLoadsQueued.indexOf(e)>=0;return t},r.prototype.doLoadOrQueue=function(e){this.isPageAlreadyLoading(e)||(this.pageLoadsInProgress.length<this.maxConcurrentDatasourceRequests?this.loadPage(e):this.addToQueueAndPurgeQueue(e))},r.prototype.addToQueueAndPurgeQueue=function(e){o&&console.log("queueing "+e+" - "+this.pageLoadsQueued),this.pageLoadsQueued.push(e);var t=this.maxPagesInCache&&this.maxPagesInCache<this.pageLoadsQueued.length;if(t){var i=this.findLeastRecentlyAccessedPage(this.pageLoadsQueued);o&&console.log("de-queueing "+e+" - "+this.pageLoadsQueued);var r=this.pageLoadsQueued.indexOf(i);this.pageLoadsQueued.splice(r,1)}},r.prototype.findLeastRecentlyAccessedPage=function(e){var t=-1,i=Number.MAX_VALUE,r=this;return e.forEach(function(e){var o=r.pageAccessTimes[e];i>o&&(i=o,t=e)}),t},r.prototype.checkQueueForNextLoad=function(){if(this.pageLoadsQueued.length>0){var e=this.pageLoadsQueued[0];this.pageLoadsQueued.splice(0,1),o&&console.log("dequeueing "+e+" - "+this.pageLoadsQueued),this.loadPage(e)}},r.prototype.loadPage=function(e){this.pageLoadsInProgress.push(e);var t=e*this.pageSize,i=(e+1)*this.pageSize,r=this,o=this.datasourceVersion;this.datasource.getRows(t,i,function(t,i){r.requestIsDaemon(o)||r.pageLoaded(e,t,i)},function(){r.requestIsDaemon(o)||r.pageLoadFailed(e)})},r.prototype.requestIsDaemon=function(e){return this.datasourceVersion!==e},r.prototype.getVirtualRow=function(e){if(e>this.virtualRowCount)return null;var t=Math.floor(e/this.pageSize),i=this.pageCache[t];if(this.pageAccessTimes[t]=this.accessTime++,i){var r=e%this.pageSize;return i[r]}return this.doLoadOrQueue(t),{data:{},id:e}},r.prototype.forEachInMemory=function(e){for(var t=Object.keys(this.pageCache),i=0;i<t.length;i++)for(var r=t[i],o=this.pageCache[r],n=0;n<o.length;n++){var s=o[n];e(s)}},r.prototype.getModel=function(){var e=this;return{getVirtualRow:function(t){return e.getVirtualRow(t)},getVirtualRowCount:function(){return e.virtualRowCount},forEachInMemory:function(t){e.forEachInMemory(t)}}},t.exports=r},{}]},{},[1]);
.ag-fresh .ag-root {
border: 1px solid #808080;
font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
}
.ag-fresh .ag-cell {
padding: 2px;
}
.ag-fresh .ag-cell-focus {
border: 1px solid #a9a9a9;
}
.ag-fresh .ag-cell-no-focus {
border-right: 1px dotted #808080;
border-top: 1px solid transparent;
border-left: 1px solid transparent;
border-bottom: 1px solid transparent;
}
.ag-fresh .ag-pinned-header {
background: -webkit-linear-gradient(#fff, #d3d3d3);
background: -moz-linear-gradient(#fff, #d3d3d3);
background: -o-linear-gradient(#fff, #d3d3d3);
background: -ms-linear-gradient(#fff, #d3d3d3);
background: linear-gradient(#fff, #d3d3d3);
border-bottom: 1px solid #808080;
}
.ag-fresh .ag-header-container {
background: -webkit-linear-gradient(#fff, #d3d3d3);
background: -moz-linear-gradient(#fff, #d3d3d3);
background: -o-linear-gradient(#fff, #d3d3d3);
background: -ms-linear-gradient(#fff, #d3d3d3);
background: linear-gradient(#fff, #d3d3d3);
border-bottom: 1px solid #808080;
}
.ag-fresh .ag-header-cell {
border-right: 1px solid #808080;
}
.ag-fresh .ag-header-group-cell {
border-right: 1px solid #808080;
}
.ag-fresh .ag-header-group-cell-with-group {
border-bottom: 1px solid #808080;
}
.ag-fresh .ag-header-cell-label {
padding: 4px 2px 4px 2px;
}
.ag-fresh .ag-header-cell-text {
padding-left: 2px;
}
.ag-fresh .ag-header-group-cell-label {
padding: 4px;
font-weight: bold;
}
.ag-fresh .ag-header-group-text {
margin-right: 2px;
}
.ag-fresh .ag-header-cell-menu-button {
padding: 2px;
margin-top: 4px;
border: 1px solid transparent;
-webkit-border-radius: 3px;
border-radius: 3px;
-webkit-box-sizing: content-box;
-moz-box-sizing: content-box;
box-sizing: content-box; /* When using bootstrap, box-sizing was set to 'border-box' */
}
.ag-fresh .ag-header-cell-menu-button:hover {
border: 1px solid #000;
}
.ag-fresh .ag-header-icon {
color: #800000;
}
.ag-fresh .ag-dark .ag-header-expand-icon:hover {
cursor: pointer;
}
.ag-fresh .ag-row-odd {
background-color: #f6f6f6;
}
.ag-fresh .ag-row-even {
background-color: #fff;
}
.ag-fresh .ag-loading-panel {
background-color: rgba(255,255,255,0.5);
}
.ag-fresh .ag-loading-center {
background-color: #fff;
border: 1px solid #a9a9a9;
-webkit-border-radius: 10px;
border-radius: 10px;
padding: 10px;
}
.ag-fresh .ag-body {
background-color: #ddd;
}
.ag-fresh .ag-row-selected {
background-color: #b0e0e6;
}
.ag-fresh .ag-group-cell-entire-row {
background-color: #aaa;
padding: 4px;
}
.ag-fresh .ag-footer-cell-entire-row {
background-color: #aaa;
padding: 4px;
}
.ag-fresh .ag-group-cell {
font-style: italic;
}
.ag-fresh .ag-footer-cell {
font-style: italic;
}
.ag-fresh .ag-filter-checkbox {
position: relative;
top: 2px;
left: 2px;
}
.ag-fresh .ag-filter-header-container {
border-bottom: 1px solid #d3d3d3;
}
.ag-fresh .ag-filter {
border: 1px solid #000;
background-color: #f0f0f0;
}
.ag-fresh .ag-selection-checkbox {
margin-left: 4px;
}
.ag-fresh .ag-paging-panel {
padding: 4px;
}
.ag-fresh .ag-paging-button {
margin-left: 4px;
margin-right: 4px;
}
.ag-fresh .ag-paging-row-summary-panel {
display: inline-block;
width: 300px;
}