ag-grid-community
Version:
Advanced Data Grid / Data Table supporting Javascript / React / AngularJS / Web Components
150 lines (149 loc) • 913 kB
JavaScript
/**
* @ag-grid-community/all-modules - Advanced Data Grid / Data Table supporting Javascript / React / AngularJS / Web Components * @version v23.2.0
* @link http://www.ag-grid.com/
' * @license MIT
*/
/**
* @ag-grid-community/all-modules - Advanced Data Grid / Data Table supporting Javascript / React / AngularJS / Web Components * @version v23.2.0
* @link http://www.ag-grid.com/
' * @license MIT
*/
/**
* @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / React / AngularJS / Web Components
* @version v23.2.0
* @link http://www.ag-grid.com/
* @license MIT
*/
var e=function(){function e(e,t,o,n){void 0===n&&(n=1),this.r=Math.min(1,Math.max(0,e||0)),this.g=Math.min(1,Math.max(0,t||0)),this.b=Math.min(1,Math.max(0,o||0)),this.a=Math.min(1,Math.max(0,n||0))}return e.fromString=function(t){if(t.indexOf("#")>=0)return e.fromHexString(t);var o=e.nameToHex[t];if(o)return e.fromHexString(o);if(t.indexOf("rgb")>=0)return e.fromRgbaString(t);throw new Error("Invalid color string: '"+t+"'")},e.fromHexString=function(t){var o=t.match(e.hexRe);if(o)return new e((n=parseInt(o[1],16))/255,(i=parseInt(o[2],16))/255,(r=parseInt(o[3],16))/255,(s=void 0!==o[4]?parseInt(o[4],16):255)/255);if(o=t.match(e.shortHexRe)){var n=parseInt(o[1],16),i=parseInt(o[2],16),r=parseInt(o[3],16),s=void 0!==o[4]?parseInt(o[4],16):15;return new e((n+=16*n)/255,(i+=16*i)/255,(r+=16*r)/255,(s+=16*s)/255)}throw new Error("Malformed hexadecimal color string: '"+t+"'")},e.fromRgbaString=function(t){var o=t.match(e.rgbRe);if(o)return new e(+o[1]/255,+o[2]/255,+o[3]/255);if(o=t.match(e.rgbaRe))return new e(+o[1]/255,+o[2]/255,+o[3]/255,+o[4]);throw new Error("Malformed rgb/rgba color string: '"+t+"'")},e.fromArray=function(t){if(4===t.length)return new e(t[0],t[1],t[2],t[3]);if(3===t.length)return new e(t[0],t[1],t[2]);throw new Error("The given array should contain 3 or 4 color components (numbers).")},e.fromHSB=function(t,o,n,i){void 0===i&&(i=1);var r=e.HSBtoRGB(t,o,n);return new e(r[0],r[1],r[2],i)},e.padHex=function(e){return 1===e.length?"0"+e:e},e.prototype.toHexString=function(){var t="#"+e.padHex(Math.round(255*this.r).toString(16))+e.padHex(Math.round(255*this.g).toString(16))+e.padHex(Math.round(255*this.b).toString(16));return this.a<1&&(t+=e.padHex(Math.round(255*this.a).toString(16))),t},e.prototype.toRgbaString=function(e){void 0===e&&(e=3);var t=[Math.round(255*this.r),Math.round(255*this.g),Math.round(255*this.b)],o=Math.pow(10,e);return 1!==this.a?(t.push(Math.round(this.a*o)/o),"rgba("+t.join(", ")+")"):"rgb("+t.join(", ")+")"},e.prototype.toString=function(){return 1===this.a?this.toHexString():this.toRgbaString()},e.prototype.toHSB=function(){return e.RGBtoHSB(this.r,this.g,this.b)},e.RGBtoHSB=function(e,t,o){var n=Math.min(e,t,o),i=Math.max(e,t,o),r=NaN;if(n!==i){var s=i-n,a=(i-e)/s,l=(i-t)/s,p=(i-o)/s;r=e===i?p-l:t===i?2+a-p:4+l-a,(r/=6)<0&&(r+=1)}return[360*r,0!==i?(i-n)/i:0,i]},e.HSBtoRGB=function(e,t,o){isNaN(e)&&(e=0),e=(e%360+360)%360/360;var n=0,i=0,r=0;if(0===t)n=i=r=o;else{var s=6*(e-Math.floor(e)),a=s-Math.floor(s),l=o*(1-t),p=o*(1-t*a),u=o*(1-t*(1-a));switch(s>>0){case 0:n=o,i=u,r=l;break;case 1:n=p,i=o,r=l;break;case 2:n=l,i=o,r=u;break;case 3:n=l,i=p,r=o;break;case 4:n=u,i=l,r=o;break;case 5:n=o,i=l,r=p}}return[n,i,r]},e.prototype.derive=function(t,o,n,i){var r=e.RGBtoHSB(this.r,this.g,this.b),s=r[2];0==s&&n>1&&(s=.05);var a=((r[0]+t)%360+360)%360,l=Math.max(Math.min(r[1]*o,1),0);s=Math.max(Math.min(s*n,1),0);var p=Math.max(Math.min(this.a*i,1),0),u=e.HSBtoRGB(a,l,s);return u.push(p),e.fromArray(u)},e.prototype.brighter=function(){return this.derive(0,1,1/.7,1)},e.prototype.darker=function(){return this.derive(0,1,.7,1)},e.hexRe=/\s*#([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})?\s*$/,e.shortHexRe=/\s*#([0-9a-fA-F])([0-9a-fA-F])([0-9a-fA-F])([0-9a-fA-F])?\s*$/,e.rgbRe=/\s*rgb\((\d+),\s*(\d+),\s*(\d+)\)\s*/,e.rgbaRe=/\s*rgba\((\d+),\s*(\d+),\s*(\d+),\s*([.\d]+)\)\s*/,e.nameToHex=Object.freeze({aliceblue:"#F0F8FF",antiquewhite:"#FAEBD7",aqua:"#00FFFF",aquamarine:"#7FFFD4",azure:"#F0FFFF",beige:"#F5F5DC",bisque:"#FFE4C4",black:"#000000",blanchedalmond:"#FFEBCD",blue:"#0000FF",blueviolet:"#8A2BE2",brown:"#A52A2A",burlywood:"#DEB887",cadetblue:"#5F9EA0",chartreuse:"#7FFF00",chocolate:"#D2691E",coral:"#FF7F50",cornflowerblue:"#6495ED",cornsilk:"#FFF8DC",crimson:"#DC143C",cyan:"#00FFFF",darkblue:"#00008B",darkcyan:"#008B8B",darkgoldenrod:"#B8860B",darkgray:"#A9A9A9",darkgreen:"#006400",darkgrey:"#A9A9A9",darkkhaki:"#BDB76B",darkmagenta:"#8B008B",darkolivegreen:"#556B2F",darkorange:"#FF8C00",darkorchid:"#9932CC",darkred:"#8B0000",darksalmon:"#E9967A",darkseagreen:"#8FBC8F",darkslateblue:"#483D8B",darkslategray:"#2F4F4F",darkslategrey:"#2F4F4F",darkturquoise:"#00CED1",darkviolet:"#9400D3",deeppink:"#FF1493",deepskyblue:"#00BFFF",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1E90FF",firebrick:"#B22222",floralwhite:"#FFFAF0",forestgreen:"#228B22",fuchsia:"#FF00FF",gainsboro:"#DCDCDC",ghostwhite:"#F8F8FF",gold:"#FFD700",goldenrod:"#DAA520",gray:"#808080",green:"#008000",greenyellow:"#ADFF2F",grey:"#808080",honeydew:"#F0FFF0",hotpink:"#FF69B4",indianred:"#CD5C5C",indigo:"#4B0082",ivory:"#FFFFF0",khaki:"#F0E68C",lavender:"#E6E6FA",lavenderblush:"#FFF0F5",lawngreen:"#7CFC00",lemonchiffon:"#FFFACD",lightblue:"#ADD8E6",lightcoral:"#F08080",lightcyan:"#E0FFFF",lightgoldenrodyellow:"#FAFAD2",lightgray:"#D3D3D3",lightgreen:"#90EE90",lightgrey:"#D3D3D3",lightpink:"#FFB6C1",lightsalmon:"#FFA07A",lightseagreen:"#20B2AA",lightskyblue:"#87CEFA",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#B0C4DE",lightyellow:"#FFFFE0",lime:"#00FF00",limegreen:"#32CD32",linen:"#FAF0E6",magenta:"#FF00FF",maroon:"#800000",mediumaquamarine:"#66CDAA",mediumblue:"#0000CD",mediumorchid:"#BA55D3",mediumpurple:"#9370DB",mediumseagreen:"#3CB371",mediumslateblue:"#7B68EE",mediumspringgreen:"#00FA9A",mediumturquoise:"#48D1CC",mediumvioletred:"#C71585",midnightblue:"#191970",mintcream:"#F5FFFA",mistyrose:"#FFE4E1",moccasin:"#FFE4B5",navajowhite:"#FFDEAD",navy:"#000080",oldlace:"#FDF5E6",olive:"#808000",olivedrab:"#6B8E23",orange:"#FFA500",orangered:"#FF4500",orchid:"#DA70D6",palegoldenrod:"#EEE8AA",palegreen:"#98FB98",paleturquoise:"#AFEEEE",palevioletred:"#DB7093",papayawhip:"#FFEFD5",peachpuff:"#FFDAB9",peru:"#CD853F",pink:"#FFC0CB",plum:"#DDA0DD",powderblue:"#B0E0E6",purple:"#800080",rebeccapurple:"#663399",red:"#FF0000",rosybrown:"#BC8F8F",royalblue:"#4169E1",saddlebrown:"#8B4513",salmon:"#FA8072",sandybrown:"#F4A460",seagreen:"#2E8B57",seashell:"#FFF5EE",sienna:"#A0522D",silver:"#C0C0C0",skyblue:"#87CEEB",slateblue:"#6A5ACD",slategray:"#708090",slategrey:"#708090",snow:"#FFFAFA",springgreen:"#00FF7F",steelblue:"#4682B4",tan:"#D2B48C",teal:"#008080",thistle:"#D8BFD8",tomato:"#FF6347",turquoise:"#40E0D0",violet:"#EE82EE",wheat:"#F5DEB3",white:"#FFFFFF",whitesmoke:"#F5F5F5",yellow:"#FFFF00",yellowgreen:"#9ACD32"}),e}();
/**
* @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / React / AngularJS / Web Components
* @version v23.2.0
* @link http://www.ag-grid.com/
* @license MIT
*/function t(e,t){void 0===t&&(t=",");for(var o,n,i,r=[],s=function(e){return"\r"===e||"\n"===e},a=!1,l=function(l,p,u){var c=e[u-1],d=e[u],h=e[u+1],f=function(){r[l]||(r[l]=[]),r[l][p]||(r[l][p]="")};if(f(),'"'===d){if(a)return'"'===h?(r[l][p]+='"',u++):a=!1,o=l,n=p,i=u,"continue";if(void 0===c||c===t||s(c))return a=!0,o=l,n=p,i=u,"continue"}if(!a){if(d===t)return p++,f(),o=l,n=p,i=u,"continue";if(s(d))return p=0,l++,f(),"\r"===d&&"\n"===h&&u++,o=l,n=p,i=u,"continue"}r[l][p]+=d,o=l,n=p,i=u},p=0,u=0,c=0;c<e.length;c++)l(p,u,c),p=o,u=n,c=i;return r}var o,n,i,r,s,a,l=Object.freeze({__proto__:null,stringToArray:t});
/**
* @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / React / AngularJS / Web Components
* @version v23.2.0
* @link http://www.ag-grid.com/
* @license MIT
*/function p(){return void 0===n&&(n=/*@cc_on!@*/!!document.documentMode),n}function u(){return void 0===i&&(i=!p()&&!!window.StyleMedia),i}function c(){if(void 0===o){var e=window;o=Object.prototype.toString.call(e.HTMLElement).indexOf("Constructor")>0||(t=e.safari&&e.safari.pushNotification)&&"[object SafariRemoteNotification]"===t.toString()}var t;return o}function d(){if(void 0===r){var e=window;r=!!e.chrome&&(!!e.chrome.webstore||!!e.chrome.runtime)||/Chrome/.test(navigator.userAgent)&&/Google Inc/.test(navigator.vendor)}return r}function h(){if(void 0===s){var e=window;s=void 0!==e.InstallTrigger}return s}var f=Object.freeze({__proto__:null,isBrowserIE:p,isBrowserEdge:u,isBrowserSafari:c,isBrowserChrome:d,isBrowserFirefox:h,isIOSUserAgent:function(){return void 0===a&&(a=(/iPad|iPhone|iPod/.test(navigator.platform)||"MacIntel"===navigator.platform&&navigator.maxTouchPoints>1)&&!window.MSStream),a},getTabIndex:function(e){if(!e)return null;var t=e.tabIndex,o=e.getAttribute("tabIndex");if(p()&&0===t&&null===e.getAttribute("tabIndex")){return!0==={a:!0,body:!0,button:!0,frame:!0,iframe:!0,img:!0,input:!0,isindex:!0,object:!0,select:!0,textarea:!0}[e.nodeName.toLowerCase()]?"0":null}return-1!==t||null!==o&&(""!==o||h())?t.toString():null},getMaxDivHeight:function(){if(!document.body)return-1;var e=1e6,t=navigator.userAgent.toLowerCase().match(/firefox/)?6e6:1e9,o=document.createElement("div");for(document.body.appendChild(o);;){var n=2*e;if(o.style.height=n+"px",n>t||o.clientHeight!==n)break;e=n}return document.body.removeChild(o),e},getScrollbarWidth:function(){var e=document.body,t=document.createElement("div");t.style.width=t.style.height="100px",t.style.opacity="0",t.style.overflow="scroll",t.style.msOverflowStyle="scrollbar",t.style.position="absolute",e.appendChild(t);var o=t.offsetWidth-t.clientWidth;return t.parentNode&&t.parentNode.removeChild(t),o},hasOverflowScrolling:function(){var e=["webkit","moz","o","ms"],t=document.createElement("div"),o=!1;document.getElementsByTagName("body")[0].appendChild(t),t.setAttribute("style",e.map((function(e){return"-"+e+"-overflow-scrolling: touch"})).concat("overflow-scrolling: touch").join(";"));var n=window.getComputedStyle(t);if("touch"===n.overflowScrolling&&(o=!0),!o)for(var i=0,r=e;i<r.length;i++)if("touch"===n[r[i]+"OverflowScrolling"]){o=!0;break}return t.parentNode&&t.parentNode.removeChild(t),o},getBodyWidth:function(){return document.body?document.body.clientWidth:window.innerHeight?window.innerWidth:document.documentElement&&document.documentElement.clientWidth?document.documentElement.clientWidth:-1},getBodyHeight:function(){return document.body?document.body.clientHeight:window.innerHeight?window.innerHeight:document.documentElement&&document.documentElement.clientHeight?document.documentElement.clientHeight:-1}});
/**
* @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / React / AngularJS / Web Components
* @version v23.2.0
* @link http://www.ag-grid.com/
* @license MIT
*/function g(e){return null==e||""===e?null:e}function y(e,t){return void 0===t&&(t=!1),null!=e&&(t||""!==e)}function m(e){return!y(e)}function v(e){return y(e)&&e.toString?e.toString():null}function C(e){if(e instanceof Set||e instanceof Map){var t=[];return e.forEach((function(e){return t.push(e)})),t}return Object.keys(e).map((function(t){return e[t]}))}var w=Object.freeze({__proto__:null,makeNull:g,exists:y,missing:m,missingOrEmpty:function(e){return!e||m(e)||0===e.length},toStringOrNull:v,referenceCompare:function(e,t){return null==e&&null==t||(null!=e||null==t)&&((null==e||null!=t)&&e===t)},jsonEquals:function(e,t){return(e?JSON.stringify(e):null)===(t?JSON.stringify(t):null)},defaultComparator:function(e,t,o){void 0===o&&(o=!1);var n=null==e,i=null==t;if(e&&e.toNumber&&(e=e.toNumber()),t&&t.toNumber&&(t=t.toNumber()),n&&i)return 0;if(n)return-1;if(i)return 1;function r(e,t){return e>t?1:e<t?-1:0}if("string"==typeof e){if(!o)return r(e,t);try{return e.localeCompare(t)}catch(o){return r(e,t)}}return r(e,t)},find:function e(t,o,n){if(null==t)return null;if(!Array.isArray(t))return e(C(t),o,n);for(var i=t,r=null,s=0;s<i.length;s++){var a=i[s];if("string"==typeof o){if(a[o]===n){r=a;break}}else if(o(a)){r=a;break}}return r},values:C}),E=/[&<>"']/g,R={"&":"&","<":"<",">":">",'"':""","'":"'"};
/**
* @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / React / AngularJS / Web Components
* @version v23.2.0
* @link http://www.ag-grid.com/
* @license MIT
*/function O(e){return null==e?null:e.replace(/([A-Z])/g,(function(e){return"-"+e[0].toLowerCase()}))}function P(e){return null==e?null:e.replace(/-([a-z])/g,(function(e){return e[1].toUpperCase()}))}var b=Object.freeze({__proto__:null,utf8_encode:function(e){var t=String.fromCharCode;function o(e,o){return t(e>>o&63|128)}function n(e){if(0==(4294967168&e))return t(e);var n="";return 0==(4294965248&e)?n=t(e>>6&31|192):0==(4294901760&e)?(!function(e){if(e>=55296&&e<=57343)throw Error("Lone surrogate U+"+e.toString(16).toUpperCase()+" is not a scalar value")}(e),n=t(e>>12&15|224),n+=o(e,6)):0==(4292870144&e)&&(n=t(e>>18&7|240),n+=o(e,12),n+=o(e,6)),n+=t(63&e|128)}for(var i=function(e){for(var t,o,n=[],i=0,r=e.length;i<r;)(t=e.charCodeAt(i++))>=55296&&t<=56319&&i<r?56320==(64512&(o=e.charCodeAt(i++)))?n.push(((1023&t)<<10)+(1023&o)+65536):(n.push(t),i--):n.push(t);return n}(e),r=i.length,s=-1,a="";++s<r;)a+=n(i[s]);return a},camelCaseToHyphen:O,hyphenToCamelCase:P,capitalise:function(e){return e[0].toUpperCase()+e.substr(1).toLowerCase()},escape:function(e){return null!=e&&e.replace?e.replace(E,(function(e){return R[e]})):e},camelCaseToHumanText:function(e){return e&&null!=e?e.replace(/([A-Z])([A-Z])([a-z])|([a-z])([A-Z])/g,"$1$4 $2$3$5").replace("."," ").split(" ").map((function(e){return e.substring(0,1).toUpperCase()+(e.length>1?e.substring(1,e.length):"")})).join(" "):null}});
/**
* @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / React / AngularJS / Web Components
* @version v23.2.0
* @link http://www.ag-grid.com/
* @license MIT
*/function S(e,t){if(t&&0!==t.length){if(!(t.indexOf(" ")>=0)){if(e.classList)e.classList.add(t);else if(e.className&&e.className.length>0){var o=e.className.split(" ");o.indexOf(t)<0&&(o.push(t),e.setAttribute("class",o.join(" ")))}else e.setAttribute("class",t);return e}t.split(" ").forEach((function(t){return S(e,t)}))}}function D(e,t){if(e.classList)e.classList.remove(t);else if(e.className&&e.className.length>0){var o=e.className.split(" ").filter((function(e){return e!==t})).join(" ");e.setAttribute("class",o)}}function _(e,t,o){o?S(e,t):D(e,t)}function T(e,t){if(e.classList)return e.classList.contains(t);if(e.className){var o=e.className===t,n=e.className.indexOf(" "+t+" ")>=0,i=0===e.className.indexOf(t+" "),r=e.className.lastIndexOf(" "+t)===e.className.length-t.length-1;return o||n||i||r}return!1}function A(e,t){_(e,"ag-hidden",!t)}function N(e,t){t?e.setAttribute("disabled",""):e.removeAttribute("disabled")}function F(e){var t=window.getComputedStyle(e),o=t.height,n=t.width,i=t.paddingTop,r=t.paddingRight,s=t.paddingBottom,a=t.paddingLeft,l=t.marginTop,p=t.marginRight,u=t.marginBottom,c=t.marginLeft,d=t.boxSizing;return{height:parseFloat(o),width:parseFloat(n),paddingTop:parseFloat(i),paddingRight:parseFloat(r),paddingBottom:parseFloat(s),paddingLeft:parseFloat(a),marginTop:parseFloat(l),marginRight:parseFloat(p),marginBottom:parseFloat(u),marginLeft:parseFloat(c),boxSizing:d}}function L(e){for(;e&&e.firstChild;)e.removeChild(e.firstChild)}function I(e){e&&e.parentNode&&e.parentNode.removeChild(e)}function M(e){var t=document.createElement("div");return t.innerHTML=(e||"").trim(),t.firstChild}function G(e,t){for(var o=0;o<t.length;o++){var n=t[o],i=e.children[o];i!==n&&e.insertBefore(n,i)}}function x(e,t){"flex"===t?(e.style.width=null,e.style.minWidth=null,e.style.maxWidth=null,e.style.flex="1 1 auto"):V(e,t)}function V(e,t){t=H(t),e.style.width=t.toString(),e.style.maxWidth=t.toString(),e.style.minWidth=t.toString()}function W(e,t){t=H(t),e.style.height=t.toString(),e.style.maxHeight=t.toString(),e.style.minHeight=t.toString()}function H(e){return"number"==typeof e?e+"px":e}function k(e){return"function"==typeof Node?e instanceof Node:e&&"object"==typeof e&&"number"==typeof e.nodeType&&"string"==typeof e.nodeName}function B(e){return"function"==typeof HTMLElement?e instanceof HTMLElement:e&&"object"==typeof e&&null!==e&&1===e.nodeType&&"string"==typeof e.nodeName}function j(e){return k(e)||B(e)}var U=Object.freeze({__proto__:null,addCssClass:S,removeCssClass:D,addOrRemoveCssClass:_,radioCssClass:function(e,t,o){for(var n=e.parentElement.firstChild;n;)t&&_(n,t,n===e),o&&_(n,o,n!==e),n=n.nextSibling},containsClass:T,setDisplayed:A,setVisible:function(e,t){_(e,"ag-invisible",!t)},setDisabled:N,isElementChildOfClass:function(e,t,o){for(var n=0;e;){if(T(e,t))return!0;if(e=e.parentElement,o&&++n>o)break}return!1},getElementSize:F,getInnerHeight:function(e){var t=F(e);return"border-box"===t.boxSizing?t.height-t.paddingTop-t.paddingBottom:t.height},getInnerWidth:function(e){var t=F(e);return"border-box"===t.boxSizing?t.width-t.paddingLeft-t.paddingRight:t.width},getAbsoluteHeight:function(e){var t=F(e),o=t.marginBottom+t.marginTop;return Math.ceil(e.offsetHeight+o)},getAbsoluteWidth:function(e){var t=F(e),o=t.marginLeft+t.marginRight;return Math.ceil(e.offsetWidth+o)},getScrollLeft:function(e,t){var o=e.scrollLeft;return t&&(o=Math.abs(o),d()&&(o=e.scrollWidth-e.clientWidth-o)),o},setScrollLeft:function(e,t,o){o&&((c()||d())&&(t=e.scrollWidth-e.clientWidth-t),h()&&(t*=-1)),e.scrollLeft=t},clearElement:L,removeElement:function(e,t){I(e.querySelector(t))},removeFromParent:I,isVisible:function(e){return null!==e.offsetParent},loadTemplate:M,appendHtml:function(e,t){e.lastChild?e.insertAdjacentHTML("afterbegin",t):e.innerHTML=t},getElementAttribute:function(e,t){return e.attributes&&e.attributes[t]?e.attributes[t].value:null},offsetHeight:function(e){return e&&e.clientHeight?e.clientHeight:0},offsetWidth:function(e){return e&&e.clientWidth?e.clientWidth:0},ensureDomOrder:function(e,t,o){o&&o.nextSibling===t||(o?o.nextSibling?e.insertBefore(t,o.nextSibling):e.appendChild(t):e.firstChild&&e.firstChild!==t&&e.insertAdjacentElement("afterbegin",t))},setDomChildOrder:G,insertTemplateWithDomOrder:function(e,t,o){var n;return o?(o.insertAdjacentHTML("afterend",t),n=o.nextSibling):(e.firstChild?e.insertAdjacentHTML("afterbegin",t):e.innerHTML=t,n=e.firstChild),n},prependDC:function(e,t){y(e.firstChild)?e.insertBefore(t,e.firstChild):e.appendChild(t)},addStylesToElement:function(e,t){t&&Object.keys(t).forEach((function(o){var n=P(o);n&&(e.style[n]=t[o])}))},isHorizontalScrollShowing:function(e){return e.clientWidth<e.scrollWidth},isVerticalScrollShowing:function(e){return e.clientHeight<e.scrollHeight},setElementWidth:x,setFixedWidth:V,setElementHeight:function(e,t){"flex"===t?(e.style.height=null,e.style.minHeight=null,e.style.maxHeight=null,e.style.flex="1 1 auto"):W(e,t)},setFixedHeight:W,formatSize:H,isNode:k,isElement:B,isNodeOrElement:j,copyNodeList:function(e){for(var t=e?e.length:0,o=[],n=0;n<t;n++)o.push(e[n]);return o},iterateNamedNodeMap:function(e,t){if(e)for(var o=0;o<e.length;o++){var n=e[o];t(n.name,n.value)}},setCheckboxState:function(e,t){"boolean"==typeof t?(e.checked=t,e.indeterminate=!1):e.indeterminate=!0}});
/**
* @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / React / AngularJS / Web Components
* @version v23.2.0
* @link http://www.ag-grid.com/
* @license MIT
*/function z(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];for(var o=0;o<e.length;o++){var n=e[o];if(y(n))return n}return null}function Y(e){if(e&&e.length)return e[e.length-1]}function K(e,t,o){return null==e&&null==t||null!=e&&null!=t&&e.length===t.length&&Z(e,(function(e,n){return o?o(e,t[n]):t[n]===e}))}function q(e,t){var o=e.indexOf(t);o>=0&&e.splice(o,1)}function Q(e,t){ee(t,(function(t){return q(e,t)}))}function X(e,t,o){e.splice(o,0,t)}function $(e,t){return e.indexOf(t)>-1}function Z(e,t){if(null==e)return!0;for(var o=0;o<e.length;o++)if(!t(e[o],o))return!1;return!0}function J(e,t){if(null==e)return!1;for(var o=0;o<e.length;o++)if(t(e[o],o))return!0;return!1}function ee(e,t){if(null!=e)for(var o=0;o<e.length;o++)t(e[o],o)}function te(e,t){if(null==e)return null;for(var o=[],n=0;n<e.length;n++)o.push(t(e[n],n));return o}var oe=Object.freeze({__proto__:null,firstExistingValue:z,anyExists:function(e){return e&&null!=z(e)},existsAndNotEmpty:function(e){return null!=e&&e.length>0},last:Y,areEqual:K,compareArrays:function(e,t){return K(e,t)},shallowCompare:function(e,t){return K(e,t)},sortNumerically:function(e){return e.sort((function(e,t){return e-t}))},removeRepeatsFromArray:function(e,t){if(e)for(var o=e.length-2;o>=0;o--){var n=e[o]===t,i=e[o+1]===t;n&&i&&e.splice(o+1,1)}},removeFromArray:q,removeAllFromArray:Q,insertIntoArray:X,insertArrayIntoArray:function(e,t,o){if(null!=e&&null!=t)for(var n=t.length-1;n>=0;n--){X(e,t[n],o)}},moveInArray:function(e,t,o){Q(e,t),ee(t.slice().reverse(),(function(t){return X(e,t,o)}))},includes:$,flatten:function(e){return[].concat.apply([],e)},pushAll:function(e,t){null!=t&&null!=e&&ee(t,(function(t){return e.push(t)}))},toStrings:function(e){return te(e,v)},findIndex:function(e,t){for(var o=0;o<e.length;o++)if(t(e[o],o,e))return o;return-1},every:Z,some:J,forEach:ee,map:te,filter:function(e,t){if(null==e)return null;for(var o=[],n=0;n<e.length;n++)t(e[n],n)&&o.push(e[n]);return o},reduce:function(e,t,o){if(null==e||null==o)return null;for(var n=o,i=0;i<e.length;i++)n=t(n,e[i],i);return n},forEachSnapshotFirst:function(e,t){e&&e.slice(0).forEach(t)}});
/**
* @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / React / AngularJS / Web Components
* @version v23.2.0
* @link http://www.ag-grid.com/
* @license MIT
*/function ne(e,t){null!=e&&(Array.isArray(e)?ee(e,(function(e,o){return t(""+o,e)})):ee(Object.keys(e),(function(o){return t(o,e[o])})))}function ie(e){for(var t={},o=Object.keys(e),n=0;n<o.length;n++){var i=o[n],r=e[i];t[i]=r}return t}function re(e,t){return e[t]}function se(e,t,o){e[t]=o}function ae(e,t,o,n){var i=re(e,o);void 0!==i&&se(t,o,n?n(i):i)}function le(e,t,o){void 0===o&&(o=!0),y(t)&&ne(t,(function(t,n){var i=e[t];i!==n&&("object"!=typeof i||"object"!=typeof n||Array.isArray(i)?(o||void 0!==n)&&(e[t]=n):le(i,n))}))}function pe(e){for(var t=[],o=1;o<arguments.length;o++)t[o-1]=arguments[o];return ee(t,(function(t){return ne(t,(function(t,o){return e[t]=o}))})),e}var ue=Object.freeze({__proto__:null,iterateObject:ne,cloneObject:ie,deepCloneObject:function(e){return JSON.parse(JSON.stringify(e))},getProperty:re,setProperty:se,copyPropertiesIfPresent:function(e,t){for(var o=[],n=2;n<arguments.length;n++)o[n-2]=arguments[n];ee(o,(function(o){return ae(e,t,o)}))},copyPropertyIfPresent:ae,getAllKeysInObjects:function(e){var t={};return e.filter((function(e){return null!=e})).forEach((function(e){ee(Object.keys(e),(function(e){return t[e]=null}))})),Object.keys(t)},mergeDeep:le,assign:pe,missingOrEmptyObject:function(e){return m(e)||0===Object.keys(e).length},get:function(e,t,o){if(null==e)return o;for(var n=t.split("."),i=e;n.length>1;)if(null==(i=i[n.shift()]))return o;var r=i[n[0]];return null!=r?r:o},set:function(e,t,o){if(null!=e){for(var n=t.split("."),i=e;n.length>1;)if(null==(i=i[n.shift()]))return;i[n[0]]=o}},deepFreeze:function e(t){return Object.freeze(t),ee(C(t),(function(t){null==t||"object"!=typeof t&&"function"!=typeof t||e(t)})),t},getValueUsingField:function(e,t,o){if(t&&e){if(!o)return e[t];for(var n=t.split("."),i=e,r=0;r<n.length;r++)if(m(i=i[n[r]]))return null;return i}}});
/**
* @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / React / AngularJS / Web Components
* @version v23.2.0
* @link http://www.ag-grid.com/
* @license MIT
*/var ce=Object.freeze({__proto__:null,getNameOfClass:function(e){var t=e.toString(),o=/function (.{1,})\(/.exec(t);return o&&o.length>1?o[1]:""},findLineByLeastSquares:function(e){var t=e.length,o=0;if(t<=1)return e;for(var n=0;n<e.length;n++){var i=e[n];Math.floor(i)!==i&&(o=Math.max(o,i.toString().split(".")[1].length))}for(var r=0,s=0,a=0,l=0,p=0,u=0;u<t;u++)r+=u,s+=p=e[u],l+=u*u,a+=u*p;var c=(t*a-r*s)/(t*l-r*r),d=s/t-c*r/t,h=[];for(u=0;u<=t;u++)h.push(parseFloat((u*c+d).toFixed(o)));return h},cssStyleObjectToMarkup:function(e){if(!e)return"";var t=[];return ne(e,(function(e,o){var n=O(e);t.push(n+": "+o+";")})),t.join(" ")},message:function(e){var t=document.createElement("div"),o=document.querySelector("#__ag__message");if(t.innerHTML=e,!o){o=M('<div id="__ag__message" style="display: inline-block; position: absolute; top: 0px; left: 0px; color: white; background-color: black; z-index: 20; padding: 2px; border: 1px solid darkred; height: 200px; overflow-y: auto;"></div>'),document.body&&document.body.appendChild(o)}o.insertBefore(t,o.children[0])},bindCellRendererToHtmlElement:function(e,t){e.then((function(e){var o=e.getGui();null!=o&&("object"==typeof o?t.appendChild(o):t.innerHTML=o)}))}});
/**
* @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / React / AngularJS / Web Components
* @version v23.2.0
* @link http://www.ag-grid.com/
* @license MIT
*/function de(e,t){for(var o=""+e;o.length<t;)o="0"+o;return o}function he(e){return"number"!=typeof e?"":e.toString().replace(/(\d)(?=(\d{3})+(?!\d))/g,"$1,")}var fe=Object.freeze({__proto__:null,padStart:de,createArrayOfNumbers:function(e,t){for(var o=[],n=e;n<=t;n++)o.push(n);return o},isNumeric:function(e){return""!==e&&!isNaN(parseFloat(e))&&isFinite(e)},getMaxSafeInteger:function(){return Number.MAX_SAFE_INTEGER||9007199254740991},cleanNumber:function(e){return"string"==typeof e&&(e=parseInt(e,10)),"number"==typeof e?Math.floor(e):null},decToHex:function(e,t){for(var o="",n=0;n<t;n++)o+=String.fromCharCode(255&e),e>>>=8;return o},formatNumberTwoDecimalPlacesAndCommas:function(e){return"number"!=typeof e?"":he(Math.round(100*e)/100)},formatNumberCommas:he,sum:function(e){return null==e?null:e.reduce((function(e,t){return e+t}),0)}});
/**
* @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / React / AngularJS / Web Components
* @version v23.2.0
* @link http://www.ag-grid.com/
* @license MIT
*/function ge(e,t,o){if(void 0===t&&(t=!0),void 0===o&&(o="-"),!e)return null;var n=[e.getFullYear(),e.getMonth()+1,e.getDate()].map((function(e){return de(e,2)})).join(o);return t&&(n+=" "+[e.getHours(),e.getMinutes(),e.getSeconds()].map((function(e){return de(e,2)})).join(":")),n}function ye(e){if(!e)return null;var t=e.split(" "),o=t[0],n=t[1];if(!o)return null;var i=o.split("-").map((function(e){return parseInt(e,10)}));if(3!==i.filter((function(e){return!isNaN(e)})).length)return null;var r=i[0],s=i[1],a=i[2],l=new Date(r,s-1,a);if(l.getFullYear()!==r||l.getMonth()!==s-1||l.getDate()!==a)return null;if(!n||"00:00:00"===n)return l;var p=n.split(":").map((function(e){return parseInt(e,10)})),u=p[0],c=p[1],d=p[2];return u>=0&&u<24&&l.setHours(u),c>=0&&c<60&&l.setMinutes(c),d>=0&&d<60&&l.setSeconds(d),l}var me=Object.freeze({__proto__:null,serialiseDate:ge,parseDateTimeFromString:ye}),ve=["touchstart","touchend","touchmove","touchcancel"],Ce=["mouseover","mouseout","mouseenter","mouseleave"],we={};
/**
* @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / React / AngularJS / Web Components
* @version v23.2.0
* @link http://www.ag-grid.com/
* @license MIT
*/var Ee,Re=(Ee={select:"input",change:"input",submit:"form",reset:"form",error:"img",load:"img",abort:"img"},function(e){if("boolean"==typeof we[e])return we[e];var t=document.createElement(Ee[e]||"div"),o=(e="on"+e)in t;return o||(t.setAttribute(e,"return;"),o="function"==typeof t[e]),t=null,we[e]=o});function Oe(e){var t=e;return t.target||t.srcElement}function Pe(e){for(var t=[],o=Oe(e);o;)t.push(o),o=o.parentElement;return t}function be(e){var t=e;return t.deepPath?t.deepPath():t.path?t.path:t.composedPath?t.composedPath():t.__agGridEventPath?t.__agGridEventPath:Pe(e)}var Se=Object.freeze({__proto__:null,stopPropagationForAgGrid:function(e){e.__ag_Grid_Stop_Propagation=!0},isStopPropagationForAgGrid:function(e){return!0===e.__ag_Grid_Stop_Propagation},isEventSupported:Re,getCellCompForEvent:function(e,t){for(var o=Oe(t);o;){var n=e.getDomData(o,"cellComp");if(n)return n;o=o.parentElement}return null},addChangeListener:function(e,t){e.addEventListener("changed",t),e.addEventListener("paste",t),e.addEventListener("input",t),e.addEventListener("keydown",t),e.addEventListener("keyup",t)},getTarget:Oe,isElementInEventPath:function(e,t){return!(!t||!e)&&be(t).indexOf(e)>=0},createEventPath:Pe,addAgGridEventPath:function(e){e.__agGridEventPath=be(e)},getEventPath:be,addSafePassiveEventListener:function(e,t,o,n){var i=$(ve,o)?{passive:!0}:void 0;$(Ce,o)?e&&e.addEventListenerOutsideAngular&&e.addEventListenerOutsideAngular(t,o,n,i):t.addEventListener(o,n,i)}}),De=/((\/\/.*$)|(\/\*[\s\S]*?\*\/))/gm,_e=/([^\s,]+)/g,Te={};
/**
* @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / React / AngularJS / Web Components
* @version v23.2.0
* @link http://www.ag-grid.com/
* @license MIT
*/function Ae(e,t){void 0===t&&(t=0),e.length>0&&window.setTimeout((function(){return e.forEach((function(e){return e()}))}),t)}function Ne(e,t,o){var n;return void 0===o&&(o=!1),function(){for(var i=[],r=0;r<arguments.length;r++)i[r]=arguments[r];var s=this,a=o&&!n;window.clearTimeout(n),n=window.setTimeout((function(){n=null,o||e.apply(s,i)}),t),a&&e.apply(s,i)}}var Fe=Object.freeze({__proto__:null,doOnce:function(e,t){Te[t]||(e(),Te[t]=!0)},getFunctionParameters:function(e){var t=e.toString().replace(De,"");return t.slice(t.indexOf("(")+1,t.indexOf(")")).match(_e)||[]},isFunction:function(e){return!!(e&&e.constructor&&e.call&&e.apply)},executeInAWhile:function(e){Ae(e,400)},executeNextVMTurn:function(e){Ae(e,0)},executeAfter:Ae,debounce:Ne,compose:function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return function(t){return e.reduce((function(e,t){return t(e)}),t)}},callIfPresent:function(e){e&&e()}});
/**
* @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / React / AngularJS / Web Components
* @version v23.2.0
* @link http://www.ag-grid.com/
* @license MIT
*/function Le(e,t,o,n){var i=n?Ge:Me,r=t.map((function(t){return{value:t,relevance:i(e.toLowerCase(),t.toLocaleLowerCase())}}));return r.sort((function(e,t){return t.relevance-e.relevance})),o&&(r=r.filter((function(e){return 0!==e.relevance}))),r.map((function(e){return e.value}))}function Ie(e){var t,o,n,i=e.toLowerCase(),r=new Array(i.length-1);for(t=o=0,n=r.length;o<=n;t=o+=1)r[t]=i.slice(t,t+2);return r}function Me(e,t){if(0===e.length&&0===t.length)return 0;var o,n,i=Ie(e),r=Ie(t),s=i.length+r.length,a=0;for(o=0,n=i.length;o<n;o++){var l,p=i[o],u=void 0;for(u=0,l=r.length;u<l;u++){p===r[u]&&a++}}return a>0?2*a/s:0}function Ge(e,t){for(var o=e.replace(/\s/g,""),n=t.replace(/\s/g,""),i=0,r=0,s=0;s<o.length;s++){var a=n.indexOf(o[s]);-1!==a&&(r=a,i+=100*(n.length-r)/n.length,i*=i)}return i}var xe=Object.freeze({__proto__:null,fuzzyCheckStrings:function(e,t,o){var n={},i=e.filter((function(e){return!t.some((function(t){return t===e}))}));return i.length>0&&i.forEach((function(e){return n[e]=Le(e,o)})),n},fuzzySuggestions:Le,get_bigrams:Ie,string_distances:Me,string_weighted_distances:Ge}),Ve={columnGroupOpened:"expanded",columnGroupClosed:"contracted",columnSelectClosed:"tree-closed",columnSelectOpen:"tree-open",columnSelectIndeterminate:"tree-indeterminate",columnMovePin:"pin",columnMoveHide:"eye-slash",columnMoveMove:"arrows",columnMoveLeft:"left",columnMoveRight:"right",columnMoveGroup:"group",columnMoveValue:"aggregation",columnMovePivot:"pivot",dropNotAllowed:"not-allowed",groupContracted:"tree-closed",groupExpanded:"tree-open",chart:"chart",close:"cross",cancel:"cancel",check:"tick",first:"first",previous:"previous",next:"next",last:"last",linked:"linked",unlinked:"unlinked",colorPicker:"color-picker",groupLoading:"loading",menu:"menu",filter:"filter",columns:"columns",maximize:"maximize",minimize:"minimize",menuPin:"pin",menuValue:"aggregation",menuAddRowGroup:"group",menuRemoveRowGroup:"group",clipboardCopy:"copy",clipboardPaste:"paste",pivotPanel:"pivot",rowGroupPanel:"group",valuePanel:"aggregation",columnDrag:"grip",rowDrag:"grip",save:"save",smallDown:"small-down",smallLeft:"small-left",smallRight:"small-right",smallUp:"small-up",sortAscending:"asc",sortDescending:"desc",sortUnSort:"none"};
/**
* @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / React / AngularJS / Web Components
* @version v23.2.0
* @link http://www.ag-grid.com/
* @license MIT
*/function We(e,t,o,n){var i=null,r=o&&o.getColDef().icons;if(r&&(i=r[e]),t&&!i){var s=t.getIcons();s&&(i=s[e])}if(!i){var a=document.createElement("span"),l=Ve[e];return l||(n?l=e:(console.warn("ag-Grid: Did not find icon "+e),l="")),a.setAttribute("class","ag-icon ag-icon-"+l),a.setAttribute("unselectable","on"),a}var p=void 0;if("function"==typeof i)p=i();else{if("string"!=typeof i)throw new Error("icon from grid options needs to be a string or a function");p=i}return"string"==typeof p?M(p):j(p)?p:void console.warn("ag-Grid: iconRenderer should return back a string or a dom object")}var He=Object.freeze({__proto__:null,iconNameClassMap:Ve,createIcon:function(e,t,o){var n=We(e,t,o);if(n.className.indexOf("ag-icon")>-1)return n;var i=document.createElement("span");return i.appendChild(n),i},createIconNoSpan:We}),ke=function(){function e(){}return e.STEP_EVERYTHING=0,e.STEP_FILTER=1,e.STEP_SORT=2,e.STEP_MAP=3,e.STEP_AGGREGATE=4,e.STEP_PIVOT=5,e.ROW_BUFFER_SIZE=10,e.LAYOUT_INTERVAL=500,e.BATCH_WAIT_MILLIS=50,e.EXPORT_TYPE_DRAG_COPY="dragCopy",e.EXPORT_TYPE_CLIPBOARD="clipboard",e.EXPORT_TYPE_EXCEL="excel",e.EXPORT_TYPE_CSV="csv",e.KEY_BACKSPACE=8,e.KEY_TAB=9,e.KEY_NEW_LINE=10,e.KEY_ENTER=13,e.KEY_SHIFT=16,e.KEY_ESCAPE=27,e.KEY_SPACE=32,e.KEY_LEFT=37,e.KEY_UP=38,e.KEY_RIGHT=39,e.KEY_DOWN=40,e.KEY_DELETE=46,e.KEY_A=65,e.KEY_C=67,e.KEY_V=86,e.KEY_D=68,e.KEY_Z=90,e.KEY_Y=89,e.KEY_F2=113,e.KEY_PAGE_UP=33,e.KEY_PAGE_DOWN=34,e.KEY_PAGE_HOME=36,e.KEY_PAGE_END=35,e.ROW_MODEL_TYPE_INFINITE="infinite",e.ROW_MODEL_TYPE_VIEWPORT="viewport",e.ROW_MODEL_TYPE_CLIENT_SIDE="clientSide",e.ROW_MODEL_TYPE_SERVER_SIDE="serverSide",e.DEPRECATED_ROW_MODEL_TYPE_NORMAL="normal",e.ALWAYS="always",e.ONLY_WHEN_GROUPING="onlyWhenGrouping",e.PINNED_TOP="top",e.PINNED_BOTTOM="bottom",e.DOM_LAYOUT_NORMAL="normal",e.DOM_LAYOUT_PRINT="print",e.DOM_LAYOUT_AUTO_HEIGHT="autoHeight",e.GROUP_AUTO_COLUMN_ID="ag-Grid-AutoColumn",e.SOURCE_PASTE="paste",e.PINNED_RIGHT="right",e.PINNED_LEFT="left",e.SORT_ASC="asc",e.SORT_DESC="desc",e}();
/**
* @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / React / AngularJS / Web Components
* @version v23.2.0
* @link http://www.ag-grid.com/
* @license MIT
*/function Be(e,t){return(e.which||e.keyCode)===t}var je=Object.freeze({__proto__:null,isKeyPressed:Be,isCharacterKey:function(e){var t=e.which;return"number"==typeof t&&t?!e.ctrlKey&&!e.metaKey&&!e.altKey&&8!==e.which&&16!==e.which:void 0===t},isEventFromPrintableCharacter:function(e){var t=String.fromCharCode(e.charCode);if(Be(e,ke.KEY_NEW_LINE))return!1;if(e.altKey||e.ctrlKey)return!1;if(y(e.key)){var o=1===e.key.length,n=function(e){return(u()||p())&&"Del"===e.key&&46===e.charCode}(e);return o||n}return"qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM1234567890!\"\xa3$%^&*()_+-=[];'#,./\\|<>?:@~{}".indexOf(t)>=0},isUserSuppressingKeyboardEvent:function(e,t,o,n,i){var r=e.getSuppressKeyboardEventFunc(),s=n.getColDef().suppressKeyboardEvent;if(!r&&!s)return!1;var a={event:t,editing:i,column:n,api:e.getApi(),node:o,data:o.data,colDef:n.getColDef(),context:e.getContext(),columnApi:e.getColumnApi()};return!(!s||!s(a))||!!r&&r(a)}});
/**
* @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / React / AngularJS / Web Components
* @version v23.2.0
* @link http://www.ag-grid.com/
* @license MIT
*/var Ue=Object.freeze({__proto__:null,keys:function(e){var t=[];return e.forEach((function(e,o){return t.push(o)})),t}});
/**
* @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / React / AngularJS / Web Components
* @version v23.2.0
* @link http://www.ag-grid.com/
* @license MIT
*/var ze=Object.freeze({__proto__:null,normalizeWheel:function(e){var t=0,o=0,n=0,i=0;return"detail"in e&&(o=e.detail),"wheelDelta"in e&&(o=-e.wheelDelta/120),"wheelDeltaY"in e&&(o=-e.wheelDeltaY/120),"wheelDeltaX"in e&&(t=-e.wheelDeltaX/120),"axis"in e&&e.axis===e.HORIZONTAL_AXIS&&(t=o,o=0),n=10*t,i=10*o,"deltaY"in e&&(i=e.deltaY),"deltaX"in e&&(n=e.deltaX),(n||i)&&e.deltaMode&&(1==e.deltaMode?(n*=40,i*=40):(n*=800,i*=800)),n&&!t&&(t=n<1?-1:1),i&&!o&&(o=i<1?-1:1),{spinX:t,spinY:o,pixelX:n,pixelY:i}},isLeftClick:function(e){return"buttons"in e?1==e.buttons:1==(e.which||e.button)},areEventsNear:function(e,t,o){if(0===o)return!1;var n=Math.abs(e.clientX-t.clientX),i=Math.abs(e.clientY-t.clientY);return Math.max(n,i)<=o}});
/**
* @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / React / AngularJS / Web Components
* @version v23.2.0
* @link http://www.ag-grid.com/
* @license MIT
*/var Ye=Object.freeze({__proto__:null,sortRowNodesByOrder:function(e,t){if(e){for(var o=function(e,o){var n=t[e.id],i=t[o.id],r=void 0!==n,s=void 0!==i;return r&&s?n-i:!r&&!s?e.__objectId-o.__objectId:r?1:-1},n=!1,i=0;i<e.length-1;i++)if(o(e[i],e[i+1])>0){n=!0;break}n&&e.sort(o)}},traverseNodesWithKey:function(e,t){var o=[];!function e(n){n.forEach((function(n){if(n.group||n.hasChildren()){o.push(n.key);var i=o.join("|");t(n,i),e(n.childrenAfterGroup),o.pop()}}))}(e)}});
/**
* @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / React / AngularJS / Web Components
* @version v23.2.0
* @link http://www.ag-grid.com/
* @license MIT
*/function Ke(e){var t=new Set;return e.forEach((function(e){return t.add(e)})),t}var qe,Qe=Object.freeze({__proto__:null,convertToSet:Ke}),Xe=function(){return(Xe=Object.assign||function(e){for(var t,o=1,n=arguments.length;o<n;o++)for(var i in t=arguments[o])Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e}).apply(this,arguments)},$e=Xe(Xe(Xe(Xe(Xe(Xe(Xe(Xe(Xe(Xe(Xe(Xe(Xe(Xe(Xe(Xe(Xe(Xe(Xe({},ce),oe),f),l),me),U),Se),Fe),xe),w),He),je),Ue),ze),fe),ue),Ye),Qe),b),Ze=function(){function e(e,t){void 0===e&&(e=0),void 0===t&&(t=1),this.nextValue=e,this.step=t}return e.prototype.next=function(){var e=this.nextValue;return this.nextValue+=this.step,e},e.prototype.peek=function(){return this.nextValue},e.prototype.skip=function(e){this.nextValue+=e},e}();
/**
* @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / React / AngularJS / Web Components
* @version v23.2.0
* @link http://www.ag-grid.com/
* @license MIT
*/!function(e){e[e.IN_PROGRESS=0]="IN_PROGRESS",e[e.RESOLVED=1]="RESOLVED"}(qe||(qe={}));var Je=function(){function e(e){var t=this;this.status=qe.IN_PROGRESS,this.resolution=null,this.waiters=[],e((function(e){return t.onDone(e)}),(function(e){return t.onReject(e)}))}return e.all=function(t){return new e((function(e){var o=t.length,n=new Array(o);ee(t,(function(t,i){t.then((function(t){n[i]=t,0===--o&&e(n)}))}))}))},e.resolve=function(t){return void 0===t&&(t=null),new e((function(e){return e(t)}))},e.prototype.then=function(t){var o=this;return new e((function(e){o.status===qe.RESOLVED?e(t(o.resolution)):o.waiters.push((function(o){return e(t(o))}))}))},e.prototype.resolveNow=function(e,t){return this.status===qe.RESOLVED?t(this.resolution):e},e.prototype.onDone=function(e){this.status=qe.RESOLVED,this.resolution=e,ee(this.waiters,(function(t){return t(e)}))},e.prototype.onReject=function(e){console.warn("TBI")},e}(),et=function(){function e(){this.timestamp=(new Date).getTime()}return e.prototype.print=function(e){var t=(new Date).getTime()-this.timestamp;console.info(e+" = "+t),this.timestamp=(new Date).getTime()},e}(),tt=function(){function e(){this.existingKeys={}}return e.prototype.addExistingKeys=function(e){for(var t=0;t<e.length;t++)this.existingKeys[e[t]]=!0},e.prototype.getUniqueKey=function(e,t){e=$e.toStringOrNull(e);for(var o=0;;){var n=void 0;if(e?(n=e,0!==o&&(n+="_"+o)):t?(n=t,0!==o&&(n+="_"+o)):n=""+o,!this.existingKeys[n])return this.existingKeys[n]=!0,n;o++}},e}(),ot=function(){function e(e,t){if(this.beanWrappers={},this.destroyed=!1,e&&e.beanClasses){this.contextParams=e,this.logger=t,this.logger.log(">> creating ag-Application Context"),this.createBeans();var o=this.getBeanInstances();this.wireBeans(o),this.logger.log(">> ag-Application Context ready - component is alive")}}return e.prototype.getBeanInstances=function(){return $e.values(this.beanWrappers).map((function(e){return e.beanInstance}))},e.prototype.createBean=function(e,t){if(!e)throw Error("Can't wire to bean since it is null");return this.wireBeans([e],t),e},e.prototype.wireBeans=function(e,t){this.autoWireBeans(e),this.methodWireBeans(e),this.callLifeCycleMethods(e,"preConstructMethods"),$e.exists(t)&&e.forEach(t),this.callLifeCycleMethods(e,"postConstructMethods")},e.prototype.createBeans=function(){var e=this;this.contextParams.beanClasses.forEach(this.createBeanWrapper.bind(this)),$e.iterateObject(this.beanWrappers,(function(t,o){var n;o.bean.__agBeanMetaData&&o.bean.__agBeanMetaData.autowireMethods&&o.bean.__agBeanMetaData.autowireMethods.agConstructor&&(n=o.bean.__agBeanMetaData.autowireMethods.agConstructor);var i,r,s=e.getBeansForParameters(n,o.bean.name),a=(i=o.bean,r=[null].concat(s),new(i.bind.apply(i,r)));o.beanInstance=a}));var t=Object.keys(this.beanWrappers).join(", ");this.logger.log("created beans: "+t)},e.prototype.createBeanWrapper=function(e){var t=e.__agBeanMetaData;if(!t){var o=void 0;return o=e.prototype.constructor?e.prototype.constructor.name:""+e,void console.error("context item "+o+" is not a bean")}var n={bean:e,beanInstance:null,beanName:t.beanName};this.beanWrappers[t.beanName]=n},e.prototype.autoWireBeans=function(e){var t=this;e.forEach((function(e){t.forEachMetaDataInHierarchy(e,(function(o,n){var i=o.agClassAttributes;i&&i.forEach((function(o){var i=t.lookupBeanInstance(n,o.beanName,o.optional);e[o.attributeName]=i}))}))}))},e.prototype.methodWireBeans=function(e){var t=this;e.forEach((function(e){t.forEachMetaDataInHierarchy(e,(function(o,n){$e.iterateObject(o.autowireMethods,(function(o,i){if("agConstructor"!==o){var r=t.getBeansForParameters(i,n);e[o].apply(e,r)}}))}))}))},e.prototype.forEachMetaDataInHierarchy=function(e,t){for(var o=Object.getPrototypeOf(e);null!=o;){var n=o.constructor;if(n.hasOwnProperty("__agBeanMetaData"))t(n.__agBeanMetaData,this.getBeanName(n));o=Object.getPrototypeOf(o)}},e.prototype.getBeanName=function(e){if(e.__agBeanMetaData&&e.__agBeanMetaData.beanName)return e.__agBeanMetaData.beanName;var t=e.toString();return t.substring(9,t.indexOf("("))},e.prototype.getBeansForParameters=function(e,t){var o=this,n=[];return e&&$e.iterateObject(e,(function(e,i){var r=o.lookupBeanInstance(t,i);n[Number(e)]=r})),n},e.prototype.lookupBeanInstance=function(e,t,o){if(void 0===o&&(o=!1),"context"===t)return this;if(this.contextParams.providedBeanInstances&&this.contextParams.providedBeanInstances.hasOwnProperty(t))return this.contextParams.providedBeanInstances[t];var n=this.beanWrappers[t];return n?n.beanInstance:(o||console.error("ag-Grid: unable to find bean reference "+t+" while initialising "+e),null)},e.prototype.callLifeCycleMethods=function(e,t){var o=this;e.forEach((function(e){o.callLifeCycleMethodsOneBean(e,t)}))},e.prototype.callLifeCycleMethodsOneBean=function(e,t,o){var n={};this.forEachMetaDataInHierarchy(e,(function(e){var i=e[t];i&&i.forEach((function(e){e!=o&&(n[e]=!0)}))})),Object.keys(n).forEach((function(t){return e[t]()}))},e.prototype.getBean=function(e){return this.lookupBeanInstance("getBean",e,!0)},e.prototype.destroy=function(){if(!this.destroyed){this.logger.log(">> Shutting down ag-Application Context");var e=this.getBeanInstances();this.destroyBeans(e),this.contextParams.providedBeanInstances=null,this.destroyed=!0,this.logger.log(">> ag-Application Context shut down - component is dead")}},e.prototype.destroyBean=function(e){e&&this.destroyBeans([e])},e.prototype.destroyBeans=function(e){var t=this;return e?(e.forEach((function(e){t.callLifeCycleMethodsOneBean(e,"preDestroyMethods","destroy"),e.destroy&&e.destroy()})),[]):[]},e}();
/**
* @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / React / AngularJS / Web Components
* @version v23.2.0
* @link http://www.ag-grid.com/
* @license MIT
*/function nt(e,t,o){var n=ct(e.constructor);n.preConstructMethods||(n.preConstructMethods=[]),n.preConstructMethods.push(t)}function it(e,t,o){var n=ct(e.constructor);n.postConstructMethods||(n.postConstructMethods=[]),n.postConstructMethods.push(t)}function rt(e,t,o){var n=ct(e.constructor);n.preDestroyMethods||(n.preDestroyMethods=[]),n.preDestroyMethods.push(t)}function st(e){return function(t){ct(t).beanName=e}}function at(e){return function(t,o,n){pt(t,e,!1,t,o,null)}}function lt(e){return function(t,o,n){pt(t,e,!0,t,o,null)}}function pt(e,t,o,n,i,r){if(null!==t)if("number"!=typeof r){var s=ct(e.constructor);s.agClassAttributes||(s.agClassAttributes=[]),s.agClassAttributes.push({attributeName:i,beanName:t,optional:o})}else console.error("ag-Grid: Autowired should be on an attribute");else console.error("ag-Grid: Autowired name should not be null")}function ut(e){return function(t,o,n){var i,r="function"==typeof t?t:t.constructor;if("number"==typeof n){var s=void 0;o?(i=ct(r),s=o):(i=ct(r),s="agConstructor"),i.autowireMethods||(i.autowireMethods={}),i.autowireMethods[s]||(i.autowireMethods[s]={}),i.autowireMethods[s][n]=e}}}function ct(e){return e.hasOwnProperty("__agBeanMetaData")||(e.__agBeanMetaData={}),e.__agBeanMetaData}
/**
* @ag-grid-community/core - Advanced Data Grid / Data Table supporting Javascript / React / AngularJS / Web Components
* @version v23.2.0
* @link http://www.ag-grid.com/
* @license MIT
*/var dt,ht=function(e,t,o,n){var i,r=arguments.length,s=r<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,o):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,o,n);else for(var a=e.length-1;a>=0;a--)(i=e[a])&&(s=(r<3?i(s):r>3?i(t,o,s):i(t,o))||s);return r>3&&s&&Object.defineProperty(t,o,s),s},ft=function(e,t){return function(o,n){t(o,n,e)}},gt=function(){function e(){this.allSyncListeners=new Map,this.allAsyncListeners=new Map,this.globalSyncListeners=new Set,this.globalAsyncListeners=new Set,this.asyncFunctionsQueue=[],this.scheduled=!1,this.firedEvents={}}return e.prototype.setBeans=function(e,t,o){if(void 0===o&&(o=null),this.logger=e.create("EventService"),o){var n=t.useAsyncEvents();this.addGlobalListener(o,n)}},e.prototype.getListeners=function(e,t){var o=t?this.allAsyncListeners:this.allSyncListeners,n=o.get(e);return n||(n=new Set,o.set(e,n)),n},e.prototype.addEventListener=function(e,t,o){void 0===o&&(o=!1),this.getListeners(e,o).add(t)},e.prototype.removeEventListener=function(e,t,o){void 0===o&&(o=!1),this.getListeners(e,o).delete(t)},e.prototype.addGlobalListener=function(e,t){void 0===t&&(t=!1),(t?this.globalAsyncListeners:this.globalSyncListeners).add(e)},e.prototype.removeGlobalListener=function(e,t){void 0===t&&(t=!1),(t?this.globalAsyncListeners:this.globalSyncListeners).delete(e)},e.prototype.dispatchEvent=function(e){this.dispatchToListeners(e,!0),this.dispatchToListeners(e,!1),this.firedEvents[e.type]=!0},e.prototype.dispatchEventOnce=function(e){this.firedEvents[e.type]||this.dispatchEvent(e)},e.prototype.dispatchToListeners=function(e,t){var o=this,n=e.type;this.getListeners(n,t).forEach((function(n){t?o.dispatchAsync((function(){return n(e)})):n(e)})),(t?this.globalAsyncListeners:this.globalSyncListeners).forEach((function(i){t?o.dispatchAsync((function(){return i(n,e)})):i(n,e)}))},e.prototype.dispatchAsync=function(e){this.asyncFunctionsQueue.push(e),this.scheduled||(window.setTimeout(this.flushAsyncQueue.bind(this),0),this.scheduled=!0)},e.prototype.flushAsyncQueue=function(){this.scheduled=!1;var e=this.asyncFunctionsQueue.slice();this.asyncFunctionsQueue=[],e.forEach((function(e){return e()}))},ht([ft(0,ut("loggerFactory")),ft(1,ut("gridOptionsWrapper")),ft(2,ut("globalEventListener"))],e.prototype,"setBeans",null),e=ht([st("eventService")],e)}();!function(e){e.CommunityCoreModule="@ag-grid-community/core",e.CommunityAllModules="@ag-grid-community/all",e.InfiniteRowModelModule="@ag-grid-community/infinite-row-model",e.ClientSideRowModelModule="@ag-grid-community/client-side-row-model",e.CsvExportModule="@ag-grid-community/csv-export",e.RowNodeCache="@ag-grid-community/row-node-cache",e.EnterpriseCoreModule="@ag-grid-enterprise/core",e.EnterpriseAllModules="@ag-grid-enterprise/all",e.RowGroupingModule="@ag-grid-enterprise/row-grouping",e.ColumnToolPanelModule="@ag-grid-enterprise/column-tool-panel",e.FiltersToolPanelModule="@ag-grid-enterprise/filters-tool-panel",e.MenuModule="@ag-grid-enterprise/menu",e.SetFilterModule="@ag-grid-enterprise/set-filter",e.StatusBarModule="@ag-grid-enterprise/status-bar",e.SideBarModule="@ag-grid-enterprise/side-bar",e.RangeSelectionModule="@ag-grid-enterprise/range-selection",e.MasterDetailModule="@ag-grid-enterprise/master-detail",e.RichSelectModule="@ag-grid-enterprise/rich-select",e.GridChartsModule="@ag-grid-enterprise/charts",e.ViewportRowModelModule="@ag-grid-enterprise/viewport-row-model",e.ServerSideRowModelModule="@ag-grid-enterprise/server-side-row-model",e.E