!function(e){var t={};function n(o){if(t[o])return t[o].exports;var r=t[o]={i:o,l:!1,exports:{}};return e[o].call(r.exports,r,r.exports,n),r.l=!0,r.exports}n.m=e,n.c=t,n.d=function(e,t,o){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:o})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var o=Object.create(null);if(n.r(o),Object.defineProperty(o,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var r in e)n.d(o,r,function(t){return e[t]}.bind(null,r));return o},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=84)}({0:function(e,t){e.exports=jQuery},21:function(e,t,n){"use strict";n.d(t,"a",(function(){return i}));var o=n(0),r=n.n(o);function i(e){var t=!0;return e.find("input[type=text], textarea, select").each((function(){var e=r()(this);e.hasClass("nonempty")&&(""===e.val().trim()?(t=!1,e.addClass("nonempty_submit")):e.removeClass("nonempty_submit"))})),t}},3:function(e,t,n){"use strict";n.d(t,"a",(function(){return a}));var o=n(0),r=n.n(o);function i(e,t){for(var n=0;n4&&void 0!==arguments[4]&&arguments[4],i=arguments.length>5&&void 0!==arguments[5]?arguments[5]:"取消",a=arguments.length>6&&void 0!==arguments[6]&&arguments[6];t||(t="270px"),o||(o="确定");var s=document.createElement("div");s.style.position="fixed",s.style.top="0",s.style.right="0",s.style.bottom="0",s.style.left="0",s.style.backgroundColor="rgba(0, 0, 0, 0.7)",s.style.zIndex="9990";var l=document.createElement("div");l.style.position="fixed",l.style.top="50%",l.style.left="50%",l.style.transform="translate(-50%,-50%)",l.style.width=t,l.style.backgroundColor="white",l.style.padding="20px",l.style.zIndex="9991",l.style.borderRadius="5px",l.style.fontSize="14px","Thank You! You have completed the survey!"==e&&(l.style.fontSize="18px"),s.appendChild(l);var c=document.createElement("div");a?c.innerHTML=e:c.textContent=e,c.style.width="100%",c.style.paddingBottom="80px",c.style.whiteSpace="pre-wrap",l.appendChild(c);var u=document.createElement("button");if(u.textContent=o,u.style.position="absolute",u.style.right="0",u.style.bottom="0",u.style.margin="0 15px 15px 0",u.style.padding="10px 25px",u.style.fontSize="14px",u.style.backgroundColor="#8972ac",u.style.color="white",u.style.cursor="pointer",u.style.borderRadius="0",u.onclick=function(){"function"==typeof n&&n(),document.body.removeChild(s)},l.appendChild(u),r){var d=document.createElement("button");d.textContent=i||"取消",d.style.position="absolute",d.style.left="0",d.style.bottom="0",d.style.margin="0 0 15px 15px",d.style.padding="10px 25px",d.style.fontSize="14px",d.style.backgroundColor="#f9f7fb",d.style.color="#8972ac",d.style.cursor="pointer",d.style.borderRadius="0",d.style.border="1px solid #bdbdbd",d.onclick=function(){document.body.removeChild(s)},l.appendChild(d)}document.body.appendChild(s)}},{key:"showConfirmInfo2",value:function(e,t,n,o){n||(n="350px");var r=document.createElement("div");r.style.position="fixed",r.style.top="0",r.style.right="0",r.style.bottom="0",r.style.left="0",r.style.backgroundColor="rgba(0, 0, 0, 0.7)",r.style.zIndex="9990",document.body.appendChild(r);var i=document.createElement("div");i.style.position="fixed",i.style.top="50%",i.style.left="50%",i.style.transform="translate(-50%,-50%)",i.style.width=n,i.style.backgroundColor="white",i.style.padding="20px",i.style.zIndex="9991",i.style.borderRadius="5px",i.style.fontSize="14px",t||(t="info");var a=document.createElement("div");a.style.width="100%",a.style.paddingBottom="15px",a.style.whiteSpace="pre-wrap",a.style.display="flex",a.style.alignItems="center","error"===t&&(a.innerHTML="

"+e+"

"),"info"===t&&(a.innerHTML="

"+e+"

"),"success"===t&&(a.innerHTML="

"+e+"

"),i.appendChild(a);var s=document.createElement("button");s.textContent="确定",s.style.position="relative",s.style.right="0",s.style.bottom="0",s.style.margin="0",s.style.padding="7px 25px",s.style.fontSize="14px",s.style.float="right",s.style.backgroundColor="#8972ac",s.style.color="white",s.style.cursor="pointer",s.style.borderRadius="0",s.style.border="0",s.onclick=function(){"function"==typeof o&&o(),document.body.removeChild(i),document.body.removeChild(r)},i.appendChild(s),r.onclick=function(){document.body.removeChild(i),document.body.removeChild(r)},document.body.appendChild(i)}},{key:"showConfirmOrCancel",value:function(e,t,n){t||(t="350px");var o=document.createElement("div");o.style.position="fixed",o.style.top="0",o.style.right="0",o.style.bottom="0",o.style.left="0",o.style.backgroundColor="rgba(0, 0, 0, 0.7)",o.style.zIndex="9990",document.body.appendChild(o);var r=document.createElement("div");r.style.position="fixed",r.style.top="50%",r.style.left="50%",r.style.transform="translate(-50%,-50%)",r.style.width=t,r.style.backgroundColor="white",r.style.padding="20px",r.style.zIndex="9991",r.style.borderRadius="5px",r.style.fontSize="14px";var i=document.createElement("div");i.innerHTML="

"+e+"

",i.style.width="100%",i.style.paddingBottom="60px",i.style.whiteSpace="pre-wrap",i.style.display="flex",i.style.alignItems="center",r.appendChild(i);var a=document.createElement("button");a.textContent="确定",a.style.position="absolute",a.style.right="0",a.style.bottom="0",a.style.margin="0px 115px 15px 0px",a.style.padding="10px 25px",a.style.fontSize="14px",a.style.backgroundColor="#8972ac",a.style.color="white",a.style.cursor="pointer",a.style.float="right",a.style.borderRadius="0",a.style.border="0",a.onclick=function(){"function"==typeof n&&n(),document.body.removeChild(r),document.body.removeChild(o)},r.appendChild(a);var s=document.createElement("button");s.textContent="取消",s.style.position="absolute",s.style.right="0",s.style.bottom="0",s.style.margin="0px 20px 15px 15px",s.style.padding="10px 25px",s.style.fontSize="14px",s.style.backgroundColor="#8972ac",s.style.color="white",s.style.float="right",s.style.cursor="pointer",s.style.borderRadius="0",s.style.border="0",s.onclick=function(){document.body.removeChild(r),document.body.removeChild(o)},r.appendChild(s),o.onclick=function(){document.body.removeChild(r),document.body.removeChild(o)},document.body.appendChild(r)}}],(n=null)&&o(t.prototype,n),r&&o(t,r),e}()},49:function(module,exports,__webpack_require__){if(!jSuites)var jSuites=__webpack_require__(65);var t;self,t=function(){return function(){var __webpack_modules__={243:function(e){var t;e.exports=(function(){var e={765:function(e,t){var n;n=function(e){e.version="1.0.2";var t=Math;function n(e,t){for(var n=0,o=0;nr)i=o(n,r,l(n),p(n),-1);else{for(var a=!1,s=0,c=0,u=1,d=0,f=2/n,h=2*t.floor((r+t.floor(t.sqrt(40*r)))/2);h>0;h--)d=h*f*u-s,s=u,u=d,t.abs(u)>1e10&&(u*=1e-10,s*=1e-10,i*=1e-10,c*=1e-10),a&&(c+=u),a=!a,h==r&&(i=s);i/=c=2*c-u}return i}}(),v=(i=.636619772,a=[-2957821389,7062834065,-512359803.6,10879881.29,-86327.92757,228.4622733].reverse(),s=[40076544269,745249964.8,7189466.438,47447.2647,226.1030244,1].reverse(),l=[1,-.001098628627,2734510407e-14,-2073370639e-15,2.093887211e-7].reverse(),c=[-.01562499995,.0001430488765,-6911147651e-15,7.621095161e-7,-9.34945152e-8].reverse(),u=[-4900604943e3,127527439e4,-51534381390,734926455.1,-4237922.726,8511.937935].reverse(),d=[249958057e5,424441966400,3733650367,22459040.02,102042.605,354.9632885,1].reverse(),f=[1,.00183105,-3516396496e-14,2457520174e-15,-2.40337019e-7].reverse(),p=[.04687499995,-.0002002690873,8449199096e-15,-8.8228987e-7,1.05787412e-7].reverse(),r((function(e){var o=0,r=0,u=0,d=e*e,f=e-.785398164;return e<8?o=(r=n(a,d))/(u=n(s,d))+i*j(e,0)*t.log(e):(r=n(l,d=64/d),u=n(c,d),o=t.sqrt(i/e)*(t.sin(f)*r+t.cos(f)*u*8/e)),o}),(function(e){var o=0,r=0,a=0,s=e*e,l=e-2.356194491;return e<8?o=(r=e*n(u,s))/(a=n(d,s))+i*(j(e,1)*t.log(e)-1/e):(r=n(f,s=64/s),a=n(p,s),o=t.sqrt(i/e)*(t.sin(l)*r+t.cos(l)*a*8/e)),o}),0,1,-1)),y=(h=[1,3.5156229,3.0899424,1.2067492,.2659732,.0360768,.0045813].reverse(),m=[.39894228,.01328592,.00225319,-.00157565,.00916281,-.02057706,.02635537,-.01647633,.00392377].reverse(),g=[.5,.87890594,.51498869,.15084934,.02658733,.00301532,32411e-8].reverse(),b=[.39894228,-.03988024,-.00362018,.00163801,-.01031555,.02282967,-.02895312,.01787654,-.00420059].reverse(),function e(o,r){if(0===(r=Math.round(r)))return function(e){return e<=3.75?n(h,e*e/14.0625):t.exp(t.abs(e))/t.sqrt(t.abs(e))*n(m,3.75/t.abs(e))}(o);if(1===r)return function(e){return e<3.75?e*n(g,e*e/14.0625):(e<0?-1:1)*t.exp(t.abs(e))/t.sqrt(t.abs(e))*n(b,3.75/t.abs(e))}(o);if(r<0)return NaN;if(0===t.abs(o))return 0;if(o==1/0)return 1/0;var i,a=0,s=2/t.abs(o),l=0,c=1,u=0;for(i=2*t.round((r+t.round(t.sqrt(40*r)))/2);i>0;i--)u=i*s*c+l,l=c,c=u,t.abs(c)>1e10&&(c*=1e-10,l*=1e-10,a*=1e-10),i==r&&(a=l);return a*=e(o,0)/c,o<0&&r%2?-a:a}),x=function(){var e=[-.57721566,.4227842,.23069756,.0348859,.00262698,1075e-7,74e-7].reverse(),o=[1.25331414,-.07832358,.02189568,-.01062446,.00587872,-.0025154,53208e-8].reverse(),i=[1,.15443144,-.67278579,-.18156897,-.01919402,-.00110404,-4686e-8].reverse(),a=[1.25331414,.23498619,-.0365562,.01504268,-.00780353,.00325614,-68245e-8].reverse();return r((function(r){return r<=2?-t.log(r/2)*y(r,0)+n(e,r*r/4):t.exp(-r)/t.sqrt(r)*n(o,2/r)}),(function(e){return e<=2?t.log(e/2)*y(e,1)+1/e*n(i,e*e/4):t.exp(-e)/t.sqrt(e)*n(a,2/e)}),0,2,1)}();e.besselj=j,e.bessely=v,e.besseli=y,e.besselk=x},"undefined"==typeof DO_NOT_EXPORT_BESSEL?n(t):n({})},162:function(e){var t;e.exports=(function(e,t){var n=e.utils.isFunction;function o(e,t){return e-t}function r(e,n,o){return t.max(n,t.min(e,o))}e.sum=function(e){for(var t=0,n=e.length;--n>=0;)t+=e[n];return t},e.sumsqrd=function(e){for(var t=0,n=e.length;--n>=0;)t+=e[n]*e[n];return t},e.sumsqerr=function(t){for(var n,o=e.mean(t),r=0,i=t.length;--i>=0;)r+=(n=t[i]-o)*n;return r},e.sumrow=function(e){for(var t=0,n=e.length;--n>=0;)t+=e[n];return t},e.product=function(e){for(var t=1,n=e.length;--n>=0;)t*=e[n];return t},e.min=function(e){for(var t=e[0],n=0;++nt&&(t=e[n]);return t},e.unique=function(e){for(var t={},n=[],o=0;oa?(l=[r[t]],a=i,s=0):i===a&&(l.push(r[t]),s++),i=1);return 0===s?l[0]:l},e.range=function(t){return e.max(t)-e.min(t)},e.variance=function(t,n){return e.sumsqerr(t)/(t.length-(n?1:0))},e.pooledvariance=function(t){return t.reduce((function(t,n){return t+e.sumsqerr(n)}),0)/(t.reduce((function(e,t){return e+t.length}),0)-t.length)},e.deviation=function(t){for(var n=e.mean(t),o=t.length,r=new Array(o),i=0;i=0;i--)r.push(t.abs(n[i]-o));return e.mean(r)},e.meddev=function(n){for(var o=e.median(n),r=[],i=n.length-1;i>=0;i--)r.push(t.abs(n[i]-o));return e.median(r)},e.coeffvar=function(t){return e.stdev(t)/e.mean(t)},e.quartiles=function(e){var n=e.length,r=e.slice().sort(o);return[r[t.round(n/4)-1],r[t.round(n/2)-1],r[t.round(3*n/4)-1]]},e.quantiles=function(e,n,i,a){var s,l,c,u,d,f=e.slice().sort(o),p=[n.length],h=e.length;for(void 0===i&&(i=3/8),void 0===a&&(a=3/8),s=0;s1){for(l=!0===o?this:this.transpose();s1){for("sumrow"!==t&&(l=!0===o?this:this.transpose());s1){for(s=s.transpose();an?t:n;return e.pow(10,17-~~(e.log(o>0?o:-o)*e.LOG10E))}var a=Array.isArray||function(e){return"[object Array]"===r.call(e)};function s(e){return"[object Function]"===r.call(e)}function l(e){return"number"==typeof e&&e-e==0}function c(){return new c._init(arguments)}function u(){return 0}function d(){return 1}function f(e,t){return e===t?1:0}c.fn=c.prototype,c._init=function(e){if(a(e[0]))if(a(e[0][0])){s(e[1])&&(e[0]=c.map(e[0],e[1]));for(var t=0;t=0;t--,o++)n[o]=[e[o][t]];return n},c.transpose=function(e){var t,n,o,r,i,s=[];for(a(e[0])||(e=[e]),n=e.length,o=e[0].length,i=0;i0&&(s[o][0]=e[o][0]),l=1;ln&&o>0)return[];if(o>0)for(r=e;rn;r+=o)i.push(r);return i},c.slice=function(){function e(e,n,o,r){var i,a=[],s=e.length;if(n===t&&o===t&&r===t)return c.copy(e);if(r=r||1,(n=(n=n||0)>=0?n:s+n)===(o=(o=o||e.length)>=0?o:s+o)||0===r)return[];if(no&&r>0)return[];if(r>0)for(i=n;io;i+=r)a.push(e[i]);return a}return function(t,n){var o,r;return l((n=n||{}).row)?l(n.col)?t[n.row][n.col]:e(c.rowa(t,n.row),(o=n.col||{}).start,o.end,o.step):l(n.col)?e(c.cola(t,n.col),(r=n.row||{}).start,r.end,r.step):(r=n.row||{},o=n.col||{},e(t,r.start,r.end,r.step).map((function(t){return e(t,o.start,o.end,o.step)})))}}(),c.sliceAssign=function(n,o,r){var i,a;if(l(o.row)){if(l(o.col))return n[o.row][o.col]=r;o.col=o.col||{},o.col.start=o.col.start||0,o.col.end=o.col.end||n[0].length,o.col.step=o.col.step||1,i=c.arange(o.col.start,e.min(n.length,o.col.end),o.col.step);var s=o.row;return i.forEach((function(e,t){n[s][e]=r[t]})),n}if(l(o.col)){o.row=o.row||{},o.row.start=o.row.start||0,o.row.end=o.row.end||n.length,o.row.step=o.row.step||1,a=c.arange(o.row.start,e.min(n[0].length,o.row.end),o.row.step);var u=o.col;return a.forEach((function(e,t){n[e][u]=r[t]})),n}return r[0].length===t&&(r=[r]),o.row.start=o.row.start||0,o.row.end=o.row.end||n.length,o.row.step=o.row.step||1,o.col.start=o.col.start||0,o.col.end=o.col.end||n[0].length,o.col.step=o.col.step||1,a=c.arange(o.row.start,e.min(n.length,o.row.end),o.row.step),i=c.arange(o.col.start,e.min(n[0].length,o.col.end),o.col.step),a.forEach((function(e,t){i.forEach((function(o,i){n[e][o]=r[t][i]}))})),n},c.diagonal=function(e){var t=c.zeros(e.length,e.length);return e.forEach((function(e,n){t[n][n]=e})),t},c.copy=function(e){return e.map((function(e){return l(e)?e:e.map((function(e){return e}))}))};var p=c.prototype;return p.length=0,p.push=Array.prototype.push,p.sort=Array.prototype.sort,p.splice=Array.prototype.splice,p.slice=Array.prototype.slice,p.toArray=function(){return this.length>1?o.call(this):o.call(this)[0]},p.map=function(e,t){return c(c.map(this,e,t))},p.cumreduce=function(e,t){return c(c.cumreduce(this,e,t))},p.alter=function(e){return c.alter(this,e),this},function(e){for(var t=0;t=0;s--)a*=o,a+=c[s];if(i=a/n+.5*t.log(r)+(n-.5)*t.log(n)-n,e<=7)for(s=1;s<=l;s++)i-=t.log(n-1),n-=1;return i},e.gammafn=function(e){var n,o,r,i,a=[-1.716185138865495,24.76565080557592,-379.80425647094563,629.3311553128184,866.9662027904133,-31451.272968848367,-36144.413418691176,66456.14382024054],s=[-30.8402300119739,315.35062697960416,-1015.1563674902192,-3107.771671572311,22538.11842098015,4755.846277527881,-134659.9598649693,-115132.2596755535],l=!1,c=0,u=0,d=0,f=e;if(e>171.6243769536076)return 1/0;if(f<=0){if(!(i=f%1+36e-17))return 1/0;l=(1&f?-1:1)*t.PI/t.sin(t.PI*i),f=1-f}for(r=f,o=f<1?f++:(f-=c=(0|f)-1)-1,n=0;n<8;++n)d=(d+a[n])*o,u=u*o+s[n];if(i=d/u+1,rf)for(n=0;n=1?n:1/n)+.4*n+17);if(o<0||n<=0)return NaN;if(o170||o>170?t.exp(e.combinationln(n,o)):e.factorial(n)/e.factorial(o)/e.factorial(n-o)},e.combinationln=function(t,n){return e.factorialln(t)-e.factorialln(n)-e.factorialln(t-n)},e.permutation=function(t,n){return e.factorial(t)/e.factorial(t-n)},e.betafn=function(n,o){if(!(n<=0||o<=0))return n+o>170?t.exp(e.betaln(n,o)):e.gammafn(n)*e.gammafn(o)/e.gammafn(n+o)},e.betaln=function(t,n){return e.gammaln(t)+e.gammaln(n)-e.gammaln(t+n)},e.betacf=function(e,n,o){var r,i,a,s,l=1e-30,c=1,u=n+o,d=n+1,f=n-1,p=1,h=1-u*e/d;for(t.abs(h)=1)return t.max(100,o+100*t.sqrt(o));if(n<=0)return 0;for(o>1?(l=t.log(d),c=t.exp(d*(l-1)-f),s=n<.5?n:1-n,r=(2.30753+.27061*(i=t.sqrt(-2*t.log(s))))/(1+i*(.99229+.04481*i))-i,n<.5&&(r=-r),r=t.max(.001,o*t.pow(1-1/(9*o)-r/(3*t.sqrt(o)),3))):r=n<(i=1-o*(.253+.12*o))?t.pow(n/i,1/o):1-t.log(1-(n-i)/(1-i));u<12;u++){if(r<=0)return 0;if((r-=i=(a=(e.lowRegGamma(o,r)-n)/(i=o>1?c*t.exp(-(r-d)+d*(t.log(r)-l)):t.exp(-r+d*t.log(r)-f)))/(1-.5*t.min(1,a*((o-1)/r-1))))<=0&&(r=.5*(r+i)),t.abs(i)<1e-8*r)break}return r},e.erf=function(e){var n,o,r,i,a=[-1.3026537197817094,.6419697923564902,.019476473204185836,-.00956151478680863,-.000946595344482036,.000366839497852761,42523324806907e-18,-20278578112534e-18,-1624290004647e-18,130365583558e-17,1.5626441722e-8,-8.5238095915e-8,6.529054439e-9,5.059343495e-9,-9.91364156e-10,-2.27365122e-10,96467911e-18,2394038e-18,-6886027e-18,894487e-18,313092e-18,-112708e-18,381e-18,7106e-18,-1523e-18,-94e-18,121e-18,-28e-18],s=a.length-1,l=!1,c=0,u=0;for(e<0&&(e=-e,l=!0),o=4*(n=2/(2+e))-2;s>0;s--)r=c,c=o*c-u+a[s],u=r;return i=n*t.exp(-e*e+.5*(a[0]+o*c)-u),l?i-1:1-i},e.erfc=function(t){return 1-e.erf(t)},e.erfcinv=function(n){var o,r,i,a,s=0;if(n>=2)return-100;if(n<=0)return 100;for(a=n<1?n:2-n,o=-.70711*((2.30753+.27061*(i=t.sqrt(-2*t.log(a/2))))/(1+i*(.99229+.04481*i))-i);s<2;s++)o+=(r=e.erfc(o)-a)/(1.1283791670955126*t.exp(-o*o)-o*r);return n<1?o:-o},e.ibetainv=function(n,o,r){var i,a,s,l,c,u,d,f,p,h,m=o-1,g=r-1,b=0;if(n<=0)return 0;if(n>=1)return 1;for(o>=1&&r>=1?(s=n<.5?n:1-n,u=(2.30753+.27061*(l=t.sqrt(-2*t.log(s))))/(1+l*(.99229+.04481*l))-l,n<.5&&(u=-u),d=(u*u-3)/6,f=2/(1/(2*o-1)+1/(2*r-1)),p=u*t.sqrt(d+f)/f-(1/(2*r-1)-1/(2*o-1))*(d+5/6-2/(3*f)),u=o/(o+r*t.exp(2*p))):(i=t.log(o/(o+r)),a=t.log(r/(o+r)),u=n<(l=t.exp(o*i)/o)/(p=l+(c=t.exp(r*a)/r))?t.pow(o*p*n,1/o):1-t.pow(r*p*(1-n),1/r)),h=-e.gammaln(o)-e.gammaln(r)+e.gammaln(o+r);b<10;b++){if(0===u||1===u)return u;if((u-=l=(c=(e.ibeta(u,o,r)-n)/(l=t.exp(m*t.log(u)+g*t.log(1-u)+h)))/(1-.5*t.min(1,c*(m/u-g/(1-u)))))<=0&&(u=.5*(u+l)),u>=1&&(u=.5*(u+l+1)),t.abs(l)<1e-8*u&&b>0)break}return u},e.ibeta=function(n,o,r){var i=0===n||1===n?0:t.exp(e.gammaln(o+r)-e.gammaln(o)-e.gammaln(r)+o*t.log(n)+r*t.log(1-n));return!(n<0||n>1)&&(n<(o+1)/(o+r+2)?i*e.betacf(n,o,r)/o:1-i*e.betacf(1-n,r,o)/r)},e.randn=function(n,o){var r,i,a,s,l;if(o||(o=n),n)return e.create(n,o,(function(){return e.randn()}));do{r=e._random_fn(),i=1.7156*(e._random_fn()-.5),l=(a=r-.449871)*a+(s=t.abs(i)+.386595)*(.196*s-.25472*a)}while(l>.27597&&(l>.27846||i*i>-4*t.log(r)*r*r));return i/r},e.randg=function(n,o,r){var i,a,s,l,c,u,d=n;if(r||(r=o),n||(n=1),o)return(u=e.zeros(o,r)).alter((function(){return e.randg(n)})),u;n<1&&(n+=1),i=n-1/3,a=1/t.sqrt(9*i);do{do{l=1+a*(c=e.randn())}while(l<=0);l*=l*l,s=e._random_fn()}while(s>1-.331*t.pow(c,4)&&t.log(s)>.5*c*c+i*(1-l+t.log(l)));if(n==d)return i*l;do{s=e._random_fn()}while(0===s);return t.pow(s,1/d)*i*l},function(t){for(var n=0;nr;)d=l,s=c+(i=-(n+u)*(n+o+u)*e/(n+2*u)/(n+2*u+1))*s,l=(a=l+i*a)+(i=(u+=1)*(o-u)*e/(n+2*u-1)/(n+2*u))*l,a/=c=s+i*c,s/=c,l/=c,c=1;return l/n}function o(n,o,r){var i=[.9815606342467192,.9041172563704749,.7699026741943047,.5873179542866175,.3678314989981802,.1252334085114689],a=[.04717533638651183,.10693932599531843,.16007832854334622,.20316742672306592,.2334925365383548,.24914704581340277],s=.5*n;if(s>=8)return 1;var l,c=2*e.normal.cdf(s,0,1,1,0)-1;c=c>=t.exp(-50/r)?t.pow(c,r):0;for(var u=s,d=(8-s)/(l=n>3?2:3),f=u+d,p=0,h=r-1,m=1;m<=l;m++){for(var g=0,b=.5*(f+u),j=.5*(f-u),v=1;v<=12;v++){var y,x=b+j*(660)break;var C=2*e.normal.cdf(x,0,1,1,0)*.5-2*e.normal.cdf(x,n,1,1,0)*.5;C>=t.exp(-30/h)&&(g+=C=a[y-1]*t.exp(-.5*w)*t.pow(C,h))}p+=g*=2*j*r/t.sqrt(2*t.PI),u=f,f+=d}return(c+=p)<=t.exp(-30/o)?0:(c=t.pow(c,o))>=1?1:c}!function(t){for(var n=0;n1||n<0?0:1==o&&1==r?1:o<512&&r<512?t.pow(n,o-1)*t.pow(1-n,r-1)/e.betafn(o,r):t.exp((o-1)*t.log(n)+(r-1)*t.log(1-n)-e.betaln(o,r))},cdf:function(t,n,o){return t>1||t<0?1*(t>1):e.ibeta(t,n,o)},inv:function(t,n,o){return e.ibetainv(t,n,o)},mean:function(e,t){return e/(e+t)},median:function(t,n){return e.ibetainv(.5,t,n)},mode:function(e,t){return(e-1)/(e+t-2)},sample:function(t,n){var o=e.randg(t);return o/(o+e.randg(n))},variance:function(e,n){return e*n/(t.pow(e+n,2)*(e+n+1))}}),e.extend(e.centralF,{pdf:function(n,o,r){var i;return n<0?0:o<=2?0===n&&o<2?1/0:0===n&&2===o?1:1/e.betafn(o/2,r/2)*t.pow(o/r,o/2)*t.pow(n,o/2-1)*t.pow(1+o/r*n,-(o+r)/2):(i=o*n/(r+n*o),o*(r/(r+n*o))/2*e.binomial.pdf((o-2)/2,(o+r-2)/2,i))},cdf:function(t,n,o){return t<0?0:e.ibeta(n*t/(n*t+o),n/2,o/2)},inv:function(t,n,o){return o/(n*(1/e.ibetainv(t,n/2,o/2)-1))},mean:function(e,t){return t>2?t/(t-2):void 0},mode:function(e,t){return e>2?t*(e-2)/(e*(t+2)):void 0},sample:function(t,n){return 2*e.randg(t/2)/t/(2*e.randg(n/2)/n)},variance:function(e,t){if(!(t<=4))return 2*t*t*(e+t-2)/(e*(t-2)*(t-2)*(t-4))}}),e.extend(e.cauchy,{pdf:function(e,n,o){return o<0?0:o/(t.pow(e-n,2)+t.pow(o,2))/t.PI},cdf:function(e,n,o){return t.atan((e-n)/o)/t.PI+.5},inv:function(e,n,o){return n+o*t.tan(t.PI*(e-.5))},median:function(e){return e},mode:function(e){return e},sample:function(n,o){return e.randn()*t.sqrt(1/(2*e.randg(.5)))*o+n}}),e.extend(e.chisquare,{pdf:function(n,o){return n<0?0:0===n&&2===o?.5:t.exp((o/2-1)*t.log(n)-n/2-o/2*t.log(2)-e.gammaln(o/2))},cdf:function(t,n){return t<0?0:e.lowRegGamma(n/2,t/2)},inv:function(t,n){return 2*e.gammapinv(t,.5*n)},mean:function(e){return e},median:function(e){return e*t.pow(1-2/(9*e),3)},mode:function(e){return e-2>0?e-2:0},sample:function(t){return 2*e.randg(t/2)},variance:function(e){return 2*e}}),e.extend(e.exponential,{pdf:function(e,n){return e<0?0:n*t.exp(-n*e)},cdf:function(e,n){return e<0?0:1-t.exp(-n*e)},inv:function(e,n){return-t.log(1-e)/n},mean:function(e){return 1/e},median:function(e){return 1/e*t.log(2)},mode:function(){return 0},sample:function(n){return-1/n*t.log(e._random_fn())},variance:function(e){return t.pow(e,-2)}}),e.extend(e.gamma,{pdf:function(n,o,r){return n<0?0:0===n&&1===o?1/r:t.exp((o-1)*t.log(n)-n/r-e.gammaln(o)-o*t.log(r))},cdf:function(t,n,o){return t<0?0:e.lowRegGamma(n,t/o)},inv:function(t,n,o){return e.gammapinv(t,n)*o},mean:function(e,t){return e*t},mode:function(e,t){if(e>1)return(e-1)*t},sample:function(t,n){return e.randg(t)*n},variance:function(e,t){return e*t*t}}),e.extend(e.invgamma,{pdf:function(n,o,r){return n<=0?0:t.exp(-(o+1)*t.log(n)-r/n-e.gammaln(o)+o*t.log(r))},cdf:function(t,n,o){return t<=0?0:1-e.lowRegGamma(n,o/t)},inv:function(t,n,o){return o/e.gammapinv(1-t,n)},mean:function(e,t){return e>1?t/(e-1):void 0},mode:function(e,t){return t/(e+1)},sample:function(t,n){return n/e.randg(t)},variance:function(e,t){if(!(e<=2))return t*t/((e-1)*(e-1)*(e-2))}}),e.extend(e.kumaraswamy,{pdf:function(e,n,o){return 0===e&&1===n?o:1===e&&1===o?n:t.exp(t.log(n)+t.log(o)+(n-1)*t.log(e)+(o-1)*t.log(1-t.pow(e,n)))},cdf:function(e,n,o){return e<0?0:e>1?1:1-t.pow(1-t.pow(e,n),o)},inv:function(e,n,o){return t.pow(1-t.pow(1-e,1/o),1/n)},mean:function(t,n){return n*e.gammafn(1+1/t)*e.gammafn(n)/e.gammafn(1+1/t+n)},median:function(e,n){return t.pow(1-t.pow(2,-1/n),1/e)},mode:function(e,n){if(e>=1&&n>=1&&1!==e&&1!==n)return t.pow((e-1)/(e*n-1),1/e)},variance:function(){throw new Error("variance not yet implemented")}}),e.extend(e.lognormal,{pdf:function(e,n,o){return e<=0?0:t.exp(-t.log(e)-.5*t.log(2*t.PI)-t.log(o)-t.pow(t.log(e)-n,2)/(2*o*o))},cdf:function(n,o,r){return n<0?0:.5+.5*e.erf((t.log(n)-o)/t.sqrt(2*r*r))},inv:function(n,o,r){return t.exp(-1.4142135623730951*r*e.erfcinv(2*n)+o)},mean:function(e,n){return t.exp(e+n*n/2)},median:function(e){return t.exp(e)},mode:function(e,n){return t.exp(e-n*n)},sample:function(n,o){return t.exp(e.randn()*o+n)},variance:function(e,n){return(t.exp(n*n)-1)*t.exp(2*e+n*n)}}),e.extend(e.noncentralt,{pdf:function(n,o,r){return t.abs(r)<1e-14?e.studentt.pdf(n,o):t.abs(n)<1e-14?t.exp(e.gammaln((o+1)/2)-r*r/2-.5*t.log(t.PI*o)-e.gammaln(o/2)):o/n*(e.noncentralt.cdf(n*t.sqrt(1+2/o),o+2,r)-e.noncentralt.cdf(n,o,r))},cdf:function(n,o,r){var i=1e-14;if(t.abs(r)i||l>i;)c=l,d>0&&(f*=r*r/(2*d),p*=r*r/(2*(d+.5))),s+=.5*(l=f*e.beta.cdf(u,d+.5,o/2)+p*e.beta.cdf(u,d+1,o/2)),d++;return a?1-s:s}}),e.extend(e.normal,{pdf:function(e,n,o){return t.exp(-.5*t.log(2*t.PI)-t.log(o)-t.pow(e-n,2)/(2*o*o))},cdf:function(n,o,r){return.5*(1+e.erf((n-o)/t.sqrt(2*r*r)))},inv:function(t,n,o){return-1.4142135623730951*o*e.erfcinv(2*t)+n},mean:function(e){return e},median:function(e){return e},mode:function(e){return e},sample:function(t,n){return e.randn()*n+t},variance:function(e,t){return t*t}}),e.extend(e.pareto,{pdf:function(e,n,o){return e1e100?1e100:o,1/(t.sqrt(o)*e.betafn(.5,o/2))*t.pow(1+n*n/o,-(o+1)/2)},cdf:function(n,o){var r=o/2;return e.ibeta((n+t.sqrt(n*n+o))/(2*t.sqrt(n*n+o)),r,r)},inv:function(n,o){var r=e.ibetainv(2*t.min(n,1-n),.5*o,.5);return r=t.sqrt(o*(1-r)/r),n>.5?r:-r},mean:function(e){return e>1?0:void 0},median:function(){return 0},mode:function(){return 0},sample:function(n){return e.randn()*t.sqrt(n/(2*e.randg(n/2)))},variance:function(e){return e>2?e/(e-2):e>1?1/0:void 0}}),e.extend(e.weibull,{pdf:function(e,n,o){return e<0||n<0||o<0?0:o/n*t.pow(e/n,o-1)*t.exp(-t.pow(e/n,o))},cdf:function(e,n,o){return e<0?0:1-t.exp(-t.pow(e/n,o))},inv:function(e,n,o){return n*t.pow(-t.log(1-e),1/o)},mean:function(t,n){return t*e.gammafn(1+1/n)},median:function(e,n){return e*t.pow(t.log(2),1/n)},mode:function(e,n){return n<=1?0:e*t.pow((n-1)/n,1/n)},sample:function(n,o){return n*t.pow(-t.log(e._random_fn()),1/o)},variance:function(n,o){return n*n*e.gammafn(1+2/o)-t.pow(e.weibull.mean(n,o),2)}}),e.extend(e.uniform,{pdf:function(e,t,n){return en?0:1/(n-t)},cdf:function(e,t,n){return e=r)return 1;if(i<0||i>1||r<=0)return NaN;var l=i,c=(o=t.floor(o))+1,u=r-o,d=c+u,f=t.exp(e.gammaln(d)-e.gammaln(u)-e.gammaln(c)+c*t.log(l)+u*t.log(1-l));return a=l<(c+1)/(d+2)?f*n(l,c,u,s):1-f*n(1-l,u,c,s),t.round(1/s*(1-a))/(1/s)}}),e.extend(e.negbin,{pdf:function(n,o,r){return n===n>>>0&&(n<0?0:e.combination(n+o-1,o-1)*t.pow(1-r,n)*t.pow(r,o))},cdf:function(t,n,o){var r=0,i=0;if(t<0)return 0;for(;i<=t;i++)r+=e.negbin.pdf(i,n,o);return r}}),e.extend(e.hypgeom,{pdf:function(n,o,r,i){if(n!=n|0)return!1;if(n<0||ni||n>r)return 0;if(2*r>o)return 2*i>o?e.hypgeom.pdf(o-r-i+n,o,o-r,o-i):e.hypgeom.pdf(i-n,o,o-r,i);if(2*i>o)return e.hypgeom.pdf(r-n,o,r,o-i);if(r1&&s=i||n>=r)return 1;if(2*r>o)return 2*i>o?e.hypgeom.cdf(o-r-i+n,o,o-r,o-i):1-e.hypgeom.cdf(i-n-1,o,o-r,i);if(2*i>o)return 1-e.hypgeom.cdf(r-n-1,o,r,o-i);if(r1&&li);return r-1},sampleLarge:function(n){var o,r,i,a,s,l,c,u,d,f,p=n;for(a=t.sqrt(p),s=t.log(p),l=.02483*(c=.931+2.53*a)-.059,u=1.1239+1.1328/(c-3.4),d=.9277-3.6224/(c-2);;){if(r=t.random()-.5,i=t.random(),f=.5-t.abs(r),o=t.floor((2*l/f+c)*r+p+.43),f>=.07&&i<=d)return o;if(!(o<0||f<.013&&i>f)&&t.log(i)+t.log(u)-t.log(l/(f*f)+c)<=o*s-p-e.loggam(o+1))return o}},sample:function(e){return e<10?this.sampleSmall(e):this.sampleLarge(e)}}),e.extend(e.triangular,{pdf:function(e,t,n,o){return n<=t||on?NaN:en?0:eo?NaN:e<=n?0:e>=o?1:e<=r?t.pow(e-n,2)/((o-n)*(r-n)):1-t.pow(o-e,2)/((o-n)*(o-r))},inv:function(e,n,o,r){return o<=n||ro?NaN:e<=(r-n)/(o-n)?n+(o-n)*t.sqrt(e*((r-n)/(o-n))):n+(o-n)*(1-t.sqrt((1-e)*(1-(r-n)/(o-n))))},mean:function(e,t,n){return(e+t+n)/3},median:function(e,n,o){return o<=(e+n)/2?n-t.sqrt((n-e)*(n-o))/t.sqrt(2):o>(e+n)/2?e+t.sqrt((n-e)*(o-e))/t.sqrt(2):void 0},mode:function(e,t,n){return n},sample:function(n,o,r){var i=e._random_fn();return i<(r-n)/(o-n)?n+t.sqrt(i*(o-n)*(r-n)):o-t.sqrt((1-i)*(o-n)*(o-r))},variance:function(e,t,n){return(e*e+t*t+n*n-e*t-e*n-t*n)/18}}),e.extend(e.arcsine,{pdf:function(e,n,o){return o<=n?NaN:e<=n||e>=o?0:2/t.PI*t.pow(t.pow(o-n,2)-t.pow(2*e-n-o,2),-.5)},cdf:function(e,n,o){return e25e3)return o(n,1,a);var c,u=.5*i,d=u*t.log(i)-i*t.log(2)-e.gammaln(u),f=u-1,p=.25*i;c=i<=100?1:i<=800?.5:i<=5e3?.25:.125,d+=t.log(c);for(var h=0,m=1;m<=50;m++){for(var g=0,b=(2*m-1)*c,j=1;j<=16;j++){var v,y;8=-30&&(g+=o(8=1&&g<=1e-14)break;h+=g}if(g>1e-14)throw new Error("tukey.cdf failed to converge");return h>1&&(h=1),h},inv:function(n,o,r){if(r<2||o<2)return NaN;if(n<0||n>1)return NaN;if(0===n)return 0;if(1===n)return 1/0;var i,a=function(e,n,o){var r=.5-.5*e,i=t.sqrt(t.log(1/(r*r))),a=i+((((-453642210148e-16*i-.204231210125)*i-.342242088547)*i-1)*i+.322232421088)/((((.0038560700634*i+.10353775285)*i+.531103462366)*i+.588581570495)*i+.099348462606);o<120&&(a+=(a*a*a+a)/o/4);var s=.8832-.2368*a;return o<120&&(s+=-1.214/o+1.208*a/o),a*(s*t.log(n-1)+1.4142)}(n,o,r),s=e.tukey.cdf(a,o,r)-n;i=s>0?t.max(0,a-1):a+1;for(var l,c=e.tukey.cdf(i,o,r)-n,u=1;u<50;u++)if(l=i-c*(i-a)/(c-s),s=c,a=i,l<0&&(l=0,c=-n),c=e.tukey.cdf(l,o,r)-n,i=l,t.abs(i-a)<1e-4)return l;throw new Error("tukey.inv failed to converge")}})}(t,Math),function(e,t){var n,o,r=Array.prototype.push,i=e.utils.isArray;function a(t){return i(t)||t instanceof e}e.extend({add:function(t,n){return a(n)?(a(n[0])||(n=[n]),e.map(t,(function(e,t,o){return e+n[t][o]}))):e.map(t,(function(e){return e+n}))},subtract:function(t,n){return a(n)?(a(n[0])||(n=[n]),e.map(t,(function(e,t,o){return e-n[t][o]||0}))):e.map(t,(function(e){return e-n}))},divide:function(t,n){return a(n)?(a(n[0])||(n=[n]),e.multiply(t,e.inv(n))):e.map(t,(function(e){return e/n}))},multiply:function(t,n){var o,r,i,s,l,c,u,d;if(void 0===t.length&&void 0===n.length)return t*n;if(l=t.length,c=t[0].length,u=e.zeros(l,i=a(n)?n[0].length:c),d=0,a(n)){for(;do&&(r[i-1][a-1]=t[i][a])}var s=o%2?-1:1;n+=e(r)*t[0][o]*s}return n},gauss_elimination:function(n,o){var r,i,a,s,l=0,c=0,u=n.length,d=n[0].length,f=1,p=0,h=[];for(r=(n=e.aug(n,o))[0].length,l=0;l=0;l--){for(p=0,c=l+1;c<=u-1;c++)p+=h[c]*n[l][c];h[l]=(n[l][r-1]-p)/n[l][l]}return h},gauss_jordan:function(n,o){var r,i,a,s=e.aug(n,o),l=s.length,c=s[0].length,u=0;for(i=0;it.abs(s[d][i])&&(d=a);var f=s[i];for(s[i]=s[d],s[d]=f,a=i+1;a=0;i--){for(u=s[i][i],a=0;ai-1;r--)s[a][r]-=s[i][r]*s[a][i]/u;for(s[i][i]/=u,r=l;rd?(p[u][d]=n[u][d],h[u][d]=m[u][d]=0):ui;)a=c,c=e.add(e.multiply(l,a),s),u++;return c},gauss_seidel:function(n,o,r,i){for(var a,s,l,c,u,d=0,f=n.length,p=[],h=[],m=[];da?(p[d][a]=n[d][a],h[d][a]=m[d][a]=0):di;)s=u,u=e.add(e.multiply(c,s),l),d+=1;return u},SOR:function(n,o,r,i,a){for(var s,l,c,u,d,f=0,p=n.length,h=[],m=[],g=[];fs?(h[f][s]=n[f][s],m[f][s]=g[f][s]=0):fi;)l=d,d=e.add(e.multiply(u,l),c),f++;return d},householder:function(n){for(var o,r,i,a,s=n.length,l=n[0].length,c=0,u=[],d=[];c0?-1:1)*t.sqrt(o),r=t.sqrt((o*o-n[c+1][c]*o)/2),(u=e.zeros(s,1))[c+1][0]=(n[c+1][c]-o)/(2*r),i=c+2;i0?t.PI/4:-t.PI/4:t.atan(2*n[i][a]/(n[i][i]-n[a][a]))/2,(c=e.identity(d,d))[i][i]=t.cos(l),c[i][a]=-t.sin(l),c[a][i]=t.sin(l),c[a][a]=t.cos(l),f=e.multiply(f,c),n=e.multiply(e.multiply(e.inv(c),n),c),u=0,o=1;o.001&&(u=1)}for(o=0;o=d;)a=i(e,o+r),s=i(e,o),p[f]=(n[a]-2*n[s]+n[2*s-a])/(r*r),r/=2,f++;for(c=p.length,l=1;1!=c;){for(u=0;uo);r++);return n[r-=1]+(o-t[r])*f[r]+e.sq(o-t[r])*i[r]+(o-t[r])*e.sq(o-t[r])*p[r]},gauss_quadrature:function(){throw new Error("gauss_quadrature not yet implemented")},PCA:function(t){var n,o,r,i,a,s=t.length,l=t[0].length,c=0,u=[],d=[],f=[],p=[],h=[],m=[],g=[];for(c=0;c1||o>1||e<=0||o<=0)throw new Error("Proportions should be greater than 0 and less than 1");var i=(e*n+o*r)/(n+r);return(e-o)/t.sqrt(i*(1-i)*(1/n+1/r))}e.extend({zscore:function(){var t=n.call(arguments);return o(t[1])?(t[0]-t[1])/t[2]:(t[0]-e.mean(t[1]))/e.stdev(t[1],t[2])},ztest:function(){var o,i=n.call(arguments);return r(i[1])?(o=e.zscore(i[0],i[1],i[3]),1===i[2]?e.normal.cdf(-t.abs(o),0,1):2*e.normal.cdf(-t.abs(o),0,1)):i.length>2?(o=e.zscore(i[0],i[1],i[2]),1===i[3]?e.normal.cdf(-t.abs(o),0,1):2*e.normal.cdf(-t.abs(o),0,1)):(o=i[0],1===i[1]?e.normal.cdf(-t.abs(o),0,1):2*e.normal.cdf(-t.abs(o),0,1))}}),e.extend(e.fn,{zscore:function(e,t){return(e-this.mean())/this.stdev(t)},ztest:function(n,o,r){var i=t.abs(this.zscore(n,r));return 1===o?e.normal.cdf(-i,0,1):2*e.normal.cdf(-i,0,1)}}),e.extend({tscore:function(){var o=n.call(arguments);return 4===o.length?(o[0]-o[1])/(o[2]/t.sqrt(o[3])):(o[0]-e.mean(o[1]))/(e.stdev(o[1],!0)/t.sqrt(o[1].length))},ttest:function(){var r,i=n.call(arguments);return 5===i.length?(r=t.abs(e.tscore(i[0],i[1],i[2],i[3])),1===i[4]?e.studentt.cdf(-r,i[3]-1):2*e.studentt.cdf(-r,i[3]-1)):o(i[1])?(r=t.abs(i[0]),1==i[2]?e.studentt.cdf(-r,i[1]-1):2*e.studentt.cdf(-r,i[1]-1)):(r=t.abs(e.tscore(i[0],i[1])),1==i[2]?e.studentt.cdf(-r,i[1].length-1):2*e.studentt.cdf(-r,i[1].length-1))}}),e.extend(e.fn,{tscore:function(e){return(e-this.mean())/(this.stdev(!0)/t.sqrt(this.cols()))},ttest:function(n,o){return 1===o?1-e.studentt.cdf(t.abs(this.tscore(n)),this.cols()-1):2*e.studentt.cdf(-t.abs(this.tscore(n)),this.cols()-1)}}),e.extend({anovafscore:function(){var o,r,i,a,s,l,c,u,d=n.call(arguments);if(1===d.length){for(s=new Array(d[0].length),c=0;c.5?1-o:o)})),u=t.studentt.inv(.975,n.df_resid),d=n.coef.map((function(e,t){var n=u*s[t];return[e-n,e+n]}));return{se:s,t:l,p:c,sigmaHat:a,interval95:d}}(r),a=function(e){var n,o,r,i=e.R2/e.df_model/((1-e.R2)/e.df_resid);return{F_statistic:i,pvalue:1-(n=i,o=e.df_model,r=e.df_resid,t.beta.cdf(n/(r/o+n),o/2,r/2))}}(r),s=1-(1-r.R2)*((r.nobs-1)/r.df_resid);return r.t=i,r.f=a,r.adjust_R2=s,r}}}(),t.extend({buildxmatrix:function(){for(var e=new Array(arguments.length),n=0;n1){for(a=[],o=0;ot+"."+e)],a.splice(a.indexOf(t),1))}}if(a.length<1)e[i]=o[i];else for(let n=0;n0?u+=e+" = "+t.get(r)+";\n":u+="var "+e+" = "+o+";\n"}))}else{let e=Object.keys(t);if(e.length){let n,o={};for(let t=0;t0){let e=e.split(".");o[e[0]]={}}n=Object.keys(o);for(let e=0;e0?u+=n+" = "+t[e[o]]+";\n":u+="var "+n+" = "+t[e[o]]+";\n"}}}let f=(e=function(e,t){let n="",o=0,r=["=","!",">","<"];for(let t=0;t0&&"="===e[t]&&-1===r.indexOf(e[t-1])&&-1===r.indexOf(e[t+1])&&(n+="="));return n=n.replace(/\^/g,"**"),n=n.replace(/<>/g,"!="),n=n.replace(/&/g,"+"),n=n.replace(/\$/g,""),n}(e=(e=e.replace(/\$/g,"")).replace(/!/g,"."))).match(/(('.*?'!)|(\w*!))?(\$?[A-Z]+\$?[0-9]*):(\$?[A-Z]+\$?[0-9]*)?/g);f&&f.length&&(e=s(f,e));let p=new Function(u+"; return "+e)();return null===p&&(p=0),p};return c.getColumnNameFromCoords=function(e,t){return o="",(n=parseInt(e))>701?(o+=String.fromCharCode(64+parseInt(n/676)),o+=String.fromCharCode(64+parseInt(n%676/26))):n>25&&(o+=String.fromCharCode(64+parseInt(n/26))),o+String.fromCharCode(65+n%26)+(parseInt(t)+1);var n,o},c.getCoordsFromColumnName=function(e){var t=/^[a-zA-Z]+/.exec(e);if(t){for(var n=0,o=0;o0&&r--,[n,r]}},c.getRangeFromTokens=function(e){e=e.filter((function(e){return"#REF!"!=e}));for(var t="",n="",o=0;o=0?t=".":e[o].indexOf("!")>=0&&(t="!"),t&&(n=e[o].split(t),e[o]=n[1],n=n[0]+t);return e.sort((function(e,t){var n=Helpers.getCoordsFromColumnName(e),o=Helpers.getCoordsFromColumnName(t);return n[1]>o[1]?1:n[1]o[0]?1:n[0]0){var t=e.split(".");e=t[1],t=t[0]+"."}else e.indexOf("!")>0?(t=e.split("!"),e=t[1],t=t[0]+"!"):t="";e=e.split(":");var n=c.getCoordsFromColumnName(e[0]),o=c.getCoordsFromColumnName(e[1]);if(n[0]<=o[0])var r=n[0],i=o[0];else r=o[0],i=n[0];if(null===n[1]&&null==o[1])for(var a=null,s=null,l=Object.keys(vars),u=0;us)&&(s=d[1])}else n[1]<=o[1]?(a=n[1],s=o[1]):(a=o[1],s=n[1]);for(var f=[],p=a;p<=s;p++){var h=[];for(u=r;u<=i;u++)h.push(t+c.getColumnNameFromCoords(u,p));f.push(h)}return f},c.setFormula=function(t){let n=Object.keys(t);for(let o=0;o{t.push(e)}),t}function g(e,t){let n=-1;const o=e.length;for(;++nArray.isArray(e))&&0!==e.length||(e=[[...e]]),e.map((t,n)=>{t.map((t,o)=>{t||(e[n][o]=0)})});const n=e.reduce((t,n,o)=>n.length>e[t].length?o:t,0),o=e[n].length;return e.map(e=>[...e,...Array(o-e.length).fill(t||0)])}function v(){let e;if(1===arguments.length){const n=arguments[0];e=null!=(t=n)&&"number"==typeof t.length&&"string"!=typeof t?m.apply(null,arguments):[n]}else e=Array.from(arguments);for(var t;!x(e);)e=y(e);return e}function y(e){return e&&e.reduce?e.reduce((e,t)=>{const n=Array.isArray(e),o=Array.isArray(t);return n&&o?e.concat(t):n?(e.push(t),e):o?[e].concat(t):[e,t]}):[e]}function x(e){if(!e)return!1;for(let t=0;te.map(e=>e[n])):s}function E(e,t){let n=null;return g(e,(e,o)=>{if(e[0]===t)return n=o,!1}),null==n?s:n}function _(){for(let e=0;e"number"==typeof e)}function L(e){if("boolean"==typeof e)return e;if(e instanceof Error)return e;if("number"==typeof e)return 0!==e;if("string"==typeof e){const t=e.toUpperCase();if("TRUE"===t)return!0;if("FALSE"===t)return!1}return e instanceof Date&&!isNaN(e)||s}function D(e){if(!isNaN(e)){if(e instanceof Date)return new Date(e);const t=parseFloat(e);return t<0||t>=2958466?u:function(e){e<60&&(e+=1);const t=Math.floor(e-25569),n=new Date(86400*t*1e3),o=e-Math.floor(e)+1e-7;let r=Math.floor(86400*o);const i=r%60;r-=i;const a=Math.floor(r/3600),s=Math.floor(r/60)%60;let l=n.getUTCDate(),c=n.getUTCMonth();return e>=60&&e<61&&(l=29,c=1),new Date(n.getUTCFullYear(),c,l,a,s,i)}(t)}return"string"!=typeof e||(e=/(\d{4})-(\d\d?)-(\d\d?)$/.test(e)?new Date(e+"T00:00:00.000"):new Date(e),isNaN(e))?s:e}function I(e){let t,n=e.length;for(;n--;){if(t=D(e[n]),t===s)return t;e[n]=t}return e}function S(e){return e instanceof Error?e:null==e?0:("boolean"==typeof e&&(e=+e),isNaN(e)||""===e?s:parseFloat(e))}function N(e){let t,n;if(!e||0===(t=e.length))return s;for(;t--;){if(e[t]instanceof Error)return e[t];if(n=S(e[t]),n instanceof Error)return n;e[t]=n}return e}function O(e){return e instanceof Error?e:null==e?"":e.toString()}function k(){let e=arguments.length;for(;e--;)if("string"==typeof arguments[e])return!0;return!1}function R(e){return null!=e}const P=[">",">=","<","<=","=","<>"],F="operator",H="literal",B=[F,H],q=F,V=H;function U(e,t){if(-1===B.indexOf(t))throw new Error("Unsupported token type: "+t);return{value:e,type:t}}function W(e){return function(e){let t="";const n=[];for(let o=0;o=0?n.push(U(r,q)):t+=r}return t.length>0&&n.push(U(function(e){return"string"!=typeof e||/^\d+(\.\d+)?$/.test(e)&&(e=-1===e.indexOf(".")?parseInt(e,10):parseFloat(e)),e}(t),V)),n.length>0&&n[0].type!==q&&n.unshift(U("=",q)),n}(function(e){const t=e.length,n=[];let o=0,r="",i="";for(;o":case"<":case"=":i+=t,r.length>0&&(n.push(r),r="");break;default:i.length>0&&(n.push(i),i=""),r+=t}o++}return r.length>0&&n.push(r),i.length>0&&n.push(i),n}(e))}const Y=function(e){const t=[];let n;for(let o=0;o":n=e[0]>e[1];break;case">=":n=e[0]>=e[1];break;case"<":n=e[0]":n=e[0]!=e[1]}return n}(t,n)},z={};function K(e){return[s,l,a,u,c,i].indexOf(e)>=0||"number"==typeof e&&(isNaN(e)||!isFinite(e))}function X(e){return K(e)||e===d}function G(e){return!0===e||!1===e}function J(e){return"number"==typeof e&&!isNaN(e)&&isFinite(e)}function $(e){return"string"==typeof e}function Q(){const e=[];for(let t=0;te&&(a=!0)}return r}function ee(){const e=v(arguments).filter(R);if(0===e.length)return a;const t=_.apply(void 0,e);if(t)return t;const n=T(e),o=n.length;let r,i=0,s=0;for(let e=0;e{switch(e){case i:return 1;case a:return 2;case s:return 3;case l:return 4;case c:return 5;case u:return 6;case d:return 7;case p:return 8}return d};const ne={DIST:function(e,t,n,r,i,a){return arguments.length<4?s:(i=void 0===i?0:i,a=void 0===a?1:a,M(e=S(e),t=S(t),n=S(n),i=S(i),a=S(a))?s:(e=(e-i)/(a-i),r?o.beta.cdf(e,t,n):o.beta.pdf(e,t,n)))},INV:(e,t,n,r,i)=>(r=void 0===r?0:r,i=void 0===i?1:i,M(e=S(e),t=S(t),n=S(n),r=S(r),i=S(i))?s:o.beta.inv(e,t,n)*(i-r)+r)},oe={DIST:(e,t,n,r)=>M(e=S(e),t=S(t),n=S(n),r=S(r))?s:r?o.binomial.cdf(e,t,n):o.binomial.pdf(e,t,n)};oe.DIST.RANGE=(e,t,n,o)=>{if(o=void 0===o?n:o,M(e=S(e),t=S(t),n=S(n),o=S(o)))return s;let r=0;for(let i=n;i<=o;i++)r+=qe(e,i)*Math.pow(t,i)*Math.pow(1-t,e-i);return r},oe.INV=(e,t,n)=>{if(M(e=S(e),t=S(t),n=S(n)))return s;let r=0;for(;r<=e;){if(o.binomial.cdf(r,e,t)>=n)return r;r++}};const re={DIST:(e,t,n)=>M(e=S(e),t=S(t))?s:n?o.chisquare.cdf(e,t):o.chisquare.pdf(e,t)};re.DIST.RT=(e,t)=>!e|!t?d:e<1||t>Math.pow(10,10)?u:"number"!=typeof e||"number"!=typeof t?s:1-o.chisquare.cdf(e,t),re.INV=(e,t)=>M(e=S(e),t=S(t))?s:o.chisquare.inv(e,t),re.INV.RT=(e,t)=>!e|!t?d:e<0||e>1||t<1||t>Math.pow(10,10)?u:"number"!=typeof e||"number"!=typeof t?s:o.chisquare.inv(1-e,t),re.TEST=function(e,t){if(2!==arguments.length)return d;if(!(e instanceof Array&&t instanceof Array))return s;if(e.length!==t.length)return s;if(e[0]&&t[0]&&e[0].length!==t[0].length)return s;const n=e.length;let o,r,i;for(r=0;r=2;)n=n*e/o,o-=2;let r=n,i=t;for(;r>1e-10*n;)i+=2,r=r*e/i,n+=r;return 1-n}(c,l))/1e6};const ie={};function ae(){return T(v(arguments)).length}function se(){const e=v(arguments);return e.length-le(e)}function le(){const e=v(arguments);let t,n=0;for(let o=0;oM(e=S(e),t=S(t),n=S(n))?s:o.normalci(1,e,t,n)[1]-1,ie.T=(e,t,n)=>M(e=S(e),t=S(t),n=S(n))?s:o.tci(1,e,t,n)[1]-1;const ce={P:(e,t)=>{if(M(e=N(v(e)),t=N(v(t))))return s;const n=o.mean(e),r=o.mean(t);let i=0;const a=e.length;for(let o=0;oM(e=N(v(e)),t=N(v(t)))?s:o.covariance(e,t)},ue={DIST:(e,t,n)=>M(e=S(e),t=S(t))?s:n?o.exponential.cdf(e,t):o.exponential.pdf(e,t)},de={};function fe(e,t,n){if(M(e=S(e),t=N(v(t)),n=N(v(n))))return s;const r=o.mean(n),i=o.mean(t),a=n.length;let l=0,c=0;for(let e=0;eM(e=S(e),t=S(t),n=S(n))?s:r?o.centralF.cdf(e,t,n):o.centralF.pdf(e,t,n),de.DIST.RT=function(e,t,n){return 3!==arguments.length?d:e<0||t<1||n<1?u:"number"!=typeof e||"number"!=typeof t||"number"!=typeof n?s:1-o.centralF.cdf(e,t,n)},de.INV=(e,t,n)=>M(e=S(e),t=S(t),n=S(n))?s:e<=0||e>1?u:o.centralF.inv(e,t,n),de.INV.RT=function(e,t,n){return 3!==arguments.length?d:e<0||e>1||t<1||t>Math.pow(10,10)||n<1||n>Math.pow(10,10)?u:"number"!=typeof e||"number"!=typeof t||"number"!=typeof n?s:o.centralF.inv(1-e,t,n)},de.TEST=(e,t)=>{if(!e||!t)return d;if(!(e instanceof Array&&t instanceof Array))return d;if(e.length<2||t.length<2)return a;const n=(e,t)=>{let n=0;for(let o=0;o1||t<=0||n<=0?u:"number"!=typeof e||"number"!=typeof t||"number"!=typeof n?s:o.gamma.inv(e,t,n)},he.PRECISE=function(e){return 1!==arguments.length?d:e<=0?u:"number"!=typeof e?s:o.gammaln(e)};const me={};function ge(e,t){return M(e=N(v(e)),t=S(t))?e:t<0||e.lengtht-e)[t-1]}function be(e,t){if(M(e=N(v(e)),t=N(v(t))))return s;const n=o.mean(e),r=o.mean(t),i=t.length;let a=0,l=0;for(let o=0;o{if(M(e=S(e),t=S(t),n=S(n),o=S(o)))return s;function i(e,t,n,o){return qe(n,e)*qe(o-n,t-e)/qe(o,t)}return r?function(e,t,n,o){let r=0;for(let a=0;a<=e;a++)r+=i(a,t,n,o);return r}(e,t,n,o):i(e,t,n,o)};const je={};function ve(){const e=v(arguments),t=_.apply(void 0,e);if(t)return t;const n=T(e);return 0===n.length?0:Math.max.apply(Math,n)}function ye(){const e=v(arguments),t=_.apply(void 0,e);if(t)return t;const n=b(e);let r=o.median(n);return isNaN(r)&&(r=u),r}function xe(){const e=v(arguments),t=_.apply(void 0,e);if(t)return t;const n=T(e);return 0===n.length?0:Math.min.apply(Math,n)}je.DIST=(e,t,n,r)=>M(e=S(e),t=S(t),n=S(n))?s:r?o.lognormal.cdf(e,t,n):o.lognormal.pdf(e,t,n),je.INV=(e,t,n)=>M(e=S(e),t=S(t),n=S(n))?s:o.lognormal.inv(e,t,n);const we={MULT:function(){const e=N(v(arguments));if(e instanceof Error)return e;const t=e.length,n={};let o,r=[],i=0;for(let a=0;ai&&(i=n[o],r=[]),n[o]===i&&(r[r.length]=o);return r},SNGL:function(){const e=N(v(arguments));return e instanceof Error?e:we.MULT(e).sort((e,t)=>e-t)[0]}},Ce={DIST:(e,t,n,r)=>M(e=S(e),t=S(t),n=S(n))?s:r?o.negbin.cdf(e,t,n):o.negbin.pdf(e,t,n)},Ee={};function _e(e,t){if(M(t=N(v(t)),e=N(v(e))))return s;const n=o.mean(e),r=o.mean(t),i=e.length;let a=0,l=0,c=0;for(let o=0;oM(e=S(e),t=S(t),n=S(n))?s:n<=0?u:r?o.normal.cdf(e,t,n):o.normal.pdf(e,t,n),Ee.INV=(e,t,n)=>M(e=S(e),t=S(t),n=S(n))?s:o.normal.inv(e,t,n),Ee.S={},Ee.S.DIST=(e,t)=>(e=S(e))instanceof Error?s:t?o.normal.cdf(e,0,1):o.normal.pdf(e,0,1),Ee.S.INV=e=>(e=S(e))instanceof Error?s:o.normal.inv(e,0,1);const Me={EXC:(e,t)=>{if(M(e=N(v(e)),t=S(t)))return s;const n=(e=e.sort((e,t)=>e-t)).length;if(t<1/(n+1)||t>1-1/(n+1))return u;const o=t*(n+1)-1,r=Math.floor(o);return A(o===r?e[o]:e[r]+(o-r)*(e[r+1]-e[r]))},INC:(e,t)=>{if(M(e=N(v(e)),t=S(t)))return s;const n=t*((e=e.sort((e,t)=>e-t)).length-1),o=Math.floor(n);return A(n===o?e[n]:e[o]+(n-o)*(e[o+1]-e[o]))}},Ae={EXC:(e,t,n)=>{if(n=void 0===n?3:n,M(e=N(v(e)),t=S(t),n=S(n)))return s;e=e.sort((e,t)=>e-t);const o=Q.apply(null,e),r=e.length,i=o.length,a=Math.pow(10,n);let l=0,c=!1,u=0;for(;!c&&u=o[u]&&(t{if(n=void 0===n?3:n,M(e=N(v(e)),t=S(t),n=S(n)))return s;e=e.sort((e,t)=>e-t);const o=Q.apply(null,e),r=e.length,i=o.length,a=Math.pow(10,n);let l=0,c=!1,u=0;for(;!c&&u=o[u]&&(tM(e=S(e),t=S(t))?s:n?o.poisson.cdf(e,t):o.poisson.pdf(e,t)},Le={EXC:(e,t)=>{if(M(e=N(v(e)),t=S(t)))return s;switch(t){case 1:return Me.EXC(e,.25);case 2:return Me.EXC(e,.5);case 3:return Me.EXC(e,.75);default:return u}},INC:(e,t)=>{if(M(e=N(v(e)),t=S(t)))return s;switch(t){case 1:return Me.INC(e,.25);case 2:return Me.INC(e,.5);case 3:return Me.INC(e,.75);default:return u}}},De={};function Ie(){const e=N(v(arguments));if(e instanceof Error)return e;const t=o.mean(e),n=e.length;let r=0;for(let o=0;oe-t)[t-1]}De.AVG=(e,t,n)=>{if(M(e=S(e),t=N(v(t))))return s;const o=(n=n||!1)?(e,t)=>e-t:(e,t)=>t-e,r=(t=(t=v(t)).sort(o)).length;let i=0;for(let n=0;n1?(2*t.indexOf(e)+i+1)/2:t.indexOf(e)+1},De.EQ=(e,t,n)=>{if(M(e=S(e),t=N(v(t))))return s;const o=(n=n||!1)?(e,t)=>e-t:(e,t)=>t-e;return(t=t.sort(o)).indexOf(e)+1},Ie.P=function(){const e=N(v(arguments));if(e instanceof Error)return e;const t=o.mean(e),n=e.length;let r=0,i=0;for(let o=0;o1!==n&&2!==n?u:1===n?Oe.DIST.RT(e,t):Oe.DIST["2T"](e,t)};Oe.DIST["2T"]=function(e,t){return 2!==arguments.length?d:e<0||t<1?u:"number"!=typeof e||"number"!=typeof t?s:2*(1-o.studentt.cdf(e,t))},Oe.DIST.RT=function(e,t){return 2!==arguments.length?d:e<0||t<1?u:"number"!=typeof e||"number"!=typeof t?s:1-o.studentt.cdf(e,t)},Oe.INV=(e,t)=>M(e=S(e),t=S(t))?s:o.studentt.inv(e,t),Oe.INV["2T"]=(e,t)=>(e=S(e),t=S(t),e<=0||e>1||t<1?u:M(e,t)?s:Math.abs(o.studentt.inv(e/2,t))),Oe.TEST=(e,t)=>{if(M(e=N(v(e)),t=N(v(t))))return s;const n=o.mean(e),r=o.mean(t);let i,a=0,l=0;for(i=0;iM(e=S(e),t=S(t),n=S(n))?s:o?1-Math.exp(-Math.pow(e/n,t)):Math.pow(e,t-1)*Math.exp(-Math.pow(e/n,t))*t/Math.pow(n,t)},He={};function Be(e,t,n){const o=_(e=S(e),t=S(t),n=S(n));if(o)return o;if(0===t)return 0;t=Math.abs(t);const r=-Math.floor(Math.log(t)/Math.log(10));return e>=0?Xe(Math.ceil(e/t)*t,r):0===n?-Xe(Math.floor(Math.abs(e)/t)*t,r):-Xe(Math.ceil(Math.abs(e)/t)*t,r)}function qe(e,t){return _(e=S(e),t=S(t))||(e{if(M(e=N(v(e)),t=S(t)))return s;n=n||Ne.S(e);const o=e.length;return 1-Ee.S.DIST((ee(e)-t)/(n/Math.sqrt(o)),!0)},Be.MATH=Be,Be.PRECISE=Be;const Ve=[];function Ue(e){if((e=S(e))instanceof Error)return e;const t=Math.floor(e);return 0===t||1===t?1:(Ve[t]>0||(Ve[t]=Ue(t-1)*t),Ve[t])}function We(e,t){const n=_(e=S(e),t=S(t));if(n)return n;if(0===t)return 0;if(!(e>=0&&t>0||e<=0&&t<0))return u;t=Math.abs(t);const o=-Math.floor(Math.log(t)/Math.log(10));return e>=0?Xe(Math.floor(e/t)*t,o):-Xe(Math.ceil(Math.abs(e)/t),o)}We.MATH=(e,t,n)=>{if(t instanceof Error)return t;t=void 0===t?0:t;const o=_(e=S(e),t=S(t),n=S(n));if(o)return o;if(0===t)return 0;t=t?Math.abs(t):1;const r=-Math.floor(Math.log(t)/Math.log(10));return e>=0?Xe(Math.floor(e/t)*t,r):0===n||void 0===n?-Xe(Math.ceil(Math.abs(e)/t)*t,r):-Xe(Math.floor(Math.abs(e)/t)*t,r)},We.PRECISE=We.MATH;const Ye={CEILING:Be};function ze(e,t){const n=_(e=S(e),t=S(t));if(n)return n;if(0===e&&0===t)return u;const o=Math.pow(e,t);return isNaN(o)?u:o}function Ke(){const e=v(arguments).filter(e=>null!=e);if(0===e.length)return 0;const t=N(e);if(t instanceof Error)return t;let n=1;for(let e=0;e{if(e instanceof Error)return!1;if(t instanceof Error)e=t;else if("number"==typeof t)e+=t;else if("string"==typeof t){const n=parseFloat(t);!isNaN(n)&&(e+=n)}else if(Array.isArray(t)){const n=Ge.apply(null,t);n instanceof Error?e=n:e+=n}}),e}var Je=Object.freeze({__proto__:null,ADD:function(e,t){return 2!==arguments.length?d:_(e=S(e),t=S(t))||e+t},DIVIDE:function(e,t){return 2!==arguments.length?d:_(e=S(e),t=S(t))||(0===t?a:e/t)},EQ:function(e,t){return 2!==arguments.length?d:e instanceof Error?e:t instanceof Error?t:(null===e&&(e=void 0),null===t&&(t=void 0),e===t)},GT:function(e,t){return 2!==arguments.length?d:e instanceof Error?e:t instanceof Error?t:(k(e,t)?(e=O(e),t=O(t)):(e=S(e),t=S(t)),_(e,t)||e>t)},GTE:function(e,t){return 2!==arguments.length?d:(k(e,t)?(e=O(e),t=O(t)):(e=S(e),t=S(t)),_(e,t)||e>=t)},LT:function(e,t){return 2!==arguments.length?d:(k(e,t)?(e=O(e),t=O(t)):(e=S(e),t=S(t)),_(e,t)||er||s===r&&l{const n=e.getFullYear(),o=new Date(n,2,1);if(lt(n)&&e=o)return!0;const r=t.getFullYear(),i=new Date(r,2,1);return lt(r)&&t>=i&&es||r===s&&o>=a))return(i===l&<(i)||n(e,t)||1===s&&29===a)&&(c=366),ct(e,t)/c;const u=l-i+1,d=(new Date(l+1,0,1)-new Date(i,0,1))/1e3/60/60/24/u;return ct(e,t)/d}case 2:return ct(e,t)/360;case 3:return ct(e,t)/365;case 4:return(a+30*s+360*l-(o+30*r+360*i))/360}}function dt(e){const t=e>-22038912e5?2:1;return Math.ceil((e-$e)/864e5)+t}function ft(e){return 0===(e=S(e))?s:e instanceof Error?e:String.fromCharCode(e)}function pt(e){if(M(e))return e;let t=(e=e||"").charCodeAt(0);return isNaN(t)&&(t=s),t}function ht(){const e=v(arguments),t=_.apply(void 0,e);if(t)return t;let n=0;for(;(n=e.indexOf(!0))>-1;)e[n]="TRUE";let o=0;for(;(o=e.indexOf(!1))>-1;)e[o]="FALSE";return e.join("")}at.INTL=(e,t,n,o)=>{if((e=D(e))instanceof Error)return e;if((t=D(t))instanceof Error)return t;let r=!1;const i=[],a=[1,2,3,4,5,6,0],l=new RegExp("^[0|1]{7}$");if(void 0===n)n=et[1];else if("string"==typeof n&&l.test(n)){r=!0,n=n.split("");for(let e=0;e0?d.getUTCDay():d.getDay();let t=r?i.includes(e):e===n[0]||e===n[1];for(let e=0;e{if((e=D(e))instanceof Error)return e;if((t=S(t))instanceof Error)return t;if(t<0)return u;if(!((n=void 0===n?et[1]:et[n])instanceof Array))return s;void 0===o?o=[]:o instanceof Array||(o=[o]);for(let e=0;e0?"+":"";return e.toString()+o+(1===t?n:t.toString()+n)}}function wt(e,t){return t=void 0===t?0:t,M(e=S(e),t=S(t))?s:o.erf(e)}function Ct(e){return isNaN(e)?s:o.erfc(e)}function Et(e){const t=Dt(e),n=_t(e);return M(t,n)?s:Math.sqrt(Math.pow(t,2)+Math.pow(n,2))}function _t(e){if(void 0===e||!0===e||!1===e)return s;if(0===e||"0"===e)return 0;if(["i","j"].indexOf(e)>=0)return 1;let t=(e=(e+="").replace("+i","+1i").replace("-i","-1i").replace("+j","+1j").replace("-j","-1j")).indexOf("+"),n=e.indexOf("-");0===t&&(t=e.indexOf("+",1)),0===n&&(n=e.indexOf("-",1));const o=e.substring(e.length-1,e.length),r="i"===o||"j"===o;return t>=0||n>=0?r?t>=0?isNaN(e.substring(0,t))||isNaN(e.substring(t+1,e.length-1))?u:Number(e.substring(t+1,e.length-1)):isNaN(e.substring(0,n))||isNaN(e.substring(n+1,e.length-1))?u:-Number(e.substring(n+1,e.length-1)):u:r?isNaN(e.substring(0,e.length-1))?u:e.substring(0,e.length-1):isNaN(e)?u:0}function Mt(e){const t=Dt(e),n=_t(e);return M(t,n)?s:0===t&&0===n?a:0===t&&n>0?Math.PI/2:0===t&&n<0?-Math.PI/2:0===n&&t>0?0:0===n&&t<0?-Math.PI:t>0?Math.atan(n/t):t<0&&n>=0?Math.atan(n/t)+Math.PI:Math.atan(n/t)-Math.PI}function At(e){const t=Dt(e),n=_t(e);if(M(t,n))return s;let o=e.substring(e.length-1);return o="i"===o||"j"===o?o:"i",xt(Math.cos(t)*(Math.exp(n)+Math.exp(-n))/2,-Math.sin(t)*(Math.exp(n)-Math.exp(-n))/2,o)}function Tt(e){const t=Dt(e),n=_t(e);if(M(t,n))return s;let o=e.substring(e.length-1);return o="i"===o||"j"===o?o:"i",xt(Math.cos(n)*(Math.exp(t)+Math.exp(-t))/2,Math.sin(n)*(Math.exp(t)-Math.exp(-t))/2,o)}function Lt(e,t){const n=Dt(e),o=_t(e),r=Dt(t),i=_t(t);if(M(n,o,r,i))return s;const a=e.substring(e.length-1),l=t.substring(t.length-1);let c="i";if(("j"===a||"j"===l)&&(c="j"),0===r&&0===i)return u;const d=r*r+i*i;return xt((n*r+o*i)/d,(o*r-n*i)/d,c)}function Dt(e){if(void 0===e||!0===e||!1===e)return s;if(0===e||"0"===e)return 0;if(["i","+i","1i","+1i","-i","-1i","j","+j","1j","+1j","-j","-1j"].indexOf(e)>=0)return 0;let t=(e+="").indexOf("+"),n=e.indexOf("-");0===t&&(t=e.indexOf("+",1)),0===n&&(n=e.indexOf("-",1));const o=e.substring(e.length-1,e.length),r="i"===o||"j"===o;return t>=0||n>=0?r?t>=0?isNaN(e.substring(0,t))||isNaN(e.substring(t+1,e.length-1))?u:Number(e.substring(0,t)):isNaN(e.substring(0,n))||isNaN(e.substring(n+1,e.length-1))?u:Number(e.substring(0,n)):u:r?isNaN(e.substring(0,e.length-1))?u:0:isNaN(e)?u:e}function It(e){const t=Dt(e),n=_t(e);if(M(t,n))return s;let o=e.substring(e.length-1);return o="i"===o||"j"===o?o:"i",xt(Math.sin(t)*(Math.exp(n)+Math.exp(-n))/2,Math.cos(t)*(Math.exp(n)-Math.exp(-n))/2,o)}function St(e){const t=Dt(e),n=_t(e);if(M(t,n))return s;let o=e.substring(e.length-1);return o="i"===o||"j"===o?o:"i",xt(Math.cos(n)*(Math.exp(t)-Math.exp(-t))/2,Math.sin(n)*(Math.exp(t)+Math.exp(-t))/2,o)}wt.PRECISE=()=>{throw new Error("ERF.PRECISE is not implemented")},Ct.PRECISE=()=>{throw new Error("ERFC.PRECISE is not implemented")};const Nt=ne.DIST,Ot=ne.INV,kt=oe.DIST,Rt=Be.MATH,Pt=Be.PRECISE,Ft=re.DIST,Ht=re.DIST.RT,Bt=re.INV,qt=re.INV.RT,Vt=re.TEST,Ut=ce.P,Wt=ce.P,Yt=ce.S,zt=oe.INV,Kt=Ct.PRECISE,Xt=wt.PRECISE,Gt=ue.DIST,Jt=de.DIST,$t=de.DIST.RT,Qt=de.INV,Zt=de.INV.RT,en=We.MATH,tn=We.PRECISE,nn=de.TEST,on=pe.DIST,rn=pe.INV,an=he.PRECISE,sn=me.DIST,ln=je.INV,cn=je.DIST,un=je.INV,dn=we.MULT,fn=we.SNGL,pn=Ce.DIST,hn=at.INTL,mn=Ee.DIST,gn=Ee.INV,bn=Ee.S.DIST,jn=Ee.S.INV,vn=Me.EXC,yn=Me.INC,xn=Ae.EXC,wn=Ae.INC,Cn=Te.DIST,En=Le.EXC,_n=Le.INC,Mn=De.AVG,An=De.EQ,Tn=Ie.P,Ln=Ne.P,Dn=Ne.S,In=Oe.DIST,Sn=Oe.DIST.RT,Nn=Oe.INV,On=Oe.TEST,kn=ke.P,Rn=ke.S,Pn=Fe.DIST,Fn=st.INTL,Hn=He.TEST;function Bn(e){const t=[];return g(e,e=>{e&&t.push(e)}),t}function qn(e,t){const n={};for(let t=1;to&&(o=t[e].length);for(let r=1;r{t+={M:1e3,CM:900,D:500,CD:400,C:100,XC:90,L:50,XL:40,X:10,IX:9,V:5,IV:4,I:1}[e]}),t},t.ASC=function(){throw new Error("ASC is not implemented")},t.ASIN=function(e){if((e=S(e))instanceof Error)return e;let t=Math.asin(e);return isNaN(t)&&(t=u),t},t.ASINH=function(e){return(e=S(e))instanceof Error?e:Math.log(e+Math.sqrt(e*e+1))},t.ATAN=function(e){return(e=S(e))instanceof Error?e:Math.atan(e)},t.ATAN2=function(e,t){return _(e=S(e),t=S(t))||Math.atan2(e,t)},t.ATANH=function(e){if((e=S(e))instanceof Error)return e;let t=Math.log((1+e)/(1-e))/2;return isNaN(t)&&(t=u),t},t.AVEDEV=function(){const e=v(arguments).filter(R);if(0===e.length)return u;const t=N(e);return t instanceof Error?t:o.sum(o(t).subtract(o.mean(t)).abs()[0])/t.length},t.AVERAGE=ee,t.AVERAGEA=te,t.AVERAGEIF=function(e,t,n){if(arguments.length<=1)return d;if(n=N(v(n=n||e).filter(R)),e=v(e),n instanceof Error)return n;let o=0,r=0;const i=void 0===t||"*"===t,a=i?null:W(t+"");for(let t=0;t=o.length?bt("0",t-o.length)+o:u},t.BIN2OCT=function(e,t){if(!yt(e))return u;const n=e.toString();if(10===n.length&&"1"===n.substring(0,1))return(1073741312+parseInt(n.substring(1),2)).toString(8);const o=parseInt(e,2).toString(8);return void 0===t?o:isNaN(t)?s:t<0?u:(t=Math.floor(t))>=o.length?bt("0",t-o.length)+o:u},t.BINOM=oe,t.BINOMDIST=kt,t.BITAND=function(e,t){return M(e=S(e),t=S(t))?s:e<0||t<0||Math.floor(e)!==e||Math.floor(t)!==t||e>0xffffffffffff||t>0xffffffffffff?u:e&t},t.BITLSHIFT=function(e,t){return M(e=S(e),t=S(t))?s:e<0||Math.floor(e)!==e||e>0xffffffffffff||Math.abs(t)>53?u:t>=0?e<>-t},t.BITOR=function(e,t){return M(e=S(e),t=S(t))?s:e<0||t<0||Math.floor(e)!==e||Math.floor(t)!==t||e>0xffffffffffff||t>0xffffffffffff?u:e|t},t.BITRSHIFT=function(e,t){return M(e=S(e),t=S(t))?s:e<0||Math.floor(e)!==e||e>0xffffffffffff||Math.abs(t)>53?u:t>=0?e>>t:e<<-t},t.BITXOR=function(e,t){return M(e=S(e),t=S(t))?s:e<0||t<0||Math.floor(e)!==e||Math.floor(t)!==t||e>0xffffffffffff||t>0xffffffffffff?u:e^t},t.CEILING=Be,t.CEILINGMATH=Rt,t.CEILINGPRECISE=Pt,t.CELL=function(){throw new Error("CELL is not implemented")},t.CHAR=ft,t.CHIDIST=Ft,t.CHIDISTRT=Ht,t.CHIINV=Bt,t.CHIINVRT=qt,t.CHISQ=re,t.CHITEST=Vt,t.CHOOSE=function(){if(arguments.length<2)return d;const e=arguments[0];return e<1||e>254||arguments.length=0)&&(s=o[e]),(o[e][1]===u||a.indexOf(u)>=0)&&(l=o[e]);if(null===s){const e=r[t.substring(0,2)];let n=i[t.substring(0,1)];"da"===t.substring(0,2)&&(n=["dekao",10,"da"]),e?(f=e[2],c=t.substring(2)):n&&(f=n[1],c=t.substring(n[2].length));for(let e=0;e=0)&&(s=o[e])}if(null===l){const e=r[n.substring(0,2)];let t=i[n.substring(0,1)];"da"===n.substring(0,2)&&(t=["dekao",10,"da"]),e?(p=e[2],u=n.substring(2)):t&&(p=t[1],u=n.substring(t[2].length));for(let e=0;e=0)&&(l=o[e])}return null===s||null===l||s[3]!==l[3]?d:e*s[6]*f/(l[6]*p)},t.CORREL=function(e,t){return M(e=N(v(e)),t=N(v(t)))?s:o.corrcoeff(e,t)},t.COS=function(e){return(e=S(e))instanceof Error?e:Math.cos(e)},t.COSH=function(e){return(e=S(e))instanceof Error?e:(Math.exp(e)+Math.exp(-e))/2},t.COT=function(e){return(e=S(e))instanceof Error?e:0===e?a:1/Math.tan(e)},t.COTH=function(e){if((e=S(e))instanceof Error)return e;if(0===e)return a;const t=Math.exp(2*e);return(t+1)/(t-1)},t.COUNT=ae,t.COUNTA=se,t.COUNTBLANK=le,t.COUNTIF=function(e,t){if(e=v(e),void 0===t||"*"===t)return e.length;let n=0;const o=W(t+"");for(let t=0;tr)return u;if(0!==i&&1!==i)return u;const a=Kn(e,t,n,0,i);let l=0;1===o&&(0===i&&(l=-n),o++);for(let t=o;t<=r;t++)l+=1===i?Wn(e,t-2,a,n,1)-a:Wn(e,t-1,a,n,0);return l*=e,l},t.CUMPRINC=function(e,t,n,o,r,i){if(M(e=S(e),t=S(t),n=S(n)))return s;if(e<=0||t<=0||n<=0)return u;if(o<1||r<1||o>r)return u;if(0!==i&&1!==i)return u;const a=Kn(e,t,n,0,i);let l=0;1===o&&(l=0===i?a+n*e:a,o++);for(let t=o;t<=r;t++)l+=i>0?a-(Wn(e,t-2,a,n,1)-a)*e:a-Wn(e,t-1,a,n,0)*e;return l},t.DATE=function(e,t,n){let o;return M(e=S(e),t=S(t),n=S(n))?o=s:(o=new Date(e,t-1,n),o.getFullYear()<0&&(o=u)),o},t.DATEDIF=tt,t.DATEVALUE=function(e){if("string"!=typeof e)return s;const t=Date.parse(e);return isNaN(t)?s:new Date(e)},t.DAVERAGE=function(e,t,n){if(isNaN(t)&&"string"!=typeof t)return s;const o=qn(e,n);let r=[];if("string"==typeof t){const n=E(e,t);r=w(e[n])}else r=w(e[t]);let i=0;return g(o,e=>{i+=r[e]}),0===o.length?a:i/o.length},t.DAY=function(e){const t=D(e);return t instanceof Error?t:t.getDate()},t.DAYS=ot,t.DAYS360=rt,t.DB=function(e,t,n,o,r){if(r=void 0===r?12:r,M(e=S(e),t=S(t),n=S(n),o=S(o),r=S(r)))return s;if(e<0||t<0||n<0||o<0)return u;if(-1===[1,2,3,4,5,6,7,8,9,10,11,12].indexOf(r))return u;if(o>n)return u;if(t>=e)return 0;const i=(1-Math.pow(t/e,1/n)).toFixed(3),a=e*i*r/12;let l=a,c=0;const d=o===n?n-1:o;for(let t=2;t<=d;t++)c=(e-l)*i,l+=c;return 1===o?a:o===n?(e-l)*i:c},t.DBCS=function(){throw new Error("DBCS is not implemented")},t.DCOUNT=function(e,t,n){if(isNaN(t)&&"string"!=typeof t)return s;const o=qn(e,n);let r=[];if("string"==typeof t){const n=E(e,t);r=w(e[n])}else r=w(e[t]);const i=[];return g(o,e=>{i.push(r[e])}),ae(i)},t.DCOUNTA=function(e,t,n){if(isNaN(t)&&"string"!=typeof t)return s;const o=qn(e,n);let r=[];if("string"==typeof t){const n=E(e,t);r=w(e[n])}else r=w(e[t]);const i=[];return g(o,e=>{i.push(r[e])}),se(i)},t.DDB=function(e,t,n,o,r){if(r=void 0===r?2:r,M(e=S(e),t=S(t),n=S(n),o=S(o),r=S(r)))return s;if(e<0||t<0||n<0||o<0||r<=0)return u;if(o>n)return u;if(t>=e)return 0;let i=0,a=0;for(let s=1;s<=o;s++)a=Math.min(r/n*(e-i),e-t-i),i+=a;return a},t.DEC2BIN=function(e,t){if((e=S(e))instanceof Error)return e;if(!/^-?[0-9]{1,3}$/.test(e)||e<-512||e>511)return u;if(e<0)return"1"+bt("0",9-(512+e).toString(2).length)+(512+e).toString(2);const n=parseInt(e,10).toString(2);return void 0===t?n:isNaN(t)?s:t<0?u:(t=Math.floor(t))>=n.length?bt("0",t-n.length)+n:u},t.DEC2HEX=function(e,t){if((e=S(e))instanceof Error)return e;if(!/^-?[0-9]{1,12}$/.test(e)||e<-549755813888||e>549755813887)return u;if(e<0)return(1099511627776+e).toString(16);const n=parseInt(e,10).toString(16);return void 0===t?n:isNaN(t)?s:t<0?u:(t=Math.floor(t))>=n.length?bt("0",t-n.length)+n:u},t.DEC2OCT=function(e,t){if((e=S(e))instanceof Error)return e;if(!/^-?[0-9]{1,9}$/.test(e)||e<-536870912||e>536870911)return u;if(e<0)return(1073741824+e).toString(8);const n=parseInt(e,10).toString(8);return void 0===t?n:isNaN(t)?s:t<0?u:(t=Math.floor(t))>=n.length?bt("0",t-n.length)+n:u},t.DECIMAL=function(e,t){return arguments.length<1?s:_(e=S(e),t=S(t))||(0===t?u:parseInt(e,t))},t.DEGREES=function(e){return(e=S(e))instanceof Error?e:180*e/Math.PI},t.DELTA=function(e,t){return t=void 0===t?0:t,M(e=S(e),t=S(t))?s:e===t?1:0},t.DEVSQ=function(){const e=N(v(arguments));if(e instanceof Error)return e;const t=o.mean(e);let n=0;for(let o=0;o1?u:r[o[0]]},t.DISC=function(e,t,n,o,r){if(M(e=D(e),t=D(t),n=S(n),o=S(o),r=(r=S(r))||0))return s;if(n<=0||o<=0)return u;if(e>=t)return s;let i,a;switch(r){case 0:i=360,a=rt(e,t,!1);break;case 1:case 3:i=365,a=tt(e,t,"D");break;case 2:i=360,a=tt(e,t,"D");break;case 4:i=360,a=rt(e,t,!0);break;default:return u}return(o-n)/o*i/a},t.DMAX=function(e,t,n){if(isNaN(t)&&"string"!=typeof t)return s;const o=qn(e,n);let r=[];if("string"==typeof t){const n=E(e,t);r=w(e[n])}else r=w(e[t]);let i=r[o[0]];return g(o,e=>{i{i>r[e]&&(i=r[e])}),i},t.DOLLAR=function(e,t=2){if(e=S(e),isNaN(e))return s;const n={style:"currency",currency:"USD",minimumFractionDigits:t>=0?t:0,maximumFractionDigits:t>=0?t:0},o=(e=Xe(e,t)).toLocaleString("en-US",n);return e<0?"$("+o.slice(2)+")":o},t.DOLLARDE=function(e,t){if(M(e=S(e),t=S(t)))return s;if(t<0)return u;if(t>=0&&t<1)return a;t=parseInt(t,10);let n=parseInt(e,10);n+=e%1*Math.pow(10,Math.ceil(Math.log(t)/Math.LN10))/t;const o=Math.pow(10,Math.ceil(Math.log(t)/Math.LN2)+1);return n=Math.round(n*o)/o,n},t.DOLLARFR=function(e,t){if(M(e=S(e),t=S(t)))return s;if(t<0)return u;if(t>=0&&t<1)return a;t=parseInt(t,10);let n=parseInt(e,10);return n+=e%1*Math.pow(10,-Math.ceil(Math.log(t)/Math.LN10))*t,n},t.DPRODUCT=function(e,t,n){if(isNaN(t)&&"string"!=typeof t)return s;const o=qn(e,n);let r=[];if("string"==typeof t){const n=E(e,t);r=w(e[n])}else r=w(e[t]);let i=[];g(o,e=>{i.push(r[e])}),i=Bn(i);let a=1;return g(i,e=>{a*=e}),a},t.DSTDEV=function(e,t,n){if(isNaN(t)&&"string"!=typeof t)return s;const o=qn(e,n);let r=[];if("string"==typeof t){const n=E(e,t);r=w(e[n])}else r=w(e[t]);let i=[];return g(o,e=>{i.push(r[e])}),i=Bn(i),Ne.S(i)},t.DSTDEVP=function(e,t,n){if(isNaN(t)&&"string"!=typeof t)return s;const o=qn(e,n);let r=[];if("string"==typeof t){const n=E(e,t);r=w(e[n])}else r=w(e[t]);let i=[];return g(o,e=>{i.push(r[e])}),i=Bn(i),Ne.P(i)},t.DSUM=function(e,t,n){if(isNaN(t)&&"string"!=typeof t)return s;const o=qn(e,n);let r=[];if("string"==typeof t){const n=E(e,t);r=w(e[n])}else r=w(e[t]);const i=[];return g(o,e=>{i.push(r[e])}),Ge(i)},t.DURATION=function(){throw new Error("DURATION is not implemented")},t.DVAR=function(e,t,n){if(isNaN(t)&&"string"!=typeof t)return s;const o=qn(e,n);let r=[];if("string"==typeof t){const n=E(e,t);r=w(e[n])}else r=w(e[t]);const i=[];return g(o,e=>{i.push(r[e])}),ke.S(i)},t.DVARP=function(e,t,n){if(isNaN(t)&&"string"!=typeof t)return s;const o=qn(e,n);let r=[];if("string"==typeof t){const n=E(e,t);r=w(e[n])}else r=w(e[t]);const i=[];return g(o,e=>{i.push(r[e])}),ke.P(i)},t.EDATE=function(e,t){return(e=D(e))instanceof Error?e:isNaN(t)?s:(t=parseInt(t,10),e.setMonth(e.getMonth()+t),e)},t.EFFECT=function(e,t){return M(e=S(e),t=S(t))?s:e<=0||t<1?u:(t=parseInt(t,10),Math.pow(1+e/t,t)-1)},t.EOMONTH=function(e,t){return(e=D(e))instanceof Error?e:isNaN(t)?s:(t=parseInt(t,10),new Date(e.getFullYear(),e.getMonth()+t+1,0))},t.ERF=wt,t.ERFC=Ct,t.ERFCPRECISE=Kt,t.ERFPRECISE=Xt,t.ERROR=z,t.EVEN=function(e){return(e=S(e))instanceof Error?e:Be(e,-2,-1)},t.EXACT=function(e,t){return 2!==arguments.length?d:_(e,t)||(e=O(e))===O(t)},t.EXP=function(e){return arguments.length<1?d:arguments.length>1?f:(e=S(e))instanceof Error?e:e=Math.exp(e)},t.EXPON=ue,t.EXPONDIST=Gt,t.F=de,t.FACT=Ue,t.FACTDOUBLE=function e(t){if((t=S(t))instanceof Error)return t;const n=Math.floor(t);return n<=0?1:n*e(n-2)},t.FALSE=function(){return!1},t.FDIST=Jt,t.FDISTRT=$t,t.FIND=function(e,t,n){if(arguments.length<2)return d;e=O(e),n=void 0===n?0:n;const o=(t=O(t)).indexOf(e,n-1);return-1===o?s:o+1},t.FINV=Qt,t.FINVRT=Zt,t.FISHER=function(e){return(e=S(e))instanceof Error?e:Math.log((1+e)/(1-e))/2},t.FISHERINV=function(e){if((e=S(e))instanceof Error)return e;const t=Math.exp(2*e);return(t-1)/(t+1)},t.FIXED=gt,t.FLOOR=We,t.FLOORMATH=en,t.FLOORPRECISE=tn,t.FORECAST=fe,t.FREQUENCY=function(e,t){if(M(e=N(v(e)),t=N(v(t))))return s;const n=e.length,o=t.length,r=[];for(let i=0;i<=o;i++){r[i]=0;for(let a=0;at[i-1]&&e[a]<=t[i]&&(r[i]+=1):i===o&&e[a]>t[o-1]&&(r[o]+=1)}return r},t.FTEST=nn,t.FV=Wn,t.FVSCHEDULE=function(e,t){if(M(e=S(e),t=N(v(t))))return s;const n=t.length;let o=e;for(let e=0;er?o%=r:r%=o;o+=r}return o},t.GEOMEAN=function(){const e=N(v(arguments));return e instanceof Error?e:o.geomean(e)},t.GESTEP=function(e,t){return M(t=t||0,e=S(e))?e:e>=t?1:0},t.GROWTH=function(e,t,n,o){if((e=N(e))instanceof Error)return e;let r;if(void 0===t)for(t=[],r=1;r<=e.length;r++)t.push(r);if(void 0===n)for(n=[],r=1;r<=e.length;r++)n.push(r);if(M(t=N(t),n=N(n)))return s;void 0===o&&(o=!0);const i=e.length;let a,l,c=0,u=0,d=0,f=0;for(r=0;r511)return u;if(n)return"1"+bt("0",9-(512+o).toString(2).length)+(512+o).toString(2);const r=o.toString(2);return void 0===t?r:isNaN(t)?s:t<0?u:(t=Math.floor(t))>=r.length?bt("0",t-r.length)+r:u},t.HEX2DEC=function(e){if(!/^[0-9A-Fa-f]{1,10}$/.test(e))return u;const t=parseInt(e,16);return t>=549755813888?t-1099511627776:t},t.HEX2OCT=function(e,t){if(!/^[0-9A-Fa-f]{1,10}$/.test(e))return u;const n=parseInt(e,16);if(n>536870911&&n<0xffe0000000)return u;if(n>=0xffe0000000)return(n-0xffc0000000).toString(8);const o=n.toString(8);return void 0===t?o:isNaN(t)?s:t<0?u:(t=Math.floor(t))>=o.length?bt("0",t-o.length)+o:u},t.HLOOKUP=function(e,t,n,o){return Z(e,C(t),n,o)},t.HOUR=function(e){return(e=D(e))instanceof Error?e:e.getHours()},t.HYPGEOM=me,t.HYPGEOMDIST=sn,t.IF=function(e,t,n){return e instanceof Error?e:(null==(t=!(arguments.length>=2)||t)&&(t=0),null==(n=3===arguments.length&&n)&&(n=0),e?t:n)},t.IFERROR=function(e,t){return X(e)?t:e},t.IFNA=function(e,t){return e===d?t:e},t.IFS=function(){for(let e=0;e0&&!Array.isArray(e[0]);return r&&!n?(n=t,t=1):(n=n||1,t=t||1),n<0||t<0?s:r&&1===t&&n<=e.length?e[n-1]:t<=e.length&&n<=e[t-1].length?e[t-1][n-1]:l},t.INFO=function(){throw new Error("INFO is not implemented")},t.INT=function(e){return(e=S(e))instanceof Error?e:Math.floor(e)},t.INTERCEPT=function(e,t){return M(e=N(e),t=N(t))?s:e.length!==t.length?d:fe(0,e,t)},t.INTRATE=function(){throw new Error("INTRATE is not implemented")},t.IPMT=Yn,t.IRR=function(e,t){if(t=t||0,M(e=N(v(e)),t=S(t)))return s;const n=(e,t,n)=>{const o=n+1;let r=e[0];for(let n=1;n{const o=n+1;let r=0;for(let n=1;n0&&(i=!0),e[t]<0&&(a=!0);if(!i||!a)return u;let l,c,d,f=t=void 0===t?.1:t,p=!0;do{d=n(e,r,f),l=f-d/o(e,r,f),c=Math.abs(l-f),f=l,p=c>1e-10&&Math.abs(d)>1e-10}while(p);return f},t.ISBLANK=function(e){return null===e},t.ISERR=K,t.ISERROR=X,t.ISEVEN=function(e){return!(1&Math.floor(Math.abs(e)))},t.ISFORMULA=function(){throw new Error("ISFORMULA is not implemented")},t.ISLOGICAL=G,t.ISNA=function(e){return e===d},t.ISNONTEXT=function(e){return"string"!=typeof e},t.ISNUMBER=J,t.ISO=Ye,t.ISODD=function(e){return!!(1&Math.floor(Math.abs(e)))},t.ISOWEEKNUM=it,t.ISPMT=function(e,t,n,o){return M(e=S(e),t=S(t),n=S(n),o=S(o))?s:o*e*(t/n-1)},t.ISREF=function(){throw new Error("ISREF is not implemented")},t.ISTEXT=$,t.KURT=function(){const e=N(v(arguments));if(e instanceof Error)return e;const t=o.mean(e),n=e.length;let r=0;for(let o=0;o1;){if(o%2){for(t=3,n=Math.floor(Math.sqrt(o));t<=n&&o%t;t+=2);r=t<=n?t:o}else r=2;for(o/=r,i*=r,t=e.length;t;e[--t]%r==0&&1==(e[t]/=r)&&e.splice(t,1));}}return i},t.LEFT=function(e,t){return _(e,t)||(e=O(e),(t=S(t=void 0===t?1:t))instanceof Error||"string"!=typeof e?s:e.substring(0,t))},t.LEN=function(e){return 0===arguments.length?f:e instanceof Error?e:Array.isArray(e)?s:O(e).length},t.LINEST=be,t.LN=function(e){return(e=S(e))instanceof Error?e:0===e?u:Math.log(e)},t.LOG=function(e,t){return _(e=S(e),t=S(t))||(0===e||0===t?u:Math.log(e)/Math.log(t))},t.LOG10=function(e){return(e=S(e))instanceof Error?e:0===e?u:Math.log(e)/Math.log(10)},t.LOGEST=function(e,t){if(M(e=N(v(e)),t=N(v(t))))return s;if(e.length!==t.length)return s;for(let t=0;te)return r}return r},t.LOWER=function(e){return 1!==arguments.length?s:M(e=O(e))?e:e.toLowerCase()},t.MATCH=function(e,t,n){if(!e||!t)return d;if(2===arguments.length&&(n=1),!((t=v(t))instanceof Array))return d;if(-1!==n&&0!==n&&1!==n)return d;let o,r;for(let i=0;ir&&(o=i+1,r=t[i]):(o=i+1,r=t[i]))}else if(0===n){if("string"==typeof e&&"string"==typeof t[i]){const n=e.toLowerCase().replace(/\?/g,".").replace(/\*/g,".*").replace(/~/g,"\\");if(new RegExp("^"+n+"$").test(t[i].toLowerCase()))return i+1}else if(t[i]===e)return i+1}else if(-1===n){if(t[i]===e)return i+1;t[i]>e&&(r?t[i]null==e?0:e),0===n.length?0:Math.max.apply(Math,n)},t.MDURATION=function(){throw new Error("MDURATION is not implemented")},t.MEDIAN=ye,t.MID=function(e,t,n){if(null==t)return s;if(M(t=S(t),n=S(n))||"string"!=typeof e)return n;const o=t-1,r=o+n;return e.substring(o,r)},t.MIN=xe,t.MINA=function(){const e=v(arguments),t=_.apply(void 0,e);if(t)return t;let n=b(e);return n=n.map(e=>null==e?0:e),0===n.length?0:Math.min.apply(Math,n)},t.MINUTE=function(e){return(e=D(e))instanceof Error?e:e.getMinutes()},t.MIRR=function(e,t,n){if(M(e=N(v(e)),t=S(t),n=S(n)))return s;const o=e.length,r=[],i=[];for(let t=0;t!e.length)||t.some(e=>!e.length)||y(e).some(e=>"number"!=typeof e)||y(t).some(e=>"number"!=typeof e)||e[0].length!==t.length?s:Array(e.length).fill(0).map(()=>Array(t[0].length).fill(0)).map((n,o)=>n.map((n,r)=>e[o].reduce((e,n,o)=>e+n*t[o][r],0)))},t.MOD=function(e,t){const n=_(e=S(e),t=S(t));if(n)return n;if(0===t)return a;let o=Math.abs(e%t);return o=e<0?t-o:o,t>0?o:-o},t.MODE=we,t.MODEMULT=dn,t.MODESNGL=fn,t.MONTH=function(e){return(e=D(e))instanceof Error?e:e.getMonth()+1},t.MROUND=function(e,t){return _(e=S(e),t=S(t))||(e*t==0?0:e*t<0?u:Math.round(e/t)*t)},t.MULTINOMIAL=function(){const e=N(v(arguments));if(e instanceof Error)return e;let t=0,n=1;for(let o=0;o1?d:!(e=parseInt(e))||e<=0?s:Array(e).fill(0).map(()=>Array(e).fill(0)).map((e,t)=>(e[t]=1,e))},t.N=function(e){return J(e)?e:e instanceof Date?e.getTime():!0===e?1:!1===e?0:X(e)?e:0},t.NA=function(){return d},t.NEGBINOM=Ce,t.NEGBINOMDIST=pn,t.NETWORKDAYS=at,t.NETWORKDAYSINTL=hn,t.NOMINAL=function(e,t){return M(e=S(e),t=S(t))?s:e<=0||t<1?u:(t=parseInt(t,10),(Math.pow(e+1,1/t)-1)*t)},t.NORM=Ee,t.NORMDIST=mn,t.NORMINV=gn,t.NORMSDIST=bn,t.NORMSINV=jn,t.NOT=function(e){return"string"==typeof e?s:e instanceof Error?e:!e},t.NOW=function(){return new Date},t.NPER=function(e,t,n,o,r){if(r=void 0===r?0:r,o=void 0===o?0:o,M(e=S(e),t=S(t),n=S(n),o=S(o),r=S(r)))return s;if(0===e)return-(n+o)/t;{const i=t*(1+e*r)-o*e,a=n*e+t*(1+e*r);return Math.log(i/a)/Math.log(1+e)}},t.NPV=zn,t.NUMBERVALUE=function(e,t,n){return"number"==typeof(e=R(e)?e:"")?e:"string"!=typeof e?d:(t=void 0===t?".":t,n=void 0===n?",":n,Number(e.replace(t,".").replace(n,"")))},t.OCT2BIN=function(e,t){if(!/^[0-7]{1,10}$/.test(e))return u;const n=!(10!==e.length||"7"!==e.substring(0,1)),o=n?parseInt(e,8)-1073741824:parseInt(e,8);if(o<-512||o>511)return u;if(n)return"1"+bt("0",9-(512+o).toString(2).length)+(512+o).toString(2);const r=o.toString(2);return void 0===t?r:isNaN(t)?s:t<0?u:(t=Math.floor(t))>=r.length?bt("0",t-r.length)+r:u},t.OCT2DEC=function(e){if(!/^[0-7]{1,10}$/.test(e))return u;const t=parseInt(e,8);return t>=536870912?t-1073741824:t},t.OCT2HEX=function(e,t){if(!/^[0-7]{1,10}$/.test(e))return u;const n=parseInt(e,8);if(n>=536870912)return"ff"+(n+3221225472).toString(16);const o=n.toString(16);return void 0===t?o:isNaN(t)?s:t<0?u:(t=Math.floor(t))>=o.length?bt("0",t-o.length)+o:u},t.ODD=function(e){if((e=S(e))instanceof Error)return e;let t=Math.ceil(Math.abs(e));return t=1&t?t:t+1,e>=0?t:-t},t.ODDFPRICE=function(){throw new Error("ODDFPRICE is not implemented")},t.ODDFYIELD=function(){throw new Error("ODDFYIELD is not implemented")},t.ODDLPRICE=function(){throw new Error("ODDLPRICE is not implemented")},t.ODDLYIELD=function(){throw new Error("ODDLYIELD is not implemented")},t.OR=function(){const e=v(arguments);let t=s;for(let n=0;n=t)return s;let i,a;switch(r){case 0:i=360,a=rt(e,t,!1);break;case 1:case 3:i=365,a=tt(e,t,"D");break;case 2:i=360,a=tt(e,t,"D");break;case 4:i=360,a=rt(e,t,!0);break;default:return u}return o-n*o*a/i},t.PRICEMAT=function(){throw new Error("PRICEMAT is not implemented")},t.PROB=function(e,t,n,o){if(void 0===n)return 0;if(o=void 0===o?n:o,M(e=N(v(e)),t=N(v(t)),n=S(n),o=S(o)))return s;if(n===o)return e.indexOf(n)>=0?t[e.indexOf(n)]:0;const r=e.sort((e,t)=>e-t),i=r.length;let a=0;for(let s=0;s=n&&r[s]<=o&&(a+=t[e.indexOf(r[s])]);return a},t.PRODUCT=Ke,t.PRONETIC=function(){throw new Error("PRONETIC is not implemented")},t.PROPER=function(e){return M(e)?e:isNaN(e)&&"number"==typeof e?s:(e=O(e)).replace(/\w\S*/g,e=>e.charAt(0).toUpperCase()+e.substr(1).toLowerCase())},t.PV=function(e,t,n,o,r){return o=o||0,r=r||0,M(e=S(e),t=S(t),n=S(n),o=S(o),r=S(r))?s:0===e?-n*t-o:((1-Math.pow(1+e,t))/e*n*(1+e*r)-o)/Math.pow(1+e,t)},t.QUARTILE=Le,t.QUARTILEEXC=En,t.QUARTILEINC=_n,t.QUOTIENT=function(e,t){return _(e=S(e),t=S(t))||parseInt(e/t,10)},t.RADIANS=function(e){return(e=S(e))instanceof Error?e:e*Math.PI/180},t.RAND=function(){return Math.random()},t.RANDBETWEEN=function(e,t){return _(e=S(e),t=S(t))||e+Math.ceil((t-e+1)*Math.random())-1},t.RANK=De,t.RANKAVG=Mn,t.RANKEQ=An,t.RATE=function(e,t,n,o,r,i){if(i=void 0===i?.01:i,o=void 0===o?0:o,r=void 0===r?0:r,M(e=S(e),t=S(t),n=S(n),o=S(o),r=S(r),i=S(i)))return s;const a=1e-10;let l=i;r=r?1:0;for(let i=0;i<20;i++){if(l<=-1)return u;let i,s,c;if(Math.abs(l)0?1:-1)*Math.floor(Math.abs(e)*Math.pow(10,t))/Math.pow(10,t)},t.ROUNDUP=function(e,t){return _(e=S(e),t=S(t))||(e>0?1:-1)*Math.ceil(Math.abs(e)*Math.pow(10,t))/Math.pow(10,t)},t.ROW=function(e,t){return 2!==arguments.length?d:t<0?u:e instanceof Array&&"number"==typeof t?0!==e.length?o.row(e,t):void 0:s},t.ROWS=function(e){return 1!==arguments.length?d:e instanceof Array?0===e.length?0:o.rows(e):s},t.RRI=function(e,t,n){return M(e=S(e),t=S(t),n=S(n))?s:0===e||0===t?u:Math.pow(n/t,1/e)-1},t.RSQ=function(e,t){return M(e=N(v(e)),t=N(v(t)))?s:Math.pow(_e(e,t),2)},t.SEARCH=function(e,t,n){let o;return"string"!=typeof e||"string"!=typeof t?s:(n=void 0===n?0:n,o=t.toLowerCase().indexOf(e.toLowerCase(),n-1)+1,0===o?s:o)},t.SEC=function(e){return(e=S(e))instanceof Error?e:1/Math.cos(e)},t.SECH=function(e){return(e=S(e))instanceof Error?e:2/(Math.exp(e)+Math.exp(-e))},t.SECOND=function(e){return(e=D(e))instanceof Error?e:e.getSeconds()},t.SERIESSUM=function(e,t,n,o){if(M(e=S(e),t=S(t),n=S(n),o=N(o)))return s;let r=o[0]*Math.pow(e,t);for(let i=1;ie.sort((e,o)=>(e=O(e[t-1]),o=O(o[t-1]),1===n?eo?n:-1*n)),i=j(e),a=o?C(i):i;return t>=1&&t<=a[0].length?o?C(r(a)):r(a):s},t.SQRT=function(e){return(e=S(e))instanceof Error?e:e<0?u:Math.sqrt(e)},t.SQRTPI=function(e){return(e=S(e))instanceof Error?e:Math.sqrt(e*Math.PI)},t.STANDARDIZE=function(e,t,n){return M(e=S(e),t=S(t),n=S(n))?s:(e-t)/n},t.STDEV=Ne,t.STDEVA=function(){const e=Re.apply(this,arguments);return Math.sqrt(e)},t.STDEVP=Ln,t.STDEVPA=function(){const e=Pe.apply(this,arguments);let t=Math.sqrt(e);return isNaN(t)&&(t=u),t},t.STDEVS=Dn,t.STEYX=function(e,t){if(M(e=N(v(e)),t=N(v(t))))return s;const n=o.mean(t),r=o.mean(e),i=t.length;let a=0,l=0,c=0;for(let o=0;o-1&&e.indexOf(t,r)>-1;)if(r=e.indexOf(t,r+1),i++,r>-1&&i===o)return e.substring(0,r)+n+e.substring(r+t.length);return e}}return e},t.SUBTOTAL=function(e,t){if((e=S(e))instanceof Error)return e;switch(e){case 1:case 101:return ee(t);case 2:case 102:return ae(t);case 3:case 103:return se(t);case 4:case 104:return ve(t);case 5:case 105:return xe(t);case 6:case 106:return Ke(t);case 7:case 107:return Ne.S(t);case 8:case 108:return Ne.P(t);case 9:case 109:return Ge(t);case 10:case 110:return ke.S(t);case 11:case 111:return ke.P(t)}},t.SUM=Ge,t.SUMIF=function(e,t,n){if(e=v(e),n=n?v(n):e,e instanceof Error)return e;if(null==t||t instanceof Error)return 0;let o=0;const r="*"===t,i=r?null:W(t+"");for(let t=0;t0){const t=arguments[0],n=arguments.length-1,o=Math.floor(n/2);let r=!1;const i=n%2!=0,a=n%2==0?null:arguments[arguments.length-1];if(o)for(let n=0;nn?u:(e-t)*(n-(o=parseInt(o,10))+1)*2/(n*(n+1))},t.T=function(e){return e instanceof Error||"string"==typeof e?e:""},t.TAN=function(e){return(e=S(e))instanceof Error?e:Math.tan(e)},t.TANH=function(e){if((e=S(e))instanceof Error)return e;const t=Math.exp(2*e);return(t-1)/(t+1)},t.TBILLEQ=function(e,t,n){return M(e=D(e),t=D(t),n=S(n))?s:n<=0||e>t||t-e>31536e6?u:365*n/(360-n*rt(e,t,!1))},t.TBILLPRICE=function(e,t,n){return M(e=D(e),t=D(t),n=S(n))?s:n<=0||e>t||t-e>31536e6?u:100*(1-n*rt(e,t,!1)/360)},t.TBILLYIELD=function(e,t,n){return M(e=D(e),t=D(t),n=S(n))?s:n<=0||e>t||t-e>31536e6?u:360*(100-n)/(n*rt(e,t,!1))},t.TDIST=In,t.TDISTRT=Sn,t.TEXT=function(e,t){if(void 0===e||e instanceof Error||t instanceof Error)return d;if(null==t)return"";if("number"==typeof t)return String(t);if("string"!=typeof t)return s;const n=t.startsWith("$")?"$":"",o=t.endsWith("%");return o&&(e*=100),e=(e=gt(e,(t=t.replace(/%/g,"").replace(/\$/g,"")).split(".")[1].match(/0/g).length,!t.includes(","))).startsWith("-")?"-"+n+(e=e.replace("-","")):n+e,o&&(e+="%"),e},t.TEXTJOIN=function(e,t,...n){if("boolean"!=typeof t&&(t=L(t)),arguments.length<3)return d;e=null!=e?e:"";let o=v(n),r=t?o.filter(e=>e):o;if(Array.isArray(e)){e=v(e);let t=r.map(e=>[e]),n=0;for(let o=0;o{a.push(r*e+i)}),a},t.TRIM=function(e){return(e=O(e))instanceof Error?e:e.replace(/\s+/g," ").trim()},t.TRIMMEAN=function(e,t){if(M(e=N(v(e)),t=S(t)))return s;const n=We(e.length*t,2)/2;return o.mean((i=(i=n)||1,(r=w(e.sort((e,t)=>e-t),n))&&"function"==typeof r.slice?r.slice(0,r.length-i):r));var r,i},t.TRUE=function(){return!0},t.TRUNC=function(e,t){return _(e=S(e),t=S(t))||(e>0?1:-1)*Math.floor(Math.abs(e)*Math.pow(10,t))/Math.pow(10,t)},t.TTEST=On,t.TYPE=function(e){return J(e)?1:$(e)?2:G(e)?4:X(e)?16:Array.isArray(e)?64:void 0},t.UNICHAR=jt,t.UNICODE=vt,t.UNIQUE=Q,t.UPPER=function(e){return(e=O(e))instanceof Error?e:e.toUpperCase()},t.VALUE=function(e){const t=_(e);if(t)return t;if("number"==typeof e)return e;if(R(e)||(e=""),"string"!=typeof e)return s;const n=/(%)$/.test(e)||/^(%)/.test(e);if(""===(e=(e=(e=e.replace(/^[^0-9-]{0,3}/,"")).replace(/[^0-9]{0,3}$/,"")).replace(/[ ,]/g,"")))return 0;let o=Number(e);return isNaN(o)?s:(o=o||0,n&&(o*=.01),o)},t.VAR=ke,t.VARA=Re,t.VARP=kn,t.VARPA=Pe,t.VARS=Rn,t.VDB=function(){throw new Error("VDB is not implemented")},t.VLOOKUP=Z,t.WEEKDAY=function(e,t){if((e=D(e))instanceof Error)return e;void 0===t&&(t=1);const n=e.getDay();return Ze[t][n]},t.WEEKNUM=function(e,t){if((e=D(e))instanceof Error)return e;if(void 0===t&&(t=1),21===t)return it(e);const n=Qe[t];let o=new Date(e.getFullYear(),0,1);const r=o.getDay(){const o=n+1;let r=e[0];for(let n=1;n{const o=n+1;let r=0;for(let n=1;n0&&(i=!0),e[t]<0&&(a=!0);if(!i||!a)return u;let l,c,d,f=n=n||.1,p=!0;do{d=o(e,t,f),l=f-d/r(e,t,f),c=Math.abs(l-f),f=l,p=c>1e-10&&Math.abs(d)>1e-10}while(p);return f},t.XNPV=function(e,t,n){if(M(e=S(e),t=N(v(t)),n=I(v(n))))return s;let o=0;for(let r=0;re&&(e=t.length)}obj.options.minDimensions[0]>e&&(e=obj.options.minDimensions[0]);for(var n=[],o=0;o0&&obj.options.paginationOptions&&obj.options.paginationOptions.length>0){obj.paginationDropdown=document.createElement("select"),obj.paginationDropdown.classList.add("jexcel_pagination_dropdown"),obj.paginationDropdown.onchange=function(){obj.options.pagination=parseInt(this.value),obj.page(0)};for(var o=0;o0)if(obj.options.nestedHeaders[0]&&obj.options.nestedHeaders[0][0])for(var s=0;sr?a:r,c=s>i?s:i;for(t=0;t=u&&t0&&r++}return n},obj.getJsonRow=function(e){for(var t=obj.options.data[e],n=obj.options.columns.length,o={},r=0;r200)&&(o.style.whiteSpace="pre-wrap"),e>0&&1==this.options.textOverflow&&(n||o.innerHTML?obj.records[t][e-1].style.overflow="hidden":e==obj.options.columns.length-1&&(o.style.overflow="hidden")),o},obj.createCellHeader=function(e){var t=obj.options.columns[e].width?obj.options.columns[e].width:obj.options.defaultColWidth,n=obj.options.columns[e].align?obj.options.columns[e].align:obj.options.defaultColAlign;obj.headers[e]=document.createElement("td"),obj.options.stripHTML?obj.headers[e].textContent=obj.options.columns[e].title?obj.options.columns[e].title:jexcel.getColumnName(e):obj.headers[e].innerHTML=obj.options.columns[e].title?obj.options.columns[e].title:jexcel.getColumnName(e),obj.headers[e].setAttribute("data-x",e),obj.headers[e].style.textAlign=n,obj.options.columns[e].title&&obj.headers[e].setAttribute("title",obj.headers[e].innerText),obj.options.columns[e].id&&obj.headers[e].setAttribute("id",obj.options.columns[e].id),obj.colgroup[e]=document.createElement("col"),obj.colgroup[e].setAttribute("width",t),"hidden"==obj.options.columns[e].type&&(obj.headers[e].style.display="none",obj.colgroup[e].style.display="none")},obj.updateNestedHeader=function(e,t,n){obj.options.nestedHeaders[t][e].title&&(obj.options.nestedHeaders[t][e].title=n,obj.options.nestedHeaders[t].element.children[e+1].textContent=n)},obj.createNestedHeader=function(e){var t=document.createElement("tr");t.classList.add("jexcel_nested");var n=document.createElement("td");t.appendChild(n),e.element=t;for(var o=0,r=0;r1?obj.records[c[1]][c[0]].setAttribute("colspan",t):t=1,n>1?obj.records[c[1]][c[0]].setAttribute("rowspan",n):n=1,obj.options.mergeCells[e]=[t,n,[]],obj.records[c[1]][c[0]].setAttribute("data-merged","true"),obj.records[c[1]][c[0]].style.overflow="hidden";for(var f=[],p=c[1];p0||s>0)&&(obj.records[o[1]+a][o[0]+s]=r[2][i],obj.records[o[1]+a][o[0]+s].style.display="",t&&t[i]&&obj.updateCell(o[0]+s,o[1]+a,t[i]),i++);obj.updateSelection(obj.records[o[1]][o[0]],obj.records[o[1]+a-1][o[0]+s-1]),n||delete obj.options.mergeCells[e]}},obj.destroyMerged=function(e){if(obj.options.mergeCells){obj.options.mergeCells;for(var t=Object.keys(obj.options.mergeCells),n=0;n1?a-1:0);null==t?s<=e&&l>=e&&n.push(o[r]):t?s=e&&n.push(o[r]):s<=e&&l>e&&n.push(o[r])}return n},obj.isRowMerged=function(e,t){var n=[];if(obj.options.mergeCells)for(var o=Object.keys(obj.options.mergeCells),r=0;r1?a-1:0);null==t?s<=e&&l>=e&&n.push(o[r]):t?s=e&&n.push(o[r]):s<=e&&l>e&&n.push(o[r])}return n},obj.openFilter=function(e){if(obj.options.filters){e=parseInt(e),obj.resetSelection();var t=[];if("checkbox"==obj.options.columns[e].type)t.push({id:"true",name:"True"}),t.push({id:"false",name:"False"});else{for(var n=[],o=!1,r=0;r0&&(obj.records[o][r-1].style.overflow="hidden");var i=function(t){var n=e.getBoundingClientRect(),i=document.createElement(t);return i.style.width=n.width+"px",i.style.height=n.height-2+"px",i.style.minHeight=n.height-2+"px",e.classList.add("editor"),e.innerHTML="",e.appendChild(i),obj.dispatch("oncreateeditor",el,e,r,o,i),i};if(1==e.classList.contains("readonly"));else if(obj.edition=[obj.records[o][r],obj.records[o][r].innerHTML,r,o],obj.options.columns[r].editor)obj.options.columns[r].editor.openEditor(e,el,t,n);else if("hidden"==obj.options.columns[r].type);else if("checkbox"==obj.options.columns[r].type||"radio"==obj.options.columns[r].type){var a=!e.children[0].checked;obj.setValue(e,a),obj.edition=null}else if("dropdown"==obj.options.columns[r].type||"autocomplete"==obj.options.columns[r].type){if(a=obj.options.data[o][r],obj.options.columns[r].multiple&&!Array.isArray(a)&&(a=a.split(";")),"function"==typeof obj.options.columns[r].filter)var s=obj.options.columns[r].filter(el,e,r,o,obj.options.columns[r].source);else s=obj.options.columns[r].source;for(var l=[],c=0;c0)for(var s=0;s200)?obj.records[t][e].style.whiteSpace="pre-wrap":obj.records[t][e].style.whiteSpace="";e>0&&(obj.records[t][e-1].style.overflow=n?"hidden":""),obj.dispatch("onchange",el,obj.records[t]&&obj.records[t][e]?obj.records[t][e]:null,e,t,n,u.oldValue)}else var u={x:e,y:t,col:e,row:t};return u},obj.copyData=function(e,t){var n=obj.getData(!0,!0),o=obj.selectedContainer,r=parseInt(e.getAttribute("data-x")),i=parseInt(e.getAttribute("data-y")),a=parseInt(t.getAttribute("data-x")),s=parseInt(t.getAttribute("data-y")),l=[],c=!1;if(o[0]==r){if(i=obj.selectedCell[1]&&t<=obj.selectedCell[3]||n>=obj.selectedCell[1]&&n<=obj.selectedCell[3]))return void obj.resetSelection()}else if(obj.selectedCell&&(t>=obj.selectedCell[0]&&t<=obj.selectedCell[2]||n>=obj.selectedCell[0]&&n<=obj.selectedCell[2]))return void obj.resetSelection()},obj.resetSelection=function(e){if(obj.highlighted.length){c=1;for(var t=0;t0?n+(r-1):n,s=i>0?o+(i-1):o;else a=n,s=o;for(var l=n;l<=a;l++)obj.headers[l]&&obj.headers[l].classList.remove("selected");for(l=o;l<=s;l++)obj.rows[l]&&obj.rows[l].classList.remove("selected")}}else var c=0;return obj.highlighted=[],obj.selectedCell=null,obj.corner.style.top="-2000px",obj.corner.style.left="-2000px",1==e&&1==c&&obj.dispatch("onblur",el),c},obj.updateSelection=function(e,t,n){var o=e.getAttribute("data-x"),r=e.getAttribute("data-y");if(t)var i=t.getAttribute("data-x"),a=t.getAttribute("data-y");else i=o,a=r;obj.updateSelectionFromCoords(o,r,i,a,n)},obj.updateSelectionFromCoords=function(e,t,n,o,r){var i=obj.resetSelection();if(null==t&&(t=0,o=obj.rows.length-1),null==n&&(n=e),null==o&&(o=t),e>=obj.headers.length&&(e=obj.headers.length-1),t>=obj.rows.length&&(t=obj.rows.length-1),n>=obj.headers.length&&(n=obj.headers.length-1),o>=obj.rows.length&&(o=obj.rows.length-1),obj.selectedCell=[e,t,n,o],null!=e){if(obj.records[t][e]&&obj.records[t][e].classList.add("highlight-selected"),parseInt(e)1&&(fs&&(s=f+h-1)),m&&(pc&&(c=p+m-1))}var g=null,b=null,j=null,v=null;for(d=l;d<=c;d++)"none"!=obj.rows[d].style.display&&(null==j&&(j=d),v=d);for(u=a;u<=s;u++){for(d=l;d<=c;d++)"none"!=obj.rows[d].style.display&&"none"!=obj.records[d][u].style.display&&(obj.records[d][u].classList.add("highlight"),obj.highlighted.push(obj.records[d][u]));"hidden"!=obj.options.columns[u].type&&(null==g&&(g=u),b=u)}for(g||(g=0),b||(b=0),u=g;u<=b;u++)"hidden"!=obj.options.columns[u].type&&(obj.records[j]&&obj.records[j][u]&&obj.records[j][u].classList.add("highlight-top"),obj.records[v]&&obj.records[v][u]&&obj.records[v][u].classList.add("highlight-bottom"),obj.headers[u].classList.add("selected"));for(d=j;d<=v;d++)obj.rows[d]&&"none"!=obj.rows[d].style.display&&(obj.records[d][g].classList.add("highlight-left"),obj.records[d][b].classList.add("highlight-right"),obj.rows[d].classList.add("selected"));obj.selectedContainer=[g,j,b,v]}0==i&&(obj.dispatch("onfocus",el),obj.removeCopyingSelection()),obj.dispatch("onselection",el,g,j,b,v,r),obj.updateCornerPosition()},obj.removeCopySelection=function(){for(var e=0;e0)var a=parseInt(r)+1,s=parseInt(e);else a=parseInt(e),s=parseInt(n)-1;if(t-i>0)var l=parseInt(i)+1,c=parseInt(t);else l=parseInt(t),c=parseInt(o)-1;s-a<=c-l?(a=parseInt(n),s=parseInt(r)):(l=parseInt(o),c=parseInt(i));for(var u=l;u<=c;u++)for(var d=a;d<=s;d++)obj.records[u][d]&&"none"!=obj.rows[u].style.display&&"none"!=obj.records[u][d].style.display&&(obj.records[u][d].classList.add("selection"),obj.records[l][d].classList.add("selection-top"),obj.records[c][d].classList.add("selection-bottom"),obj.records[u][a].classList.add("selection-left"),obj.records[u][s].classList.add("selection-right"),obj.selection.push(obj.records[u][d]))}},obj.updateCornerPosition=function(){if(obj.highlighted.length){var e=obj.highlighted[obj.highlighted.length-1],t=e.getAttribute("data-x"),n=obj.content.getBoundingClientRect(),o=n.left,r=n.top,i=e.getBoundingClientRect(),a=i.left,s=i.top,l=i.width,c=i.height,u=a-o+obj.content.scrollLeft+l-4,d=s-r+obj.content.scrollTop+c-4;if(obj.corner.style.top=d+"px",obj.corner.style.left=u+"px",obj.options.freezeColumns){var f=obj.getFreezeWidth();t>obj.options.freezeColumns-1&&a-o+lobj.content.scrollTop+30&&fobj.content.scrollLeft+p&&d0&&("object"==typeof e&&(e=e.getAttribute("data-y")),n||(n=obj.rows[e].getAttribute("height"))||(n=obj.rows[e].getBoundingClientRect().height),t=parseInt(t),obj.rows[e].style.height=t+"px",obj.options.rows[e]||(obj.options.rows[e]={}),obj.options.rows[e].height=t,obj.setHistory({action:"setHeight",row:e,oldValue:n,newValue:t}),obj.dispatch("onresizerow",el,e,t,n),obj.updateCornerPosition())},obj.getHeight=function(e){if(void 0===e)for(var t=[],n=0;n=0){if(Object.keys(obj.options.mergeCells).length>0){if(!confirm(obj.options.text.thisActionWillDestroyAnyExistingMergedCellsAreYouSure))return!1;obj.destroyMerged()}t=null==t?obj.headers[e].classList.contains("arrow-down")?1:0:t?1:0;var n=[];if("number"==obj.options.columns[e].type||"numeric"==obj.options.columns[e].type||"percentage"==obj.options.columns[e].type||"autonumber"==obj.options.columns[e].type||"color"==obj.options.columns[e].type)for(var o=0;or?-1:or?1:o0)obj.page(0);else if(1==obj.options.lazyLoading)obj.loadPage(0);else for(n=0;n0){if(e>t)var o=1;else o=0;if(obj.isRowMerged(e).length||obj.isRowMerged(t,o).length){if(!confirm(obj.options.text.thisActionWillDestroyAnyExistingMergedCellsAreYouSure))return!1;obj.destroyMerged()}}if(1==obj.options.search){if(obj.results&&obj.results.length!=obj.rows.length){if(!confirm(obj.options.text.thisActionWillClearYourSearchResultsAreYouSure))return!1;obj.resetSearch()}obj.results=null}n||(Array.prototype.indexOf.call(obj.tbody.children,obj.rows[t])>=0?e>t?obj.tbody.insertBefore(obj.rows[e],obj.rows[t]):obj.tbody.insertBefore(obj.rows[e],obj.rows[t].nextSibling):obj.tbody.removeChild(obj.rows[e])),obj.rows.splice(t,0,obj.rows.splice(e,1)[0]),obj.records.splice(t,0,obj.records.splice(e,1)[0]),obj.options.data.splice(t,0,obj.options.data.splice(e,1)[0]),obj.options.pagination>0&&obj.tbody.children.length!=obj.options.pagination&&obj.page(obj.pageNumber),obj.setHistory({action:"moveRow",oldValue:e,newValue:t}),obj.updateTableReferences(),obj.dispatch("onmoverow",el,e,t)},obj.insertRow=function(e,t,n){if(1==obj.options.allowInsertRow){var o=[];if(e>0)var r=e;else r=1,e&&(o=e);n=!!n;var i=obj.options.data.length-1;if((null==t||t>=parseInt(i)||t<0)&&(t=i),!1===obj.dispatch("onbeforeinsertrow",el,t,r,n))return!1;if(Object.keys(obj.options.mergeCells).length>0&&obj.isRowMerged(t,n).length){if(!confirm(obj.options.text.thisActionWillDestroyAnyExistingMergedCellsAreYouSure))return!1;obj.destroyMerged()}if(1==obj.options.search){if(obj.results&&obj.results.length!=obj.rows.length){if(!confirm(obj.options.text.thisActionWillClearYourSearchResultsAreYouSure))return!1;obj.resetSearch()}obj.results=null}for(var a=n?t:t+1,s=obj.records.splice(a),l=obj.options.data.splice(a),c=obj.rows.splice(a),u=[],d=[],f=[],p=a;p=0&&obj.tbody.insertBefore(m,c[0]):Array.prototype.indexOf.call(obj.tbody.children,obj.rows[t])>=0&&obj.tbody.appendChild(m),u.push(obj.records[p]),d.push(obj.options.data[p]),f.push(m)}Array.prototype.push.apply(obj.records,s),Array.prototype.push.apply(obj.options.data,l),Array.prototype.push.apply(obj.rows,c),obj.options.pagination>0&&obj.page(obj.pageNumber),obj.setHistory({action:"insertRow",rowNumber:t,numOfRows:r,insertBefore:n,rowRecords:u,rowData:d,rowNode:f}),obj.updateTableReferences(),obj.dispatch("oninsertrow",el,t,r,u,n)}},obj.deleteRow=function(e,t){if(1==obj.options.allowDeleteRow)if(1==obj.options.allowDeletingAllRows||obj.options.data.length>1){if(null==e){var n=obj.getSelectedRows();n[0]?(e=parseInt(n[0].getAttribute("data-y")),t=n.length):(e=obj.options.data.length-1,t=1)}var o=obj.options.data.length-1;if((null==e||e>o||e<0)&&(e=o),t||(t=1),e+t>=obj.options.data.length&&(t=obj.options.data.length-e),!1===obj.dispatch("onbeforedeleterow",el,e,t))return!1;if(parseInt(e)>-1){var r=!1;if(Object.keys(obj.options.mergeCells).length>0)for(var i=e;i=0&&(obj.rows[i].className="",obj.rows[i].parentNode.removeChild(obj.rows[i]));var a=obj.records.splice(e,t),s=obj.options.data.splice(e,t),l=obj.rows.splice(e,t);obj.options.pagination>0&&obj.tbody.children.length!=obj.options.pagination&&obj.page(obj.pageNumber),obj.conditionalSelectionUpdate(1,e,e+t-1),obj.setHistory({action:"deleteRow",rowNumber:e,numOfRows:t,insertBefore:1,rowRecords:a,rowData:s,rowNode:l}),obj.updateTableReferences(),obj.dispatch("ondeleterow",el,e,t,a)}}else console.error("Jspreadsheet: It is not possible to delete the last row")},obj.moveColumn=function(e,t){if(Object.keys(obj.options.mergeCells).length>0){if(e>t)var n=1;else n=0;if(obj.isColMerged(e).length||obj.isColMerged(t,n).length){if(!confirm(obj.options.text.thisActionWillDestroyAnyExistingMergedCellsAreYouSure))return!1;obj.destroyMerged()}}if((e=parseInt(e))>(t=parseInt(t))){obj.headerContainer.insertBefore(obj.headers[e],obj.headers[t]),obj.colgroupContainer.insertBefore(obj.colgroup[e],obj.colgroup[t]);for(var o=0;o0)var i=e;else i=1,e&&(r=e);n=!!n;var a=obj.options.columns.length-1;if((null==t||t>=parseInt(a)||t<0)&&(t=a),!1===obj.dispatch("onbeforeinsertcolumn",el,t,i,n))return!1;if(Object.keys(obj.options.mergeCells).length>0&&obj.isColMerged(t,n).length){if(!confirm(obj.options.text.thisActionWillDestroyAnyExistingMergedCellsAreYouSure))return!1;obj.destroyMerged()}o||(o=[]);for(var s=0;s0)if(obj.options.nestedHeaders[0]&&obj.options.nestedHeaders[0][0])for(b=0;b1){if(null==e){var n=obj.getSelectedColumns(!0);n.length?(e=parseInt(n[0]),t=parseInt(n.length)):(e=obj.headers.length-1,t=1)}var o=obj.options.data[0].length-1;if((null==e||e>o||e<0)&&(e=o),t||(t=1),t>obj.options.data[0].length-e&&(t=obj.options.data[0].length-e),!1===obj.dispatch("onbeforedeletecolumn",el,e,t))return!1;if(parseInt(e)>-1){var r=!1;if(Object.keys(obj.options.mergeCells).length>0)for(var i=e;i0)if(obj.options.nestedHeaders[0]&&obj.options.nestedHeaders[0][0])for(var p=0;p0){for(var e=0,t=obj.rows.length-1;t>=0;t--){for(var n=!1,o=0;o0&&obj.insertRow(obj.options.minSpareRows-e)}if(obj.options.minSpareCols>0){var r=0;for(o=obj.headers.length-1;o>=0;o--){for(n=!1,t=0;t0&&obj.insertColumn(obj.options.minSpareCols-r)}if("function"==typeof obj.options.updateTable){for(obj.options.detachForUpdates&&el.removeChild(obj.content),t=0;te+1&&(obj.filter.children[e+1].style.display="");for(var t=0;te+1&&(obj.filter.children[e+1].style.display="none");for(var t=0;t0)if(chainLoopProtection[o])obj.records[t][e].innerHTML="#ERROR",obj.formula[o]="";else{chainLoopProtection[o]=!0;for(var r=0;r-1)return console.error("Self Reference detected"),"#ERROR";var formulaExpressions={};if(tokens)for(var i=0;i0&&obj.up.visible(1,t?0:1):(obj.selectedCell[1]>0&&obj.up.visible(0,t?0:1),obj.selectedCell[2]=obj.selectedCell[0],obj.selectedCell[3]=obj.selectedCell[1]),obj.updateSelectionFromCoords(obj.selectedCell[0],obj.selectedCell[1],obj.selectedCell[2],obj.selectedCell[3]),1==obj.options.lazyLoading)if(0==obj.selectedCell[1]||0==obj.selectedCell[3])obj.loadPage(0),obj.updateSelectionFromCoords(obj.selectedCell[0],obj.selectedCell[1],obj.selectedCell[2],obj.selectedCell[3]);else if(obj.loadValidation())obj.updateSelectionFromCoords(obj.selectedCell[0],obj.selectedCell[1],obj.selectedCell[2],obj.selectedCell[3]);else{var n=parseInt(obj.tbody.firstChild.getAttribute("data-y"));obj.selectedCell[1]-n<30&&(obj.loadUp(),obj.updateSelectionFromCoords(obj.selectedCell[0],obj.selectedCell[1],obj.selectedCell[2],obj.selectedCell[3]))}else if(obj.options.pagination>0){var o=obj.whichPage(obj.selectedCell[3]);o!=obj.pageNumber&&obj.page(o)}obj.updateScroll(1)},obj.up.visible=function(e,t){if(0==e)var n=parseInt(obj.selectedCell[0]),o=parseInt(obj.selectedCell[1]);else n=parseInt(obj.selectedCell[2]),o=parseInt(obj.selectedCell[3]);if(0==t){for(var r=0;r=0;n--)if("none"!=obj.records[n][e].style.display&&"none"!=obj.rows[n].style.display){if(obj.records[n][e].getAttribute("data-merged")&&obj.records[n][e]==obj.records[t][e])continue;t=n;break}return t},obj.down=function(e,t){if(e?obj.selectedCell[3]0){var n=obj.whichPage(obj.selectedCell[3]);n!=obj.pageNumber&&obj.page(n)}obj.updateScroll(3)},obj.down.visible=function(e,t){if(0==e)var n=parseInt(obj.selectedCell[0]),o=parseInt(obj.selectedCell[1]);else n=parseInt(obj.selectedCell[2]),o=parseInt(obj.selectedCell[3]);if(0==t){for(var r=obj.rows.length-1;r>o;r--)if("none"!=obj.records[r][n].style.display&&"none"!=obj.rows[r].style.display){o=r;break}}else o=obj.down.get(n,o);0==e?(obj.selectedCell[0]=n,obj.selectedCell[1]=o):(obj.selectedCell[2]=n,obj.selectedCell[3]=o)},obj.down.get=function(e,t){e=parseInt(e);for(var n=(t=parseInt(t))+1;nn;r--)if("none"!=obj.records[o][r].style.display){n=r;break}}else n=obj.right.get(n,o);0==e?(obj.selectedCell[0]=n,obj.selectedCell[1]=o):(obj.selectedCell[2]=n,obj.selectedCell[3]=o)},obj.right.get=function(e,t){e=parseInt(e),t=parseInt(t);for(var n=e+1;n0&&obj.left.visible(1,t?0:1):(obj.selectedCell[0]>0&&obj.left.visible(0,t?0:1),obj.selectedCell[2]=obj.selectedCell[0],obj.selectedCell[3]=obj.selectedCell[1]),obj.updateSelectionFromCoords(obj.selectedCell[0],obj.selectedCell[1],obj.selectedCell[2],obj.selectedCell[3]),obj.updateScroll(0)},obj.left.visible=function(e,t){if(0==e)var n=parseInt(obj.selectedCell[0]),o=parseInt(obj.selectedCell[1]);else n=parseInt(obj.selectedCell[2]),o=parseInt(obj.selectedCell[3]);if(0==t){for(var r=0;r=0;n--)if("none"!=obj.records[t][n].style.display){if(obj.records[t][n].getAttribute("data-merged")&&obj.records[t][n]==obj.records[t][e])continue;e=n;break}return e},obj.first=function(e,t){if(e?t?obj.selectedCell[3]=0:obj.left.visible(1,0):(t?obj.selectedCell[1]=0:obj.left.visible(0,0),obj.selectedCell[2]=obj.selectedCell[0],obj.selectedCell[3]=obj.selectedCell[1]),1!=obj.options.lazyLoading||0!=obj.selectedCell[1]&&0!=obj.selectedCell[3]){if(obj.options.pagination>0){var n=obj.whichPage(obj.selectedCell[3]);n!=obj.pageNumber&&obj.page(n)}}else obj.loadPage(0);obj.updateSelectionFromCoords(obj.selectedCell[0],obj.selectedCell[1],obj.selectedCell[2],obj.selectedCell[3]),obj.updateScroll(1)},obj.last=function(e,t){if(e?t?obj.selectedCell[3]=obj.records.length-1:obj.right.visible(1,0):(t?obj.selectedCell[1]=obj.records.length-1:obj.right.visible(0,0),obj.selectedCell[2]=obj.selectedCell[0],obj.selectedCell[3]=obj.selectedCell[1]),1!=obj.options.lazyLoading||obj.selectedCell[1]!=obj.records.length-1&&obj.selectedCell[3]!=obj.records.length-1){if(obj.options.pagination>0){var n=obj.whichPage(obj.selectedCell[3]);n!=obj.pageNumber&&obj.page(n)}}else obj.loadPage(-1);obj.updateSelectionFromCoords(obj.selectedCell[0],obj.selectedCell[1],obj.selectedCell[2],obj.selectedCell[3]),obj.updateScroll(3)},obj.selectAll=function(){obj.selectedCell||(obj.selectedCell=[]),obj.selectedCell[0]=0,obj.selectedCell[1]=0,obj.selectedCell[2]=obj.headers.length-1,obj.selectedCell[3]=obj.records.length-1,obj.updateSelectionFromCoords(obj.selectedCell[0],obj.selectedCell[1],obj.selectedCell[2],obj.selectedCell[3])},obj.loadPage=function(e){if(1!=obj.options.search&&1!=obj.options.filters||!obj.results)t=obj.rows;else var t=obj.results;var n=100;null!=e&&-1!=e||(e=Math.ceil(t.length/n)-1);var o=e*n,r=e*n+n;r>t.length&&(r=t.length),(o=r-100)<0&&(o=0);for(var i=o;in&&obj.tbody.removeChild(obj.tbody.firstChild)},obj.loadUp=function(){if(1!=obj.options.search&&1!=obj.options.filters||!obj.results)e=obj.rows;else var e=obj.results;var t=0;if(e.length>100){var n=parseInt(obj.tbody.firstChild.getAttribute("data-y"));if(1!=obj.options.search&&1!=obj.options.filters||!obj.results||(n=e.indexOf(n)),n>0)for(var o=0;o<30;o++)(n-=1)>-1&&(1!=obj.options.search&&1!=obj.options.filters||!obj.results?obj.tbody.insertBefore(obj.rows[n],obj.tbody.firstChild):obj.tbody.insertBefore(obj.rows[e[n]],obj.tbody.firstChild),obj.tbody.children.length>100&&(obj.tbody.removeChild(obj.tbody.lastChild),t=1))}return t},obj.loadDown=function(){if(1!=obj.options.search&&1!=obj.options.filters||!obj.results)e=obj.rows;else var e=obj.results;var t=0;if(e.length>100){var n=parseInt(obj.tbody.lastChild.getAttribute("data-y"));if(1!=obj.options.search&&1!=obj.options.filters||!obj.results||(n=e.indexOf(n)),n100&&(obj.tbody.removeChild(obj.tbody.firstChild),t=1)),n+=1}return t},obj.loadValidation=function(){if(obj.selectedCell){var e=parseInt(obj.tbody.firstChild.getAttribute("data-y"))/100,t=parseInt(obj.selectedCell[3]/100),n=parseInt(obj.rows.length/100);if(e!=t&&t<=n&&!Array.prototype.indexOf.call(obj.tbody.children,obj.rows[obj.selectedCell[3]]))return obj.loadPage(t),!0}return!1},obj.resetSearch=function(){obj.searchInput.value="",obj.search(""),obj.results=null},obj.search=function(e){if(obj.options.filters&&obj.resetFilters(),obj.resetSelection(),obj.pageNumber=0,obj.results=[],e){var t=function(e){-1==obj.results.indexOf(e)&&obj.results.push(e)},n=e.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&");n=new RegExp(n,"i"),obj.options.data.forEach((function(e,o){if(function(e,t,n){for(var o=0;o=0||(""+obj.records[n][o].innerHTML).toLowerCase().search(t)>=0)return!0;return!1}(e,n,o)){var r=obj.isRowMerged(o);if(r.length)for(var i=0;i0?obj.options.pagination:obj.results?obj.results.length:obj.rows.length;obj.tbody.firstChild;)obj.tbody.removeChild(obj.tbody.firstChild);for(var n=0;n-1?(t0&&obj.updatePagination(),obj.updateCornerPosition(),e},obj.whichPage=function(e){return 1!=obj.options.search&&1!=obj.options.filters||!obj.results||(e=obj.results.indexOf(e)),Math.ceil((parseInt(e)+1)/parseInt(obj.options.pagination))-1},obj.page=function(e){var t=obj.pageNumber;if(1!=obj.options.search&&1!=obj.options.filters||!obj.results)n=obj.rows;else var n=obj.results;var o=parseInt(obj.options.pagination);null!=e&&-1!=e||(e=Math.ceil(n.length/o)-1),obj.pageNumber=e;var r=e*o,i=e*o+o;for(i>n.length&&(i=n.length),r<0&&(r=0);obj.tbody.firstChild;)obj.tbody.removeChild(obj.tbody.firstChild);for(var a=r;a0&&obj.updatePagination(),obj.updateCornerPosition(),obj.dispatch("onchangepage",el,e,t)},obj.updatePagination=function(){if(obj.pagination.children[0].innerHTML="",obj.pagination.children[1].innerHTML="",obj.options.pagination){if(1!=obj.options.search&&1!=obj.options.filters||!obj.results)e=obj.rows.length;else var e=obj.results.length;if(e){var t=Math.ceil(e/obj.options.pagination);if(obj.pageNumber<6)var n=1,o=t<10?t:10;else t-obj.pageNumber<5?(o=t,(n=t-9)<1&&(n=1)):(n=obj.pageNumber-4,o=obj.pageNumber+5);n>1&&((i=document.createElement("div")).className="jexcel_page",i.innerHTML="<",i.title=1,obj.pagination.children[1].appendChild(i));for(var r=n;r<=o;r++){var i;(i=document.createElement("div")).className="jexcel_page",i.innerHTML=r,obj.pagination.children[1].appendChild(i),obj.pageNumber==r-1&&i.classList.add("jexcel_page_selected")}o",i.title=t,obj.pagination.children[1].appendChild(i)),obj.pagination.children[0].innerHTML=function(e){var t=Array.prototype.slice.call(arguments,1);return e.replace(/{(\d+)}/g,(function(e,n){return void 0!==t[n]?t[n]:e}))}(obj.options.text.showingPage,obj.pageNumber+1,t)}else obj.pagination.children[0].innerHTML=obj.options.text.noRecordsFound}},obj.download=function(e){if(0==obj.options.allowExport)console.error("Export not allowed");else{var t="";t+=obj.copy(!1,obj.options.csvDelimiter,!0,e,!0);var n=new Blob(["\ufeff"+t],{type:"text/csv;charset=utf-8;"});if(window.navigator&&window.navigator.msSaveOrOpenBlob)window.navigator.msSaveOrOpenBlob(n,obj.options.csvFileName+".csv");else{var o=document.createElement("a"),r=URL.createObjectURL(n);o.href=r,o.setAttribute("download",obj.options.csvFileName+".csv"),document.body.appendChild(o),o.click(),o.parentNode.removeChild(o)}}},obj.setHistory=function(e){if(1!=obj.ignoreHistory){var t=++obj.historyIndex;obj.history=obj.history=obj.history.slice(0,t+1),obj.history[t]=e}},obj.copy=function(e,t,n,o,r){t||(t="\t");for(var i=new RegExp(t,"ig"),a=[],s=[],l=[],c=[],u=[],d=obj.options.data[0].length,f=obj.options.data.length,p="",h=!1,m="",g="",b=0,j=0,v=0,y=0,x=!0,w=0;w0)for(p=obj.options.nestedHeaders[0]&&obj.options.nestedHeaders[0][0]?obj.options.nestedHeaders:[obj.options.nestedHeaders],w=0;w=obj.headers.length-1){if(1!=obj.options.allowInsertColumn)break;obj.insertColumn()}f=obj.right.get(f,p)}}if(n[++s]){if(p>=obj.rows.length-1){if(1!=obj.options.allowInsertRow)break;obj.insertRow()}p=obj.down.get(e,p)}}obj.updateSelectionFromCoords(e,t,f,p),obj.setHistory({action:"setValue",records:l,selection:obj.selectedCell,newStyle:c,oldStyle:u}),obj.updateTable(),obj.dispatch("onpaste",el,n),obj.onafterchanges(el,l)}obj.removeCopyingSelection()},obj.removeCopyingSelection=function(){for(var e=document.querySelectorAll(".jexcel .copying"),t=0;t0&&obj.page(obj.pageNumber),obj.updateTableReferences()},obj.historyProcessColumn=function(e,t){var n=t.insertBefore?t.columnNumber:t.columnNumber+1;if(1==e){var o=t.numOfColumns;obj.options.columns.splice(n,o);for(var r=n;r0)if(obj.options.nestedHeaders[0]&&obj.options.nestedHeaders[0][0])for(i=0;i=0){var o=obj.history[obj.historyIndex--];if("insertRow"==o.action)obj.historyProcessRow(1,o);else if("deleteRow"==o.action)obj.historyProcessRow(0,o);else if("insertColumn"==o.action)obj.historyProcessColumn(1,o);else if("deleteColumn"==o.action)obj.historyProcessColumn(0,o);else if("moveRow"==o.action)obj.moveRow(o.newValue,o.oldValue);else if("moveColumn"==o.action)obj.moveColumn(o.newValue,o.oldValue);else if("setMerge"==o.action)obj.removeMerge(o.column,o.data);else if("setStyle"==o.action)obj.setStyle(o.oldValue,null,null,1);else if("setWidth"==o.action)obj.setWidth(o.column,o.oldValue);else if("setHeight"==o.action)obj.setHeight(o.row,o.oldValue);else if("setHeader"==o.action)obj.setHeader(o.column,o.oldValue);else if("setComments"==o.action)obj.setComments(o.column,o.oldValue[0],o.oldValue[1]);else if("orderBy"==o.action){for(var r=[],i=0;i0?n.join("; "):""},obj.parseCSV=function(e,t){9==(e=e.replace(/\r?\n$|\r$|\n$/g,"")).charCodeAt(e.length-1)&&(e+="\0"),t=t||",";for(var n=[],o=!1,r=0,i=0,a=0;a0)for(var n=t.shift(),o=0;o0&&obj.content.scrollLeft!=scrollLeft&&obj.updateFreezePosition(),1!=obj.options.lazyLoading&&1!=obj.options.tableOverflow||obj.edition&&"jdropdown"!=e.target.className.substr(0,9)&&obj.closeEditor(obj.edition[0],!0)},obj.wheelControls=function(e){1==obj.options.lazyLoading&&null==jexcel.timeControlLoading&&(jexcel.timeControlLoading=setTimeout((function(){obj.content.scrollTop+obj.content.clientHeight>=obj.content.scrollHeight-10?obj.loadDown()&&(obj.content.scrollTop+obj.content.clientHeight>obj.content.scrollHeight-10&&(obj.content.scrollTop=obj.content.scrollTop-obj.content.clientHeight),obj.updateCornerPosition()):obj.content.scrollTop<=obj.content.clientHeight&&obj.loadUp()&&(obj.content.scrollTop<10&&(obj.content.scrollTop=obj.content.scrollTop+obj.content.clientHeight),obj.updateCornerPosition()),jexcel.timeControlLoading=null}),100))},obj.getFreezeWidth=function(){var e=0;if(obj.options.freezeColumns>0)for(var t=0;t50)for(var t=0;t0&&"hidden"!==obj.options.columns[t-1].type&&(e+=parseInt(obj.options.columns[t-1].width)),obj.headers[t].classList.add("jexcel_freezed"),obj.headers[t].style.left=e+"px";for(var n=0;n0?obj.records[n][t-1].style.width:0)-51+"px";obj.records[n][t].classList.add("jexcel_freezed"),obj.records[n][t].style.left=o}}else for(t=0;t200)&&e.altKey){var t=jexcel.current.edition[0].children[0],n=jexcel.current.edition[0].children[0].value,o=t.selectionStart;n=n.slice(0,o)+"\n"+n.slice(o),t.value=n,t.focus(),t.selectionStart=o+1,t.selectionEnd=o+1}else jexcel.current.edition[0].children[0].blur();else 9==e.which&&(["calendar","html"].includes(jexcel.current.options.columns[jexcel.current.edition[2]].type)?jexcel.current.closeEditor(jexcel.current.edition[0],!0):jexcel.current.edition[0].children[0].blur());if(!jexcel.current.edition&&jexcel.current.selectedCell)if(37==e.which)jexcel.current.left(e.shiftKey,e.ctrlKey),e.preventDefault();else if(39==e.which)jexcel.current.right(e.shiftKey,e.ctrlKey),e.preventDefault();else if(38==e.which)jexcel.current.up(e.shiftKey,e.ctrlKey),e.preventDefault();else if(40==e.which)jexcel.current.down(e.shiftKey,e.ctrlKey),e.preventDefault();else if(36==e.which)jexcel.current.first(e.shiftKey,e.ctrlKey),e.preventDefault();else if(35==e.which)jexcel.current.last(e.shiftKey,e.ctrlKey),e.preventDefault();else if(46==e.which)1==jexcel.current.options.editable&&(jexcel.current.selectedRow?1==jexcel.current.options.allowDeleteRow&&confirm(jexcel.current.options.text.areYouSureToDeleteTheSelectedRows)&&jexcel.current.deleteRow():jexcel.current.selectedHeader?1==jexcel.current.options.allowDeleteColumn&&confirm(jexcel.current.options.text.areYouSureToDeleteTheSelectedColumns)&&jexcel.current.deleteColumn():jexcel.current.setValue(jexcel.current.highlighted,""));else if(13==e.which)e.shiftKey?jexcel.current.up():(1==jexcel.current.options.allowInsertRow&&1==jexcel.current.options.allowManualInsertRow&&jexcel.current.selectedCell[1]==jexcel.current.options.data.length-1&&jexcel.current.insertRow(),jexcel.current.down()),e.preventDefault();else if(9==e.which)e.shiftKey?jexcel.current.left():(1==jexcel.current.options.allowInsertColumn&&1==jexcel.current.options.allowManualInsertColumn&&jexcel.current.selectedCell[0]==jexcel.current.options.data[0].length-1&&jexcel.current.insertColumn(),jexcel.current.right()),e.preventDefault();else if(!e.ctrlKey&&!e.metaKey||e.shiftKey){if(jexcel.current.selectedCell&&1==jexcel.current.options.editable){var r=jexcel.current.selectedCell[1],i=jexcel.current.selectedCell[0];"readonly"!=jexcel.current.options.columns[i].type&&(32==e.keyCode?(e.preventDefault(),"checkbox"==jexcel.current.options.columns[i].type||"radio"==jexcel.current.options.columns[i].type?jexcel.current.setCheckRadioValue():jexcel.current.openEditor(jexcel.current.records[r][i],!0)):113==e.keyCode?jexcel.current.openEditor(jexcel.current.records[r][i],!1):(8==e.keyCode||e.keyCode>=48&&e.keyCode<=57||e.keyCode>=96&&e.keyCode<=111||e.keyCode>=187&&e.keyCode<=190||(String.fromCharCode(e.keyCode)==e.key||String.fromCharCode(e.keyCode).toLowerCase()==e.key.toLowerCase())&&jexcel.validLetter(String.fromCharCode(e.keyCode)))&&(jexcel.current.openEditor(jexcel.current.records[r][i],!0),"calendar"==jexcel.current.options.columns[i].type&&e.preventDefault()))}}else 65==e.which?(jexcel.current.selectAll(),e.preventDefault()):83==e.which?(jexcel.current.download(),e.preventDefault()):89==e.which?(jexcel.current.redo(),e.preventDefault()):90==e.which?(jexcel.current.undo(),e.preventDefault()):67==e.which?(jexcel.current.copy(!0),e.preventDefault()):88==e.which?(1==jexcel.current.options.editable?jexcel.cutControls():jexcel.copyControls(),e.preventDefault()):86==e.which&&jexcel.pasteControls();else e.target.classList.contains("jexcel_search")&&(jexcel.timeControl&&clearTimeout(jexcel.timeControl),jexcel.timeControl=setTimeout((function(){jexcel.current.search(e.target.value)}),200))}},jexcel.isMouseAction=!1,jexcel.mouseDownControls=function(e){if((e=e||window.event).buttons)var t=e.buttons;else t=e.button?e.button:e.which;var n=jexcel.getElement(e.target);if(n[0]?jexcel.current!=n[0].jexcel&&(jexcel.current&&(jexcel.current.edition&&jexcel.current.closeEditor(jexcel.current.edition[0],!0),jexcel.current.resetSelection()),jexcel.current=n[0].jexcel):jexcel.current&&(jexcel.current.edition&&jexcel.current.closeEditor(jexcel.current.edition[0],!0),jexcel.current.resetSelection(!0),jexcel.current=null),jexcel.current&&1==t){if(e.target.classList.contains("jexcel_selectall"))jexcel.current&&jexcel.current.selectAll();else if(e.target.classList.contains("jexcel_corner"))1==jexcel.current.options.editable&&(jexcel.current.selectedCorner=!0);else{if(1==n[1]){if(p=e.target.getAttribute("data-x")){var o=e.target.getBoundingClientRect();if(1==jexcel.current.options.columnResize&&o.width-e.offsetX<6){jexcel.current.resizing={mousePosition:e.pageX,column:p,width:o.width},jexcel.current.headers[p].classList.add("resizing");for(var r=0;r"==e.target.textContent?jexcel.current.page(e.target.getAttribute("title")-1):jexcel.current.page(e.target.textContent-1))}jexcel.current.edition?jexcel.isMouseAction=!1:jexcel.isMouseAction=!0}else jexcel.isMouseAction=!1},jexcel.mouseUpControls=function(e){if(jexcel.current)if(jexcel.current.resizing){if(jexcel.current.resizing.column){var t=jexcel.current.colgroup[jexcel.current.resizing.column].getAttribute("width"),n=jexcel.current.getSelectedColumns();if(n.length>1){for(var o=[],r=0;r0&&(jexcel.current.copyData(jexcel.current.selection[0],jexcel.current.selection[jexcel.current.selection.length-1]),jexcel.current.removeCopySelection()));jexcel.timeControl&&(clearTimeout(jexcel.timeControl),jexcel.timeControl=null),jexcel.isMouseAction=!1},jexcel.mouseMoveControls=function(e){if((e=e||window.event).buttons)var t=e.buttons;else t=e.button?e.button:e.which;if(t||(jexcel.isMouseAction=!1),jexcel.current)if(1==jexcel.isMouseAction){if(jexcel.current.resizing)if(jexcel.current.resizing.column){var n=e.pageX-jexcel.current.resizing.mousePosition;if(jexcel.current.resizing.width+n>0){var o=jexcel.current.resizing.width+n;jexcel.current.colgroup[jexcel.current.resizing.column].setAttribute("width",o),jexcel.current.updateCornerPosition()}}else{var r=e.pageY-jexcel.current.resizing.mousePosition;if(jexcel.current.resizing.height+r>0){var i=jexcel.current.resizing.height+r;jexcel.current.rows[jexcel.current.resizing.row].setAttribute("height",i),jexcel.current.updateCornerPosition()}}else if(jexcel.current.dragging)if(jexcel.current.dragging.column){var a=e.target.getAttribute("data-x");if(a)if(jexcel.current.isColMerged(a).length)console.error("Jspreadsheet: This column is part of a merged cell.");else{for(var s=0;se.offsetX?(jexcel.current.dragging.columne.offsetY?e.target.parentNode.nextSibling:e.target.parentNode;jexcel.current.dragging.element!=c&&(e.target.parentNode.parentNode.insertBefore(jexcel.current.dragging.element,c),jexcel.current.dragging.destination=Array.prototype.indexOf.call(jexcel.current.dragging.element.parentNode.children,jexcel.current.dragging.element))}}}else{var u=e.target.getAttribute("data-x"),d=e.target.getAttribute("data-y"),f=e.target.getBoundingClientRect();jexcel.current.cursor&&(jexcel.current.cursor.style.cursor="",jexcel.current.cursor=null),e.target.parentNode.parentNode&&e.target.parentNode.parentNode.className&&(e.target.parentNode.parentNode.classList.contains("resizable")&&(e.target&&u&&!d&&f.width-(e.clientX-f.left)<6?(jexcel.current.cursor=e.target,jexcel.current.cursor.style.cursor="col-resize"):e.target&&!u&&d&&f.height-(e.clientY-f.top)<6&&(jexcel.current.cursor=e.target,jexcel.current.cursor.style.cursor="row-resize")),e.target.parentNode.parentNode.classList.contains("draggable")&&(e.target&&!u&&d&&f.width-(e.clientX-f.left)<6||e.target&&u&&!d&&f.height-(e.clientY-f.top)<6)&&(jexcel.current.cursor=e.target,jexcel.current.cursor.style.cursor="move"))}},jexcel.mouseOverControls=function(e){if((e=e||window.event).buttons)var t=e.buttons;else t=e.button?e.button:e.which;if(t||(jexcel.isMouseAction=!1),jexcel.current&&1==jexcel.isMouseAction){var n=jexcel.getElement(e.target);if(n[0]){if(jexcel.current!=n[0].jexcel&&jexcel.current)return!1;var o=e.target.getAttribute("data-x"),r=e.target.getAttribute("data-y");if(jexcel.current.resizing||jexcel.current.dragging);else{if(1==n[1]&&jexcel.current.selectedHeader){o=e.target.getAttribute("data-x");var i=jexcel.current.selectedHeader,a=o;jexcel.current.updateSelectionFromCoords(i,0,a,jexcel.current.options.data.length-1)}2==n[1]&&(e.target.classList.contains("jexcel_row")?jexcel.current.selectedRow&&(i=jexcel.current.selectedRow,a=r,jexcel.current.updateSelectionFromCoords(0,i,jexcel.current.options.data[0].length-1,a)):jexcel.current.edition||o&&r&&(jexcel.current.selectedCorner?jexcel.current.updateCopySelection(o,r):jexcel.current.selectedCell&&jexcel.current.updateSelectionFromCoords(jexcel.current.selectedCell[0],jexcel.current.selectedCell[1],o,r)))}}}jexcel.timeControl&&(clearTimeout(jexcel.timeControl),jexcel.timeControl=null)},jexcel.doubleClickControls=function(e){if(jexcel.current)if(e.target.classList.contains("jexcel_corner")){if(jexcel.current.highlighted.length>0){var t=jexcel.current.highlighted[0].getAttribute("data-x"),n=parseInt(jexcel.current.highlighted[jexcel.current.highlighted.length-1].getAttribute("data-y"))+1,o=jexcel.current.highlighted[jexcel.current.highlighted.length-1].getAttribute("data-x"),r=jexcel.current.records.length-1;jexcel.current.copyData(jexcel.current.records[n][t],jexcel.current.records[r][o])}}else if(e.target.classList.contains("jexcel_column_filter")){var i=e.target.getAttribute("data-x");jexcel.current.openFilter(i)}else{var a=jexcel.getElement(e.target);if(1==a[1]&&1==jexcel.current.options.columnSorting&&(i=e.target.getAttribute("data-x"))&&jexcel.current.orderBy(i),2==a[1]&&1==jexcel.current.options.editable&&!jexcel.current.edition){var s=function(e){if(e.parentNode){var t=e.getAttribute("data-x"),n=e.getAttribute("data-y");return t&&n?e:s(e.parentNode)}},l=s(e.target);l&&l.classList.contains("highlight")&&jexcel.current.openEditor(l)}}},jexcel.copyControls=function(e){jexcel.current&&jexcel.copyControls.enabled&&(jexcel.current.edition||jexcel.current.copy(!0))},jexcel.cutControls=function(e){jexcel.current&&(jexcel.current.edition||(jexcel.current.copy(!0),1==jexcel.current.options.editable&&jexcel.current.setValue(jexcel.current.highlighted,"")))},jexcel.pasteControls=function(e){jexcel.current&&jexcel.current.selectedCell&&(jexcel.current.edition||1==jexcel.current.options.editable&&(e&&e.clipboardData?(jexcel.current.paste(jexcel.current.selectedCell[0],jexcel.current.selectedCell[1],e.clipboardData.getData("text")),e.preventDefault()):window.clipboardData&&jexcel.current.paste(jexcel.current.selectedCell[0],jexcel.current.selectedCell[1],window.clipboardData.getData("text"))))},jexcel.contextMenuControls=function(e){if("buttons"in(e=e||window.event)?e.buttons:e.which||e.button,jexcel.current)if(jexcel.current.edition)e.preventDefault();else if(jexcel.current.options.contextMenu&&(jexcel.current.contextMenu.contextmenu.close(),jexcel.current)){var t=e.target.getAttribute("data-x"),n=e.target.getAttribute("data-y");if(t||n){(tparseInt(jexcel.current.selectedCell[2])||nparseInt(jexcel.current.selectedCell[3]))&&jexcel.current.updateSelectionFromCoords(t,n,t,n);var o=jexcel.current.options.contextMenu(jexcel.current,t,n,e);jexcel.current.contextMenu.contextmenu.open(e,o),e.preventDefault()}}},jexcel.touchStartControls=function(e){var t=jexcel.getElement(e.target);if(t[0]?jexcel.current!=t[0].jexcel&&(jexcel.current&&jexcel.current.resetSelection(),jexcel.current=t[0].jexcel):jexcel.current&&(jexcel.current.resetSelection(),jexcel.current=null),jexcel.current&&!jexcel.current.edition){var n=e.target.getAttribute("data-x"),o=e.target.getAttribute("data-y");n&&o&&(jexcel.current.updateSelectionFromCoords(n,o),jexcel.timeControl=setTimeout((function(){"color"==jexcel.current.options.columns[n].type?jexcel.tmpElement=null:jexcel.tmpElement=e.target,jexcel.current.openEditor(e.target,!1,e)}),500))}},jexcel.touchEndControls=function(e){jexcel.timeControl&&(clearTimeout(jexcel.timeControl),jexcel.timeControl=null,jexcel.tmpElement&&"INPUT"==jexcel.tmpElement.children[0].tagName&&jexcel.tmpElement.children[0].focus(),jexcel.tmpElement=null)},jexcel.tabs=function(e,t){var n=[];if(e.classList.contains("jexcel_tabs"))r=e.children[0],i=e.children[1];else{e.innerHTML="",e.classList.add("jexcel_tabs"),e.jexcel=[];var o=document.createElement("div"),r=e.appendChild(o),i=(o=document.createElement("div"),e.appendChild(o))}for(var a=[],s=[],l=0;l0)for(o.mergeCells=[],r=0;r0&&(o.style[f[r]]=p.style),p.s&&p.s.fgColor&&(o.style[f[r]]&&(o.style[f[r]]+=";"),o.style[f[r]]+="background-color:#"+p.s.fgColor.rgb)}for(var m=o.columns,g=0;g<=d;g++)for(r=0;r<=u;r++)o.data[g]||(o.data[g]=[]),o.data[g][r]||m701?(t+=String.fromCharCode(64+parseInt(e/676)),t+=String.fromCharCode(64+parseInt(e%676/26))):e>25&&(t+=String.fromCharCode(64+parseInt(e/26))),t+String.fromCharCode(65+e%26)},jexcel.getIdFromColumnName=function(e,t){var n=/^[a-zA-Z]+/.exec(e);if(n){for(var o=0,r=0;r0&&i--,e=1==t?[o,i]:o+"-"+i}return e},jexcel.getColumnNameFromId=function(e){return Array.isArray(e)||(e=e.split("-")),jexcel.getColumnName(parseInt(e[0]))+(parseInt(e[1])+1)},jexcel.getElement=function(e){var t=0,n=0;return function e(o){o.className&&o.classList.contains("jexcel_container")&&(n=o),"THEAD"==o.tagName?t=1:"TBODY"==o.tagName&&(t=2),o.parentNode&&(n||e(o.parentNode))}(e),[n,t]},jexcel.doubleDigitFormat=function(e){return 1==(e=""+e).length&&(e="0"+e),e},jexcel.createFromTable=function(e,t){if("TABLE"==e.tagName){t||(t={}),t.columns=[],t.data=[];var n=e.querySelectorAll("colgroup > col");if(n.length)for(var o=0;o50?n.width:50;t.columns[o]||(t.columns[o]={}),e.getAttribute("data-celltype")?t.columns[o].type=e.getAttribute("data-celltype"):t.columns[o].type="text",t.columns[o].width=r+"px",t.columns[o].title=e.innerHTML,t.columns[o].align=e.style.textAlign||"center",(n=e.getAttribute("name"))&&(t.columns[o].name=n),(n=e.getAttribute("id"))&&(t.columns[o].id=n),(n=e.getAttribute("data-mask"))&&(t.columns[o].mask=n)},a=[],s=e.querySelectorAll(":scope > thead > tr");if(s.length){for(var l=0;l tr, :scope > tbody > tr");for(l=0;l0&&(t.nestedHeaders=a),Object.keys(h).length>0&&(t.style=h),Object.keys(f).length>0&&(t.mergeCells=f),Object.keys(p).length>0&&(t.rows=p),Object.keys(m).length>0&&(t.classes=m),(g=e.querySelectorAll("tfoot tr")).length){var C=[];for(l=0;l0&&(t.footers=C)}if(1==t.parseTableAutoCellType){var _=[];for(o=0;o25&&(M=!1),10==b.length&&"-"==b.substr(4,1)&&"-"==b.substr(7,1)||(A=!1);var T=Object.keys(_[o]).length;A?t.columns[o].type="calendar":1==M&&T>1&&T<=parseInt(.1*t.data.length)&&(t.columns[o].type="dropdown",t.columns[o].source=Object.keys(_[o]))}}return t}console.log("Element is not a table")},jexcel.helpers=(component={getCaretIndex:function(e){if(this.config.root)var t=this.config.root;else t=window;var n=0,o=t.getSelection();if(o&&0!==o.rangeCount){var r=o.getRangeAt(0),i=r.cloneRange();i.selectNodeContents(e),i.setEnd(r.endContainer,r.endOffset),n=i.toString().length}return n},invert:function(e){for(var t=[],n=Object.keys(e),o=0;o701?(t+=String.fromCharCode(64+parseInt(e/676)),t+=String.fromCharCode(64+parseInt(e%676/26))):e>25&&(t+=String.fromCharCode(64+parseInt(e/26))),t+String.fromCharCode(65+e%26)},getColumnNameFromCoords:function(e,t){return component.getColumnName(parseInt(e))+(parseInt(t)+1)},getCoordsFromColumnName:function(e){var t=/^[a-zA-Z]+/.exec(e);if(t){for(var n=0,o=0;o0&&r--,[n,r]}},createFromTable:function(){},injectArray:function(e,t,n){return e.slice(0,t).concat(n).concat(e.slice(t))},parseCSV:function(e,t){t=t||",";for(var n=0,o=0,r=[[]],i=0,a=null,s=!1,l=!1,c=0;ci&&(i=n)}for(var d=0;d>>16)+(n.lowOrder>>>16)+(o>>>16)))<<16|65535&o,o=(65535&e.highOrder)+(65535&n.highOrder)+(r>>>16),new t((65535&(r=(e.highOrder>>>16)+(n.highOrder>>>16)+(o>>>16)))<<16|65535&o,i)}function g(e,n,o,r){var i,a,s;return i=(65535&e.lowOrder)+(65535&n.lowOrder)+(65535&o.lowOrder)+(65535&r.lowOrder),s=(65535&(a=(e.lowOrder>>>16)+(n.lowOrder>>>16)+(o.lowOrder>>>16)+(r.lowOrder>>>16)+(i>>>16)))<<16|65535&i,i=(65535&e.highOrder)+(65535&n.highOrder)+(65535&o.highOrder)+(65535&r.highOrder)+(a>>>16),new t((65535&(a=(e.highOrder>>>16)+(n.highOrder>>>16)+(o.highOrder>>>16)+(r.highOrder>>>16)+(i>>>16)))<<16|65535&i,s)}function b(e,n,o,r,i){var a,s,l;return a=(65535&e.lowOrder)+(65535&n.lowOrder)+(65535&o.lowOrder)+(65535&r.lowOrder)+(65535&i.lowOrder),l=(65535&(s=(e.lowOrder>>>16)+(n.lowOrder>>>16)+(o.lowOrder>>>16)+(r.lowOrder>>>16)+(i.lowOrder>>>16)+(a>>>16)))<<16|65535&a,a=(65535&e.highOrder)+(65535&n.highOrder)+(65535&o.highOrder)+(65535&r.highOrder)+(65535&i.highOrder)+(s>>>16),new t((65535&(s=(e.highOrder>>>16)+(n.highOrder>>>16)+(o.highOrder>>>16)+(r.highOrder>>>16)+(i.highOrder>>>16)+(a>>>16)))<<16|65535&a,l)}function j(e,n,o){return new t(e.highOrder&n.highOrder^e.highOrder&o.highOrder^n.highOrder&o.highOrder,e.lowOrder&n.lowOrder^e.lowOrder&o.lowOrder^n.lowOrder&o.lowOrder)}function v(e,n,o){return new t(e.highOrder&n.highOrder^~e.highOrder&o.highOrder,e.lowOrder&n.lowOrder^~e.lowOrder&o.lowOrder)}function y(e,n){return n<=32?new t(e.highOrder>>>n|e.lowOrder<<32-n,e.lowOrder>>>n|e.highOrder<<32-n):new t(e.lowOrder>>>n|e.highOrder<<32-n,e.highOrder>>>n|e.lowOrder<<32-n)}function x(e){var n=y(e,28),o=y(e,34),r=y(e,39);return new t(n.highOrder^o.highOrder^r.highOrder,n.lowOrder^o.lowOrder^r.lowOrder)}function w(e){var n=y(e,14),o=y(e,18),r=y(e,41);return new t(n.highOrder^o.highOrder^r.highOrder,n.lowOrder^o.lowOrder^r.lowOrder)}function C(e){var n=y(e,1),o=y(e,8),r=E(e,7);return new t(n.highOrder^o.highOrder^r.highOrder,n.lowOrder^o.lowOrder^r.lowOrder)}function E(e,n){return n<=32?new t(e.highOrder>>>n,e.lowOrder>>>n|e.highOrder<<32-n):new t(0,e.highOrder<<32-n)}var _,M,A,T,L=8*(e=function(e){return unescape(encodeURIComponent(e))}(e)).length;(e=function(e){for(var t=[],n=8*e.length,o=0;o>5]|=(255&e.charCodeAt(o/8))<<24-o%32;return t}(e))[L>>5]|=128<<24-L%32,e[31+(L+128>>10<<5)]=L;for(var D=0;D>2]>>8*(3-r%4),n+="0123456789abcdef".charAt(t>>4&15)+"0123456789abcdef".charAt(15&t);return n}(S)}}},t={};function n(o){var r=t[o];if(void 0!==r)return r.exports;var i=t[o]={exports:{}};return e[o].call(i.exports,i,i.exports,n),i.exports}n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,{a:t}),t},n.d=function(e,t){for(var o in t)n.o(t,o)&&!n.o(e,o)&&Object.defineProperty(e,o,{enumerable:!0,get:t[o]})},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)};var o={};return function(){"use strict";n.d(o,{default:function(){return P}});var e,t,r,i={two:function(e){return 1==(e=""+e).length&&(e="0"+e),e},focus:function(e){if(e.innerText.length){var t=document.createRange(),n=window.getSelection(),o=e.childNodes[e.childNodes.length-1];t.setStart(o,o.length),t.collapse(!0),n.removeAllRanges(),n.addRange(t),e.scrollLeft=e.scrollWidth}},isNumeric:function(e){return"string"==typeof e&&(e=e.trim()),!isNaN(e)&&null!==e&&""!==e},guid:function(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(function(e){var t=16*Math.random()|0;return("x"==e?t:3&t|8).toString(16)}))},getNode:function(){var e=document.getSelection().anchorNode;return e?3==e.nodeType?e.parentNode:e:null},hash:function(e){var t,n,o=0;if(0===e.length)return o;for(t=0;t32&&(o=(o<<5)-o+n,o|=0);return o},randomColor:function(e){var t=String("#"+Math.random().toString(16).slice(2,8).toUpperCase()).replace(/[^0-9a-f]/gi,"");t.length<6&&(t=t[0]+t[0]+t[1]+t[1]+t[2]+t[2]);var n,o,r=[];for(o=0;o<3;o++)n=parseInt(t.substr(2*o,2),16),n=Math.round(Math.min(Math.max(0,n+-.25*n),255)).toString(16),r.push(("00"+n).substr(n.length));return 1==e?"#"+i.two(r[0].toString(16))+i.two(r[1].toString(16))+i.two(r[2].toString(16)):r},getWindowWidth:function(){var e=window,t=document,n=t.documentElement,o=t.getElementsByTagName("body")[0];return e.innerWidth||n.clientWidth||o.clientWidth},getWindowHeight:function(){var e=window,t=document,n=t.documentElement,o=t.getElementsByTagName("body")[0];return e.innerHeight||n.clientHeight||o.clientHeight},getPosition:function(e){if(e.changedTouches&&e.changedTouches[0])var t=e.changedTouches[0].pageX,n=e.changedTouches[0].pageY;else t=window.Event?e.pageX:e.clientX+(document.documentElement.scrollLeft?document.documentElement.scrollLeft:document.body.scrollLeft),n=window.Event?e.pageY:e.clientY+(document.documentElement.scrollTop?document.documentElement.scrollTop:document.body.scrollTop);return[t,n]},click:function(e){if(e.click)e.click();else{var t=new MouseEvent("click",{bubbles:!0,cancelable:!0,view:window});e.dispatchEvent(t)}},findElement:function(e,t){var n=!1;return function e(o){o&&!n&&("function"==typeof t?n=t(o):"string"==typeof t&&o.classList&&o.classList.contains(t)&&(n=o)),o.parentNode&&!n&&e(o.parentNode)}(e),n}},a=i,s=(e={now:function(e,t){var n=null,o=null,r=null,i=null,s=null,l=null;return Array.isArray(e)?(n=e[0],o=e[1],r=e[2],i=e[3],s=e[4],l=e[5]):(e||(e=new Date),n=e.getFullYear(),o=e.getMonth()+1,r=e.getDate(),i=e.getHours(),s=e.getMinutes(),l=e.getSeconds()),1==t?a.two(n)+"-"+a.two(o)+"-"+a.two(r):a.two(n)+"-"+a.two(o)+"-"+a.two(r)+" "+a.two(i)+":"+a.two(s)+":"+a.two(l)},toArray:function(e){var t=(n=e.split(-1!==e.indexOf("T")?"T":" "))[1],n=n[0].split("-"),o=parseInt(n[0]),r=parseInt(n[1]),i=parseInt(n[2]),a=0,s=0;return t&&(t=t.split(":"),a=parseInt(t[0]),s=parseInt(t[1])),[o,r,i,a,s,0]}},t=Date.UTC(1900,0,0),r=Date.UTC(1900,1,29),e.dateToNum=function(e){"string"==typeof e&&(e=new Date(e+" GMT+0"));var n=e.getTime();return n>=r&&(n+=864e5),(n-=t)/864e5},e.numToDate=function(n){var o=t+864e5*n;o>=r&&(o-=864e5);const i=new Date(o);var a=[i.getUTCFullYear(),i.getUTCMonth()+1,i.getUTCDate(),i.getUTCHours(),i.getUTCMinutes(),i.getUTCSeconds()];return e.now(a)},e.weekdays=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],e.months=["January","February","March","April","May","June","July","August","September","October","November","December"],e.weekdaysShort=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],e.monthsShort=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],e),l=function(e){return"undefined"!=typeof document&&document.dictionary&&document.dictionary[e]||e},c={setDictionary:function(e){document.dictionary||(document.dictionary={});var t=null,n=null,o=Object.keys(e);for(n=0;n=0&&document.jsuitesComponents.splice(n,1)}}function d(e,t,n){if((e=e.split(".")).length){let o=this,r=null;for(;e.length>1;)if(r=e.shift(),o.hasOwnProperty(r))o=o[r];else{if(void 0===t)return;o[r]={},o=o[r]}if(r=e.shift(),void 0!==t)return!0===n?delete o[r]:o[r]=t,!0;if(o)return o[r]}return!1}function f(e,t){var n={options:{}},o={pointer:null,direction:null,ondragstart:null,ondragend:null,ondrop:null},r=null;for(var i in o)t&&t.hasOwnProperty(i)?n.options[i]=t[i]:n.options[i]=o[i];e.classList.add("jsorting"),e.addEventListener("dragstart",(function(t){var o=Array.prototype.indexOf.call(t.target.parentNode.children,t.target);r={element:t.target,o:o,d:o},t.target.style.opacity="0.25","function"==typeof n.options.ondragstart&&n.options.ondragstart(e,t.target,t)})),e.addEventListener("dragover",(function(e){if(e.preventDefault(),a(e.target)&&r&&"true"==e.target.getAttribute("draggable")&&r.element!=e.target){if(n.options.direction)t=e.target.clientWidth/2>e.offsetX;else var t=e.target.clientHeight/2>e.offsetY;t?e.target.parentNode.insertBefore(r.element,e.target):e.target.parentNode.insertBefore(r.element,e.target.nextSibling),r.d=Array.prototype.indexOf.call(e.target.parentNode.children,r.element)}})),e.addEventListener("dragleave",(function(e){e.preventDefault()})),e.addEventListener("dragend",(function(t){t.preventDefault(),r&&("function"==typeof n.options.ondragend&&n.options.ondragend(e,r.element,t),r.o=e.scrollHeight?t.loadDown()&&(i==e.scrollTop&&(e.scrollTop=e.scrollTop-e.clientHeight),r=!0):e.scrollTop<=e.clientHeight&&t.loadUp()&&(i==e.scrollTop&&(e.scrollTop=e.scrollTop+e.clientHeight),r=!0),n=setTimeout((function(){n=null}),t.timer),r&&"function"==typeof t.onupdate&&t.onupdate()}};return e.onscroll=function(e){o()},e.onwheel=function(e){o()},{}}var h=function(){var e=function(t,n){if(Array.isArray(t)){var o={instance:[],complete:n};if(t.length>0)for(var r=0;r=200&&u.status<300)if("json"===t.dataType)try{var n=JSON.parse(u.responseText);t.success&&"function"==typeof t.success&&t.success(n)}catch(e){t.error&&"function"==typeof t.error&&t.error(e,n)}else n="blob"===t.dataType?u.response:u.responseText,t.success&&"function"==typeof t.success&&t.success(n);else t.error&&"function"==typeof t.error&&t.error(u.responseText,u.status);if(e.queue&&e.queue.length>0&&e.send(e.queue.shift()),e.requests&&e.requests.length){var o=e.requests.indexOf(u);e.requests.splice(o,1),e.requests.length||t.complete&&"function"==typeof t.complete&&t.complete(n),t.group&&e.oncomplete&&"function"==typeof e.oncomplete[t.group]&&(e.pending(t.group)||(e.oncomplete[t.group](),e.oncomplete[t.group]=null)),t.multiple&&t.multiple.instance&&(o=t.multiple.instance.indexOf(u),t.multiple.instance.splice(o,1),t.multiple.instance.length||t.multiple.complete&&"function"==typeof t.multiple.complete&&t.multiple.complete(n))}},u.options=t,u.data=l,!0===t.queue&&e.requests.length>0?e.queue.push(u):e.send(u),u};return e.send=function(t){t.data?Array.isArray(t.data)?t.send(t.data.join("&")):t.send(t.data):t.send(),e.requests.push(t)},e.exists=function(e,t){var n=new XMLHttpRequest;n.open("HEAD",e,!1),n.send(),n.status&&t(n.status)},e.pending=function(t){var n=0,o=e.requests;if(o&&o.length)for(var r=0;r0&&setTimeout((function(){e.loading.hide()}),1e3*t)},e.loading.hide=function(){e.loading.element&&e.loading.element.parentNode&&document.body.removeChild(e.loading.element)},e.slideLeft=function(e,t,n){1==t?(e.classList.add("slide-left-in"),setTimeout((function(){e.classList.remove("slide-left-in"),"function"==typeof n&&n()}),400)):(e.classList.add("slide-left-out"),setTimeout((function(){e.classList.remove("slide-left-out"),"function"==typeof n&&n()}),400))},e.slideRight=function(e,t,n){!0===t?(e.classList.add("slide-right-in"),setTimeout((function(){e.classList.remove("slide-right-in"),"function"==typeof n&&n()}),400)):(e.classList.add("slide-right-out"),setTimeout((function(){e.classList.remove("slide-right-out"),"function"==typeof n&&n()}),400))},e.slideTop=function(e,t,n){!0===t?(e.classList.add("slide-top-in"),setTimeout((function(){e.classList.remove("slide-top-in"),"function"==typeof n&&n()}),400)):(e.classList.add("slide-top-out"),setTimeout((function(){e.classList.remove("slide-top-out"),"function"==typeof n&&n()}),400))},e.slideBottom=function(e,t,n){!0===t?(e.classList.add("slide-bottom-in"),setTimeout((function(){e.classList.remove("slide-bottom-in"),"function"==typeof n&&n()}),400)):(e.classList.add("slide-bottom-out"),setTimeout((function(){e.classList.remove("slide-bottom-out"),"function"==typeof n&&n()}),100))},e.fadeIn=function(e,t){e.style.display="",e.classList.add("fade-in"),setTimeout((function(){e.classList.remove("fade-in"),"function"==typeof t&&t()}),2e3)},e.fadeOut=function(e,t){e.classList.add("fade-out"),setTimeout((function(){e.style.display="none",e.classList.remove("fade-out"),"function"==typeof t&&t()}),1e3)},e}(),g=function(){var e={text:["@"],currency:["#(.{1})##0?(.{1}0+)?( ?;(.*)?)?","#"],percentage:["0{1}(.{1}0+)?%"],numeric:["0{1}(.{1}0+)?"],datetime:["YYYY","YYY","YY","MMMMM","MMMM","MMM","MM","DDDDD","DDDD","DDD","DD","DY","DAY","WD","D","Q","MONTH","MON","HH24","HH12","HH","\\[H\\]","H","AM/PM","MI","SS","MS","Y","M"],general:["A","0","[0-9a-zA-Z$]+","."]},t=function(){if(-1!==this.mask.toLowerCase().indexOf("[h]")){var e=0;this.date[4]&&(e=parseFloat(this.date[4]/60));var t=parseInt(this.date[3])+e;t/=24}else this.date[0]&&this.date[1]&&this.date[2]||!this.date[3]&&!this.date[4]?(this.date[0]&&this.date[1]&&!this.date[2]&&(this.date[2]=1),t=a.two(this.date[0])+"-"+a.two(this.date[1])+"-"+a.two(this.date[2]),(this.date[3]||this.date[4]||this.date[5])&&(t+=" "+a.two(this.date[3])+":"+a.two(this.date[4])+":"+a.two(this.date[5]))):t=a.two(this.date[3])+":"+a.two(this.date[4])+":"+a.two(this.date[5]);return t},n=function(){var e="";if(this.date[0]&&this.date[1]&&this.date[2]||!this.date[3]&&!this.date[4]){if(this.date[0]||this.date[1]||this.date[2]||this.date[3]||this.date[4]||this.date[5]){this.date[0]&&this.date[1]&&!this.date[2]&&(this.date[2]=1);var t=s.now(this.date);e=s.dateToNum(t),this.date[4]&&(e+=parseFloat(this.date[4]/60))}}else{if(-1!==this.mask.toLowerCase().indexOf("[h]"))e=parseInt(this.date[3]);else{let t=parseInt(this.date[3]);e=t<13&&-1!==this.values.indexOf("PM")?(t+12)%24:t%24}this.date[4]&&(e+=parseFloat(this.date[4]/60)),this.date[5]&&(e+=parseFloat(this.date[5]/3600)),e/=24}return isNaN(e)&&(e=""),e},o=function(e){return null===e||""===e||void 0===e},r=function(e){return"currency"===e||"percentage"===e||"numeric"===e},i=function(e){if(e&&Number(e)==e)return".";if(this.options.decimal)return this.options.decimal;if(this.locale){var t=Intl.NumberFormat(this.locale).format(1.1);return this.options.decimal=t[1]}return e||(e=this.mask),(t=new RegExp("0{1}(.{1})0+","ig").exec(e))&&t[1]&&1==t[1].length?(this.options.decimal=t[1],t[1]):((t=new RegExp("#{1}(.{1})#+","ig").exec(e))&&t[1]&&1==t[1].length?","===t[1]?this.options.decimal=".":this.options.decimal=",":this.options.decimal="1.1".toLocaleString().substring(1,2),this.options.decimal?this.options.decimal:null)},l=function(e,t){if(""==e)return"";t||(t=i.call(this));var n=(e=(""+e).split(t))[0].match(/[-]+/g);return n=!(!n||!n.length),e[0]=e[0].match(/[0-9]+/g),e[0]?(n&&e[0].unshift("-"),e[0]=e[0].join("")):n&&(e[0]="-"),e[0]||e[1]?(void 0!==e[1]&&(e[1]=e[1].match(/[0-9]+/g),e[1]?e[1]=e[1].join(""):e[1]=""),e):""},c=function(e,t){if(""===e)return"";var n=i.call(this),o=this.options;if(""===(e=l.call(this,e)))return"";var r=null;if(e[0]&&(r="percent"===o.style?parseFloat(e[0])/100:parseFloat(e[0]+".1")),("-"===e[0]||"-00"===e[0])&&!e[1]&&t&&"deleteContentBackward"==t.inputType)return"";var a=new Intl.NumberFormat(this.locale,o).format(r);if(a=a.split(n),"percent"===o.style&&-1!==a[0].indexOf("%")&&(a[0]=a[0].replace("%",""),a[2]="%"),void 0!==a[1]){var s=a[1].replace(/[0-9]*/g,"");s&&(a[2]=s)}return void 0!==e[1]?a[1]=n+e[1]:a[1]="",a.join("")},u=function(e,t){var n=p.call(e);if(n){var o=c.call(this,n,t),r=o.length-n.length,i=f.call(e)+r;p.call(e,o,i,!0)}},d=function(e){var t=l.call(this,e);return t?("-"===t[0]&&(t[0]="-0"),parseFloat(t.join("."))):null},f=function(e,t){if(void 0===e){if("DIV"==this.tagName){var n=0;return(a=window.getSelection())&&0!==a.rangeCount&&((r=(s=a.getRangeAt(0)).cloneRange()).selectNodeContents(this),r.setEnd(s.endContainer,s.endOffset),n=r.toString().length),n}return this.selectionStart}var o=p.call(this);if(t){for(var r=null,i=0;i=r&&(e=r+1)}if(e>o.length&&(e=o.length),e)if("DIV"==this.tagName){var a=window.getSelection(),s=document.createRange();this.childNodes[0]&&(s.setStart(this.childNodes[0],e),a.removeAllRanges(),a.addRange(s))}else this.selectionStart=e,this.selectionEnd=e},p=function(e,t,n){if("DIV"==this.tagName){if(void 0===e)return e=this.innerText,this.value&&this.value.length>e.length&&(e=this.value),e;this.innerText!==e&&(this.innerText=e,t&&f.call(this,t,n))}else{if(void 0===e)return this.value;this.value!==e&&(this.value=e,t&&f.call(this,t,n))}},h=s.weekdays,m=s.weekdaysShort,g=s.months,b=s.monthsShort,j={YEAR:function(e,t){var n=""+(new Date).getFullYear();void 0===this.values[this.index]&&(this.values[this.index]=""),parseInt(e)>=0&&parseInt(e)<=10&&this.values[this.index].length-1)this.values[this.index]+=e;else{for(var n=0,r=0,i=(this.values[this.index]+e).toLowerCase(),a=0;a1)this.values[this.index]+=e;else if(1==r){var s=t[n].length-this.values[this.index].length-1;return this.position+=s,this.values[this.index]=t[n],this.index++,n}}},MMM:function(e){var t=j.FIND.call(this,e,b);void 0!==t&&(this.date[1]=t+1)},MON:function(e){j.MMM.call(this,e)},MMMM:function(e){var t=j.FIND.call(this,e,g);void 0!==t&&(this.date[1]=t+1)},MONTH:function(e){j.MMMM.call(this,e)},MMMMM:function(e){o(this.values[this.index])&&(this.values[this.index]="");for(var t=(this.values[this.index]+e).toLowerCase(),n=0;n1&&parseInt(e)<10?(this.date[1]=this.values[this.index]="0"+e,this.index++):parseInt(e)<2&&(this.values[this.index]=e):(1==this.values[this.index]&&parseInt(e)<3||0==this.values[this.index]&&parseInt(e)>0&&parseInt(e)<10)&&(this.date[1]=this.values[this.index]+=e,this.index++)},M:function(e){var t=!1;if(parseInt(e)>=0&&parseInt(e)<10?o(this.values[this.index])?(this.values[this.index]=e,e>1&&(this.date[1]=this.values[this.index],this.index++)):1==this.values[this.index]&&parseInt(e)<3||0==this.values[this.index]&&parseInt(e)>0?(this.date[1]=this.values[this.index]+=e,this.index++):t=!0:t=!0,1==t){var n=parseInt(this.values[this.index]);n>0&&n<12&&(this.date[1]=this.values[this.index],this.index++,this.position--)}},D:function(e){var t=!1;if(parseInt(e)>=0&&parseInt(e)<10?o(this.values[this.index])?(this.values[this.index]=e,parseInt(e)>3&&(this.date[2]=this.values[this.index],this.index++)):3==this.values[this.index]&&parseInt(e)<2||1==this.values[this.index]||2==this.values[this.index]||0==this.values[this.index]&&parseInt(e)>0?(this.date[2]=this.values[this.index]+=e,this.index++):t=!0:t=!0,1==t){var n=parseInt(this.values[this.index]);n>0&&n<32&&(this.date[2]=this.values[this.index],this.index++,this.position--)}},DD:function(e){o(this.values[this.index])?parseInt(e)>3&&parseInt(e)<10?(this.date[2]=this.values[this.index]="0"+e,this.index++):parseInt(e)<10&&(this.values[this.index]=e):(3==this.values[this.index]&&parseInt(e)<2||(1==this.values[this.index]||2==this.values[this.index])&&parseInt(e)<10||0==this.values[this.index]&&parseInt(e)>0&&parseInt(e)<10)&&(this.date[2]=this.values[this.index]+=e,this.index++)},DDD:function(e){j.FIND.call(this,e,m)},DY:function(e){j.DDD.call(this,e)},DDDD:function(e){j.FIND.call(this,e,h)},DAY:function(e){j.DDDD.call(this,e)},HH12:function(e,t){o(this.values[this.index])?parseInt(e)>1&&parseInt(e)<10?(t&&(e=0+e),this.date[3]=this.values[this.index]=e,this.index++):parseInt(e)<10&&(this.values[this.index]=e):(1==this.values[this.index]&&parseInt(e)<3||this.values[this.index]<1&&parseInt(e)<10)&&(this.date[3]=this.values[this.index]+=e,this.index++)},HH24:function(e,t){parseInt(e)>=0&&parseInt(e)<10&&(null==this.values[this.index]||""==this.values[this.index]?parseInt(e)>2&&parseInt(e)<10?(t&&(e=0+e),this.date[3]=this.values[this.index]=e,this.index++):parseInt(e)<10&&(this.values[this.index]=e):(2==this.values[this.index]&&parseInt(e)<4||this.values[this.index]<2&&parseInt(e)<10)&&(t||"0"!==this.values[this.index]||(this.values[this.index]=""),this.date[3]=this.values[this.index]+=e,this.index++))},HH:function(e){j.HH24.call(this,e,1)},H:function(e){j.HH24.call(this,e,0)},"\\[H\\]":function(e){null==this.values[this.index]&&(this.values[this.index]=""),e.match(/[0-9]/g)?this.date[3]=this.values[this.index]+=e:this.values[this.index].match(/[0-9]/g)&&(this.date[3]=this.values[this.index],this.index++,this.position--)},N60:function(e,t){null==this.values[this.index]||""==this.values[this.index]?parseInt(e)>5&&parseInt(e)<10?(this.date[t]=this.values[this.index]="0"+e,this.index++):parseInt(e)<10&&(this.values[this.index]=e):parseInt(e)<10&&(this.date[t]=this.values[this.index]+=e,this.index++)},MI:function(e){j.N60.call(this,e,4)},SS:function(e){j.N60.call(this,e,5)},"AM/PM":function(e){void 0===this.values[this.index]&&(this.values[this.index]=""),""===this.values[this.index]?e.match(/a/i)&&this.date[3]<13?this.values[this.index]+="A":e.match(/p/i)&&(this.values[this.index]+="P"):"A"!==this.values[this.index]&&"P"!==this.values[this.index]||(this.values[this.index]+="M",this.index++)},WD:function(e){void 0===this.values[this.index]&&(this.values[this.index]=""),parseInt(e)>=0&&parseInt(e)<7&&(this.values[this.index]=e),1==this.values[this.index].length&&this.index++},"0{1}(.{1}0+)?":function(e){var t=i.call(this),n=!1;o(this.values[this.index])?this.values[this.index]="":"-"==this.values[this.index]&&(n=!0);var r=l.call(this,this.values[this.index],t);r&&(this.values[this.index]=r.join(t)),parseInt(e)>=0&&parseInt(e)<10?("0"==this.values[this.index]&&e>0?this.values[this.index]="":"-0"==this.values[this.index]&&e>0&&(this.values[this.index]="-"),("0"!=this.values[this.index]&&"-0"!=this.values[this.index]||e==t)&&(this.values[this.index]+=e)):t&&e==t?-1==this.values[this.index].indexOf(t)&&(this.values[this.index]||(this.values[this.index]="0"),this.values[this.index]+=e):"-"==e&&(n=!0),!0===n&&"-"!==this.values[this.index][0]&&(this.values[this.index]="-"+this.values[this.index])},"0{1}(.{1}0+)?%":function(e){j["0{1}(.{1}0+)?"].call(this,e),this.values[this.index].match(/[\-0-9]/g)?this.values[this.index]&&-1==this.values[this.index].indexOf("%")&&(this.values[this.index]+="%"):this.values[this.index]=""},"#(.{1})##0?(.{1}0+)?( ?;(.*)?)?":function(e){j["0{1}(.{1}0+)?"].call(this,e);var t=i.call(this),n=this.tokens[this.index].substr(1,1),o="-"===this.values[this.index][0],r=l.call(this,this.values[this.index],t);if(""!==r){var a=r[0].match(/[0-9]/g);if(a){for(var s=[],c=0,u=(a=a.join("")).length-1;u>=0;u--)s.push(a[u]),++c%3||s.push(n);s=s.reverse(),r[0]=s.join(""),r[0].substr(0,1)==n&&(r[0]=r[0].substr(1))}else r[0]="";this.values[this.index]=r.join(t),o&&(this.values[this.index]="-"+this.values[this.index])}},0:function(e){e.match(/[0-9]/g)&&(this.values[this.index]=e,this.index++)},"[0-9a-zA-Z$]+":function(e){o(this.values[this.index])&&(this.values[this.index]="");var t=this.tokens[this.index];t[this.values[this.index].length]==e?(this.values[this.index]+=e,this.values[this.index]==t&&this.index++):(this.values[this.index]=t,this.index++,e.match(/[\-0-9]/g)&&this.position--)},A:function(e){e.match(/[a-zA-Z]/gi)&&(this.values[this.index]=e,this.index++)},".":function(e){j["[0-9a-zA-Z$]+"].call(this,e)},"@":function(e){o(this.values[this.index])&&(this.values[this.index]=""),this.values[this.index]+=e}},v=function(t){if("general"==this.type)var n=[].concat(e.general);else n=[].concat(e.currency,e.datetime,e.percentage,e.numeric,e.text,e.general);var o=new RegExp(n.join("|"),"gi");return t.match(o)},y=function(t){if(this.type)n="text"==this.type?["text"]:"general"==this.type?["general"]:"datetime"==this.type?["numeric","datetime","general"]:["currency","percentage","numeric","general"];else var n=Object.keys(e);for(var o=0;o=0||t[n-2]&&t[n-2].indexOf("H")>=0||t[n+1]&&t[n+1].indexOf("S")>=0||t[n+2]&&t[n+2].indexOf("S")>=0)&&(t[n]="MI");return t},w=function(e){var t=y.call(this,e);if(t)var n=t.type;if(n){for(var o=0,i=v.call(this,e),a=0;a1&&(n="general")}return n},C=function(){"function"==typeof j[this.methods[this.index]]?(j[this.methods[this.index]].call(this,this.value[this.position]),this.position++):(this.values[this.index]=this.tokens[this.index],this.index++)},E=function(e,n,o){var s=null,l={input:null,value:null,options:{},values:[],index:0,position:0,date:[0,0,0,0,0,0],number:0};if("object"==typeof e){if(l.input=e.target,l.value=p.call(e.target),l.caret=f.call(e.target),(s=e.target.getAttribute("data-mask"))&&(l.mask=s),(s=e.target.getAttribute("data-type"))&&(l.type=s),e.target.mask?(e.target.mask.options&&(l.options=e.target.mask.options),e.target.mask.locale&&(l.locale=e.target.mask.locale)):(s=e.target.getAttribute("data-locale"))&&(l.locale=s,l.mask&&(l.options.style=l.mask)),e.target.attributes&&e.target.attributes.length)for(var h=0;h0)var _=l.caret+s;else _=l.caret;p.call(l.input,j,_,E)}}if(l.input){var M=null;if(r(l.type)){let e=p.call(l.input);l.number=d.call(l,e),M="percentage"==l.type&&-1!==e.indexOf("%")?l.number/100:l.number}else"datetime"==l.type&&(M=t.call(l),l.date[0]&&l.date[1]&&l.date[2]&&l.input.setAttribute("data-completed",!0));M&&l.input.setAttribute("data-value",M)}if(void 0!==j)return o?l:j}};return E.getType=w,E.prepare=function(e,t){return t||(t={}),v.call(t,e)},E.apply=function(e){var t=p.call(e.target);1==e.key.length&&(t+=e.key),p.call(e.target,E(t,e.target.getAttribute("data-mask")))},E.run=function(e,t,n){return E(e,{mask:t,decimal:n})},E.extract=function(e,t,r){if(o(e))return e;if("object"!=typeof t)return e;if((t=Object.assign({},t)).options||(t.options={}),!t.mask&&t.format&&(t.mask=t.format),t.mask){if(-1!==t.mask.indexOf(";")){var s=t.mask.split(";");t.mask=s[0]}t.mask=t.mask.replace(new RegExp(/\[h]/),"|h|"),t.mask=t.mask.replace(new RegExp(/\[.*?\]/),""),t.mask=t.mask.replace(new RegExp(/\|h\|/),"[h]")}i.call(t,t.mask);var l=null,c=null;if("percent"==t.type||"percent"==t.options.style?l="percentage":t.mask&&(l=w.call(t,t.mask)),"general"===l){var u=E(e,t,!0);c=e}else"datetime"===l?(e instanceof Date&&(e=E.getDateString(e,t.mask)),u=E(e,t,!0),c=a.isNumeric(e)?e:n.call(u)):(c=d.call(t,e),"percentage"===l&&-1!==e.indexOf("%")&&(c/=100),u=t);return u.value=c,!u.type&&l&&(u.type=l),r?u:c},E.render=function(e,t,n){if(o(e))return e;if("object"!=typeof t)return e;if((t=Object.assign({},t)).options||(t.options={}),!t.mask&&t.format&&(t.mask=t.format),t.mask){if(-1!==t.mask.indexOf(";")){var r=t.mask.split(";");n||(r[0]=r[0].replace(new RegExp(/_\)/g),""),r[0]=r[0].replace(new RegExp(/_\(/g),"")),t.mask=r[0]}t.mask=t.mask.replace(new RegExp(/\[h]/),"|h|"),t.mask=t.mask.replace(new RegExp(/\[.*?\]/),""),t.mask=t.mask.replace(new RegExp(/\|h\|/),"[h]")}var a=null;"percent"==t.type||"percent"==t.options.style?a="percentage":t.mask?a=w.call(t,t.mask):e instanceof Date&&(a="datetime");var s=!1;if("datetime"==a||"calendar"==t.type)(r=E.getDateString(e,t.mask))&&(e=r),t.mask&&n&&(s=!0);else if("percentage"==a&&(e*=100),"number"==typeof e){if(r=null,t.mask&&n&&-1===(""+e).indexOf("e")){var l=i.call(t,t.mask);-1!==t.mask.indexOf(l)?(l=(l=""+(l=t.mask.split(l))[1].match(/[0-9]+/g)).length,r=e.toFixed(l)):r=e.toFixed(0)}else if(t.locale&&n){if(l=(""+e).split("."),t.options){void 0===l[1]&&(l[1]="");var c=l[1].length;if(t.options.minimumFractionDigits>c)for(var u=0;u0)for(u=0;u3)for(e=""+e;e.length0&&Number(e)==e&&(n.values.join("")!==n.value||"numeric"==n.type)){var o=new Date(Math.round(86400*(e-25569)*1e3));return o.getFullYear()+"-"+a.two(o.getMonth())+"-"+a.two(o.getDate())+" 00:00:00"}var r=!1;return n.values.length===n.tokens.length&&n.values[n.values.length-1].length>=n.tokens[n.tokens.length-1].length&&(r=!0),n.date[0]&&n.date[1]&&(n.date[2]||r)?(n.date[2]||(n.date[2]=1),n.date[0]+"-"+a.two(n.date[1])+"-"+a.two(n.date[2])+" "+a.two(n.date[3])+":"+a.two(n.date[4])+":"+a.two(n.date[5])):""},E.getDateString=function(e,t){if(t||(t={}),t&&"object"==typeof t)var n=t.format;else n=t;if(n||(n="YYYY-MM-DD"),n.indexOf("[h]")>=0){var o=0;if(e&&a.isNumeric(e)&&(o=parseFloat(24*Number(e)),n.indexOf("mm")>=0)){if((f=(""+o).split("."))[1]){var r=60*parseFloat("0."+f[1]);r=parseFloat(r.toFixed(2))}else r=0;o=parseInt(f[0])+":"+a.two(r)}return o}e instanceof Date?e=s.now(e):e&&a.isNumeric(e)&&(e=s.numToDate(e));for(var i=new RegExp(["DAY","WD","DDDD","DDD","DD","D","Q","HH24","HH12","HH","H","AM/PM","MI","SS","MS","YYYY","YYY","YY","Y","MONTH","MON","MMMMM","MMMM","MMM","MM","M","."].join("|"),"gi"),l=n.match(i),c=0;c=0||l[c-2]&&l[c-2].toUpperCase().indexOf("H")>=0||l[c+1]&&l[c+1].toUpperCase().indexOf("S")>=0||l[c+2]&&l[c+2].toUpperCase().indexOf("S")>=0)&&(l[c]="mi");var u={tokens:l};if(e){var d=-1!==(r=""+e).indexOf("T")?"T":" ",f=0,p=0,h=0;if((r=r.split(d))[1]&&(p=(f=r[1].split(":"))[1]?f[1]:0,h=f[2]?f[2]:0,f=f[0]?f[0]:0),(r=r[0].split("-"))[0]&&r[1]&&r[2]&&r[0]>0&&r[1]>0&&r[1]<13&&r[2]>0&&r[2]<32){u.data=[r[0],r[1],r[2],f,p,h],u.value=[];var m=new Date(u.data[0],u.data[1]-1,u.data[2],u.data[3],u.data[4],u.data[5]),g=function(e){var t=this.tokens[e],n=t.toUpperCase(),o=null;"YYYY"===n?o=this.data[0]:"YYY"===n?o=this.data[0].substring(1,4):"YY"===n?o=this.data[0].substring(2,4):"Y"===n?o=this.data[0].substring(3,4):"MON"===t?o=s.months[m.getMonth()].substr(0,3).toUpperCase():"mon"===t?o=s.months[m.getMonth()].substr(0,3).toLowerCase():"MONTH"===t?o=s.months[m.getMonth()].toUpperCase():"month"===t?o=s.months[m.getMonth()].toLowerCase():"MMMMM"===n?o=s.months[m.getMonth()].substr(0,1):"MMMM"===n||"Month"===t?o=s.months[m.getMonth()]:"MMM"===n||"Mon"==t?o=s.months[m.getMonth()].substr(0,3):"MM"===n?o=a.two(this.data[1]):"M"===n?o=m.getMonth()+1:"DAY"===t?o=s.weekdays[m.getDay()].toUpperCase():"day"===t?o=s.weekdays[m.getDay()].toLowerCase():"DDDD"===n||"Day"==t?o=s.weekdays[m.getDay()]:"DDD"===n?o=s.weekdays[m.getDay()].substr(0,3):"DD"===n?o=a.two(this.data[2]):"D"===n?o=parseInt(this.data[2]):"Q"===n?o=Math.floor((m.getMonth()+3)/3):"HH24"===n||"HH"===n?((o=this.data[3])>12&&-1!==this.tokens.indexOf("am/pm")&&(o-=12),o=a.two(o)):"HH12"===n?o=this.data[3]>12?a.two(this.data[3]-12):a.two(this.data[3]):"H"===n?(o=this.data[3])>12&&-1!==this.tokens.indexOf("am/pm")&&(o-=12,o=a.two(o)):"MI"===n?o=a.two(this.data[4]):"SS"===n?o=a.two(this.data[5]):"MS"===n?o=m.getMilliseconds():"AM/PM"===n?o=this.data[3]>=12?"PM":"AM":"WD"===n&&(o=s.weekdays[m.getDay()]),this.value[e]=null===o?this.tokens[e]:o};for(c=0;c0&&(o.options.value=e.numToDate(o.options.value),o.options.dataType="numeric"),f.innerHTML=o.options.textReset,p.innerHTML=o.options.textDone,E.innerHTML=o.options.textUpdate,t.setAttribute("data-mask",o.options.format.toLowerCase()),!o.options.value&&o.options.today)var u=e.now();else u=o.options.value;return u&&(o.options.value=null,o.setValue(u)),o},open:function(n){if(!d.classList.contains("jcalendar-focus")&&!d.classList.contains("jcalendar-inline")){if(e.current=o,u(o,!0),o.getDays(),"year-month-picker"==o.options.type&&o.getMonths(),o.options.time&&(_.value=o.date[3],M.value=o.date[4]),d.classList.add("jcalendar-focus"),a.getWindowWidth()<800||o.options.fullscreen)d.classList.add("jcalendar-fullsize"),m.slideBottom(g,1);else{d.classList.remove("jcalendar-fullsize");var r=t.getBoundingClientRect(),i=g.getBoundingClientRect();if(o.options.position)h.style.position="fixed",window.innerHeight11?(o.date[0]=parseInt(o.date[0])+1,o.date[1]=1):o.date[1]=parseInt(o.date[1])+1,o.getDays())},setToday:function(){var e=(new Date).toISOString().substr(0,10);return o.setValue(e),e},setValue:function(n){n||(n=""+n);var r=n,i=o.options.value;if(i!=r){if(r){o.setLabel(r,o.options),(s=r.split(" "))[1]||(s[1]="00:00:00");var a=s[1].split(":"),s=s[0].split("-"),l=parseInt(s[0]),u=parseInt(s[1]),d=parseInt(s[2]),f=parseInt(a[0]),p=parseInt(a[1]);o.date=[l,u,d,f,p,0],n=o.setLabel(r,o.options);var h=e.now(new Date(l,u-1,d),!0);if(o.options.validRange){if(!o.options.validRange[0]||h>=o.options.validRange[0])var m=!0;else m=!1;if(!o.options.validRange[1]||h<=o.options.validRange[1])var g=!0;else g=!1;m&&g?(t.classList.remove("jcalendar_warning"),t.title=""):(t.classList.add("jcalendar_warning"),t.title=c.translate("Date outside the valid range"))}else t.classList.remove("jcalendar_warning"),t.title=""}else{o.date=null;var n="";t.classList.remove("jcalendar_warning"),t.title=""}o.options.value=r,"function"==typeof o.options.onchange&&o.options.onchange(t,r,i),t.value!=n&&(t.value=n,"function"==typeof t.oninput&&t.oninput({type:"input",target:t,value:t.value}))}o.getDays(),"year-month-picker"==o.options.type&&o.getMonths()},getValue:function(){return o.date?o.options.time?a.two(o.date[0])+"-"+a.two(o.date[1])+"-"+a.two(o.date[2])+" "+a.two(o.date[3])+":"+a.two(o.date[4])+":"+a.two(0):a.two(o.date[0])+"-"+a.two(o.date[1])+"-"+a.two(o.date[2])+" "+a.two(0)+":"+a.two(0)+":"+a.two(0):""},update:function(e,t){if(e.classList.contains("jcalendar-disabled"));else{var n=d.querySelector(".jcalendar-selected");n&&n.classList.remove("jcalendar-selected"),e.classList.add("jcalendar-selected"),e.classList.contains("jcalendar-set-month")?(o.date[1]=t,o.date[2]=1):o.date[2]=e.innerText,o.options.time?(o.date[3]=_.value,o.date[4]=M.value):o.close(null,!0)}l()},reset:function(){o.setValue(""),o.date=null,o.close(!1,!1)},getDays:function(){o.options.mode="days";var t=new Date,n=o.date&&a.isNumeric(o.date[0])?o.date[0]:parseInt(t.getFullYear()),r=o.date&&a.isNumeric(o.date[1])?o.date[1]:parseInt(t.getMonth())+1,i=o.date&&a.isNumeric(o.date[2])?o.date[2]:parseInt(t.getDate()),s=o.date&&a.isNumeric(o.date[3])?o.date[3]:parseInt(t.getHours()),c=o.date&&a.isNumeric(o.date[4])?o.date[4]:parseInt(t.getMinutes());o.date=[n,r,i,s,c,0],b.innerHTML=n,j.innerHTML=o.options.months[r-1];var u=t.getMonth()==r-1&&t.getFullYear()==n,d=t.getDate(),f=(t=new Date(n,r,0,0,0)).getDate(),p=(t=new Date(n,r-1,0,0,0)).getDay()+1;p-=m=o.options.startingDay||0,y.innerHTML="",(x=document.createElement("tr")).setAttribute("align","center"),y.appendChild(x);for(var h=0;h<7;h++)(C=document.createElement("td")).classList.add("jcalendar-weekday"),C.innerHTML=o.options.weekdays[m].substr(0,1),x.appendChild(C),++m>6&&(m=0);for(var m=0,g=0,v=0;v<6;v++){var x;for((x=document.createElement("tr")).setAttribute("align","center"),x.style.height="34px",h=0;h<7;h++){var C;if((C=document.createElement("td")).classList.add("jcalendar-set-day"),m>=p&&m=o.options.validRange[0])var _=!0;else _=!1;if(!o.options.validRange[1]||E<=o.options.validRange[1])var M=!0;else M=!1;_&&M||C.classList.add("jcalendar-disabled")}}x.appendChild(C),m++}y.appendChild(x)}o.options.time?w.style.display="":w.style.display="none",l()},getMonths:function(){o.options.mode="months";var e=o.options.months,t=(o.options.value,new Date),n=parseInt(t.getFullYear()),r=parseInt(t.getMonth())+1,i=o.date&&a.isNumeric(o.date[0])?o.date[0]:n,s=o.date&&a.isNumeric(o.date[1])?o.date[1]:r;b.innerHTML=o.date[0],j.innerHTML=e[s-1];var c=document.createElement("table");c.setAttribute("width","100%");for(var u=null,d=0;d<12;d++){d%4||((u=document.createElement("tr")).setAttribute("align","center"),c.appendChild(u));var f=document.createElement("td");if(f.classList.add("jcalendar-set-month"),f.setAttribute("data-value",d+1),f.innerText=e[d],o.options.validRange){var p=i+"-"+a.two(d+1);if(!o.options.validRange[0]||p>=o.options.validRange[0].substr(0,7))var h=!0;else h=!1;if(!o.options.validRange[1]||p<=o.options.validRange[1].substr(0,7))var m=!0;else m=!1;h&&m||f.classList.add("jcalendar-disabled")}d+1==s&&f.classList.add("jcalendar-selected"),n==i&&d+1==r&&(f.style.fontWeight="bold"),u.appendChild(f)}y.innerHTML='',y.children[0].children[0].appendChild(c),l()},getYears:function(){o.options.mode="years";for(var e=new Date,t=e.getFullYear(),n=o.date&&a.isNumeric(o.date[0])?o.date[0]:parseInt(e.getFullYear()),r=[],i=0;i<25;i++)r[i]=parseInt(o.date[0])+(i-12);var s=document.createElement("table");for(s.setAttribute("width","100%"),i=0;i<25;i++){if(!(i%5)){var c=document.createElement("tr");c.setAttribute("align","center"),s.appendChild(c)}var u=document.createElement("td");u.classList.add("jcalendar-set-year"),u.innerText=r[i],n==r[i]&&u.classList.add("jcalendar-selected"),t==r[i]&&(u.style.fontWeight="bold"),c.appendChild(u)}y.innerHTML='',y.firstChild.firstChild.appendChild(s),l()},setLabel:function(t,n){return e.getDateString(t,n)},fromFormatted:function(t,n){return e.extractDateFromString(t,n)}},r=function(e){if(a.findElement(e.target,"jcalendar-container")){var t=e.target.className;if("jcalendar-prev"==t)o.prev();else if("jcalendar-next"==t)o.next();else if("jcalendar-month"==t)o.getMonths();else if("jcalendar-year"==t)o.getYears();else if("jcalendar-set-year"==t)o.date[0]=e.target.innerText,"year-month-picker"==o.options.type?o.getMonths():o.getDays();else if(e.target.classList.contains("jcalendar-set-month")){var n=parseInt(e.target.getAttribute("data-value"));"year-month-picker"==o.options.type?o.update(e.target,n):(o.date[1]=n,o.getDays())}else"jcalendar-confirm"==t||"jcalendar-update"==t||"jcalendar-close"==t?o.close(null,!0):"jcalendar-backdrop"==t?o.close(!1,!1):"jcalendar-reset"==t?o.reset():e.target.classList.contains("jcalendar-set-day")&&e.target.innerText&&o.update(e.target)}else o.close(!1,!1)},i=function(t){if(t.target.value&&t.target.value.length>3){var n=e.extractDateFromString(t.target.value,o.options.format);n&&o.setValue(n)}},l=function(){var e=d.querySelector(".jcalendar-selected");e&&e.classList.contains("jcalendar-disabled")?(E.setAttribute("disabled","disabled"),_.setAttribute("disabled","disabled"),M.setAttribute("disabled","disabled")):(E.removeAttribute("disabled"),_.removeAttribute("disabled"),M.removeAttribute("disabled")),"function"==typeof o.options.onupdate&&o.options.onupdate(t,o.getValue())},d=null,f=null,p=null,h=null,g=null,b=null,j=null,v=null,y=null,x=null,w=null,C=null,E=null,_=null,M=null;return function(){"INPUT"==t.tagName&&t.value&&(n.value=t.value),(f=document.createElement("div")).className="jcalendar-reset",(p=document.createElement("div")).className="jcalendar-confirm",(x=document.createElement("div")).className="jcalendar-controls",x.style.borderBottom="1px solid #ddd",x.appendChild(f),x.appendChild(p),(h=document.createElement("div")).className="jcalendar-container",(g=document.createElement("div")).className="jcalendar-content",h.appendChild(g),"DIV"==t.tagName?(d=t).classList.add("jcalendar-inline"):(g.appendChild(x),(d=document.createElement("div")).className="jcalendar"),d.classList.add("jcalendar-container"),d.appendChild(h);var s=document.createElement("div");s.className="jcalendar-table",g.appendChild(s);var l=document.createElement("td");l.setAttribute("colspan","2"),l.className="jcalendar-prev",(b=document.createElement("span")).className="jcalendar-year",(j=document.createElement("span")).className="jcalendar-month";var c=document.createElement("td");c.className="jcalendar-header",c.setAttribute("colspan","3"),c.appendChild(j),c.appendChild(b);var u=document.createElement("td");u.setAttribute("colspan","2"),u.className="jcalendar-next";var A=document.createElement("thead"),T=document.createElement("tr");T.appendChild(l),T.appendChild(c),T.appendChild(u),A.appendChild(T),v=document.createElement("table"),y=document.createElement("tbody"),v.setAttribute("cellpadding","0"),v.setAttribute("cellspacing","0"),v.appendChild(A),v.appendChild(y),s.appendChild(v),(_=document.createElement("select")).className="jcalendar-select",_.onchange=function(){o.date[3]=this.value,"function"==typeof o.options.onupdate&&o.options.onupdate(t,o.getValue())};for(var L=0;L<24;L++)(D=document.createElement("option")).value=L,D.innerHTML=a.two(L),_.appendChild(D);for((M=document.createElement("select")).className="jcalendar-select",M.onchange=function(){o.date[4]=this.value,"function"==typeof o.options.onupdate&&o.options.onupdate(t,o.getValue())},L=0;L<60;L++){var D;(D=document.createElement("option")).value=L,D.innerHTML=a.two(L),M.appendChild(D)}var I=document.createElement("div");I.className="jcalendar-controls",(w=document.createElement("div")).className="jcalendar-time",w.style.maxWidth="140px",w.appendChild(_),w.appendChild(M),(E=document.createElement("button")).setAttribute("type","button"),E.className="jcalendar-update",(C=document.createElement("div")).style.flexGrow="10",C.appendChild(E),I.appendChild(w),"INPUT"==t.tagName&&I.appendChild(C),g.appendChild(I);var S=document.createElement("div");S.className="jcalendar-backdrop",d.appendChild(S),t.addEventListener("keyup",i),d.addEventListener("swipeleft",(function(e){m.slideLeft(v,0,(function(){o.next(),m.slideRight(v,1)})),e.preventDefault(),e.stopPropagation()})),d.addEventListener("swiperight",(function(e){m.slideRight(v,0,(function(){o.prev(),m.slideLeft(v,1)})),e.preventDefault(),e.stopPropagation()})),"ontouchend"in document.documentElement==1?(d.addEventListener("touchend",r),t.addEventListener("touchend",o.open)):(d.addEventListener("mouseup",r),t.addEventListener("mouseup",o.open)),e.hasEvents||(e.hasEvents=!0,document.addEventListener("keydown",e.keydown)),o.setOptions(n),"INPUT"==t.tagName?(t.parentNode.insertBefore(d,t.nextSibling),t.setAttribute("autocomplete","off"),t.classList.add("jcalendar-input"),t.value=o.setLabel(o.getValue(),o.options)):(o.getDays(),o.options.time&&(_.value=o.date[3],M.value=o.date[4])),1==o.options.opened&&o.open(),0==o.options.controls&&h.classList.add("jcalendar-hide-controls"),t.change=o.setValue,t.val=function(e){if(void 0===e)return o.getValue();o.setValue(e)},t.calendar=d.calendar=o}(),o};return e.keydown=function(t){var n=null;(n=e.current)&&(13==t.which?n.close(!1,!0):27==t.which&&n.close(!1,!1))},e.prettify=function(e,t){t||(t={justNow:"Just now",xMinutesAgo:"{0}m ago",xHoursAgo:"{0}h ago",xDaysAgo:"{0}d ago",xWeeksAgo:"{0}w ago",xMonthsAgo:"{0} mon ago",xYearsAgo:"{0}y ago"}),-1===e.indexOf("GMT")&&-1===e.indexOf("Z")&&(e+=" GMT");var n=new Date,o=new Date(e),r=parseInt((n-o)/1e3/60);if(String.prototype.format=function(e){return this.replace("{0}",e)},0==r)var i=t.justNow;else i=r<90?t.xMinutesAgo.format(r):r<1440?t.xHoursAgo.format(Math.round(r/60)):r<20160?t.xDaysAgo.format(Math.round(r/1440)):r<43200?t.xWeeksAgo.format(Math.round(r/10080)):r<1036800?t.xMonthsAgo.format(Math.round(r/43200)):t.xYearsAgo.format(Math.round(r/525600));return i},e.prettifyAll=function(){for(var t=document.querySelectorAll(".prettydate"),n=0;n=n.headers.scrollWidth-n.headers.offsetWidth?a.classList.add("disabled"):a.classList.remove("disabled"),n.headers.scrollWidth<=n.headers.offsetWidth?(i.style.display="none",a.style.display="none"):(i.style.display="",a.style.display="")};if(n.setBorder=l,n.open=function(t){for(var o=null,r=0;r=a||c(i-1)}},n.selectIndex=function(e){var t=Array.prototype.indexOf.call(n.headers.children,e);return t>=0&&n.open(t),t},n.rename=function(e,t){t||(t=prompt("New title",n.headers.children[e].innerText)),n.headers.children[e].innerText=t,n.open(e)},n.create=function(t,o){if("function"==typeof n.options.onbeforecreate){var r=n.options.onbeforecreate(e);if(!1===r)return!1;t=r}var i=n.appendElement(t);return"function"==typeof n.options.oncreate&&n.options.oncreate(e,i),l(),i},n.remove=function(e){return n.deleteElement(e)},n.nextNumber=function(){for(var e=0,t=0;te&&(e=parseInt(o))}return e?e++:e=1,e},n.deleteElement=function(t){if(!n.headers.children[t])return!1;n.headers.removeChild(n.headers.children[t]),n.content.removeChild(n.content.children[t]),n.open(0),"function"==typeof n.options.ondelete&&n.options.ondelete(e,t)},n.appendElement=function(e,t){if(e||(e=prompt("Title?","")),e){var o=document.createElement("div");n.content.appendChild(o);var r=document.createElement("div");return r.innerHTML=e,r.content=o,n.headers.insertBefore(r,n.headers.lastChild),n.options.allowChangePosition&&r.setAttribute("draggable","true"),n.selectIndex(r),"function"==typeof t&&t(o,r),o}},n.getActive=function(){for(var e=0;et?n.content.insertBefore(n.content.children[e],n.content.children[t]):n.content.insertBefore(n.content.children[e],n.content.children[t].nextSibling),n.open(t),o||"function"!=typeof n.options.onchangeposition||n.options.onchangeposition(n.headers,e,t)},n.move=function(e,t,o){e>t?n.headers.insertBefore(n.headers.children[e],n.headers.children[t]):n.headers.insertBefore(n.headers.children[e],n.headers.children[t].nextSibling),n.updatePosition(e,t,o)},n.setBorder=l,n.init=function(){e.innerHTML="",n.headers=document.createElement("div"),n.content=document.createElement("div"),n.headers.classList.add("jtabs-headers"),n.content.classList.add("jtabs-content"),n.options.palette?e.classList.add("jtabs-modern"):e.classList.remove("jtabs-modern"),n.options.padding&&(n.content.style.padding=parseInt(n.options.padding)+"px");var t=document.createElement("div");t.className="jtabs-headers-container",t.appendChild(n.headers),n.options.maxWidth&&(t.style.maxWidth=parseInt(n.options.maxWidth)+"px");var o=document.createElement("div");if(o.className="jtabs-controls",o.setAttribute("draggable","false"),t.appendChild(o),"bottom"==n.options.position?(e.appendChild(n.content),e.appendChild(t)):(e.appendChild(t),e.appendChild(n.content)),1==n.options.allowCreate){var r=document.createElement("div");r.className="jtabs-add",r.onclick=function(){n.create()},o.appendChild(r)}(i=document.createElement("div")).className="jtabs-prev",i.onclick=function(){c(n.headers.scrollLeft-n.headers.offsetWidth)},o.appendChild(i),(a=document.createElement("div")).className="jtabs-next",a.onclick=function(){c(n.headers.scrollLeft+n.headers.offsetWidth)},o.appendChild(a);for(var l=0;ls&&(i.style.marginLeft=-1*(t.left+t.width-(s-20))+"px"),t.top+t.height>l&&(i.style.marginTop=-1*(t.top+t.height-(l-20))+"px")),"function"==typeof n.options.onopen&&n.options.onopen(e,n),d.setBorder(d.getActive()),n.options.value){var c=g(n.options.value);M.forEach((function(e,t){e.value=c[t],e.dispatchEvent(new Event("input"))}))}}},n.close=function(t){return o.classList.contains("jcolor-focus")&&(o.classList.remove("jcolor-focus"),r.style.display="",t||"function"!=typeof n.options.onclose||n.options.onclose(e,n),u(n,!1)),n.options.value},n.setValue=function(t){t||(t=""),t!=n.options.value&&(n.options.value=t,_=t,n.select(t),"function"==typeof n.options.onchange&&n.options.onchange(e,t,n),e.value!=n.options.value&&(e.value=n.options.value,"INPUT"===e.tagName&&(e.style.color=e.value,e.style.backgroundColor=e.value),"function"==typeof e.oninput&&e.oninput({type:"input",target:e,value:e.value})),1==n.options.closeOnChange&&n.close())},n.getValue=function(){return n.options.value};var f=function(e){var t=e.toString(16);return 1===t.length?"0"+t:t},p=function(e,t,n){return"#"+f(e)+f(t)+f(n)},h=function(e){return parseInt("0x"+e)},g=function(e){return[h(e.substr(1,2)),h(e.substr(3,2)),h(e.substr(5,2))]},b=function(){var e=document.createElement("div");e.className="jcolor-grid",n.values=[];var t=document.createElement("table");t.setAttribute("cellpadding","7"),t.setAttribute("cellspacing","0");for(var o=0;oi.width&&(a=i.width),s>i.height&&(s=i.height),t.style.left=a+"px",t.style.top=s+"px";var l=x.getImageData(a,s,1,1).data;_=p(l[0],l[1],l[2])}};return e.addEventListener("mousedown",(function(e){o(e.buttons,e.clientX,e.clientY)})),e.addEventListener("mousemove",(function(e){o(e.buttons,e.clientX,e.clientY)})),e.addEventListener("touchmove",(function(e){o(1,e.changedTouches[0].clientX,e.changedTouches[0].clientY)})),e},_="",M=[],A=function(){var e=document.createElement("div");e.className="jcolor-sliders";var t=document.createElement("div"),n=function(e){var n=document.createElement("div");n.className="jcolor-sliders-input-container";var o=document.createElement("label");o.innerText=e;var r=document.createElement("div");r.className="jcolor-sliders-input-subcontainer";var i=document.createElement("input");i.type="range",i.min=0,i.max=255,i.value=0,n.appendChild(o),r.appendChild(i);var a=document.createElement("div");return a.innerText=i.value,i.addEventListener("input",(function(){a.innerText=i.value})),r.appendChild(a),n.appendChild(r),t.appendChild(n),i};M=[n("Red"),n("Green"),n("Blue")],e.appendChild(t);var o=document.createElement("div");o.className="jcolor-sliders-final-color";var r=document.createElement("div");return r.style.visibility="hidden",r.innerText="a",o.appendChild(r),M.forEach((function(e){e.addEventListener("input",(function(){var e;e=p(parseInt(M[0].value),parseInt(M[1].value),parseInt(M[2].value)),r.innerText=e,r.style.color=e,r.style.removeProperty("visibility"),_=e,function(){if(""!==_)for(var e=0;e0&&n.setValue(_),n.close()):e.target.classList.contains("jcolor-backdrop")?n.close():n.open()})),e.addEventListener("mouseup",(function(e){n.open()})),window.addEventListener("resize",(function(){o.classList.contains("jcolor-focus")&&1==d.getActive()&&w()})),1==n.options.opened&&n.open(),e.change=n.setValue,e.val=function(e){if(void 0===e)return n.getValue();n.setValue(e)},e.color=n,o.color=n}(),n}var x=function(){var e=function(t,n){var o={type:"contextmenu",options:{}},r={items:null,onclick:null};for(var i in r)n&&n.hasOwnProperty(i)?o.options[i]=n[i]:o.options[i]=r[i];function a(e){if(!e.type||"line"!=e.type&&"divisor"!=e.type){c=document.createElement("div");var t=document.createElement("a");if(t.innerHTML=e.title,e.tooltip&&c.setAttribute("title",e.tooltip),e.icon&&c.setAttribute("data-icon",e.icon),e.id&&(c.id=e.id),e.disabled?c.className="jcontextmenu-disabled":e.onclick&&(c.method=e.onclick,c.addEventListener("mousedown",(function(e){e.preventDefault()})),c.addEventListener("mouseup",(function(e){this.method(this,e)}))),c.appendChild(t),e.submenu){var n=document.createElement("span");n.innerHTML="►",c.appendChild(n),c.classList.add("jcontexthassubmenu");var o=document.createElement("div");o.classList.add("jcontextmenu"),o.setAttribute("tabindex","900");for(var r=e.submenu,i=0;i0||t.children.length){if(n.target)if(n.changedTouches&&n.changedTouches[0])i=n.changedTouches[0].clientX,a=n.changedTouches[0].clientY;else var i=n.clientX,a=n.clientY;else i=n.x,a=n.y;var s=t.getBoundingClientRect();if(window.innerHeight0?t.style.left=i-s.width+"px":t.style.left="10px":t.style.left=i+"px"}},o.isOpened=function(){return!!t.classList.contains("jcontextmenu-focus")},o.close=function(){t.classList.contains("jcontextmenu-focus")&&t.classList.remove("jcontextmenu-focus"),u(o,!1)},o.create=function(e){t.innerHTML="";var n=function(){var e=document.createElement("div");e.classList.add("header"),e.addEventListener("click",(function(e){e.preventDefault(),e.stopPropagation()}));var t=document.createElement("a");t.classList.add("title"),t.innerHTML=c.translate("Menu"),e.appendChild(t);var n=document.createElement("a");return n.classList.add("close"),n.innerHTML=c.translate("close"),n.addEventListener("click",(function(e){o.close()})),e.appendChild(n),e}();t.appendChild(n);for(var r=0;r0)for(r=0;r0&&y.appendChild(s)}if(t.length)for(r=0;r200&&(l=200),t=0;tn&&(r=o.items[a[s].indexValue])&&(i=r.element.innerText[0])&&e==(i=i.toLowerCase())){t=a[s].indexValue;break}o.setCursor(t)}}}else if(null==o.currentIndex||null==o.currentIndex)o.first();else{var l=o.items[o.currentIndex].element,c=l.nextElementSibling;c?(c.classList.contains("jdropdown-group")&&(c=c.lastChild.firstChild),t=c.indexValue):l.parentNode.classList.contains("jdropdown-group-items")&&((c=l.parentNode.parentNode.nextElementSibling)&&(c.classList.contains("jdropdown-group")?c=c.lastChild.firstChild:c.classList.contains("jdropdown-item")?t=c.indexValue:c=null),c&&(t=c.indexValue)),null!==t&&o.setCursor(t)}},o.prev=function(){var e=null;if(null===o.currentIndex)o.first();else{var t=o.items[o.currentIndex].element,n=t.previousElementSibling;n?(n.classList.contains("jdropdown-group")&&(n=n.lastChild.lastChild),e=n.indexValue):t.parentNode.classList.contains("jdropdown-group-items")&&((n=t.parentNode.parentNode.previousElementSibling)&&(n.classList.contains("jdropdown-group")?n=n.lastChild.lastChild:n.classList.contains("jdropdown-item")?e=n.indexValue:n=null),n&&(e=n.indexValue))}null!==e&&o.setCursor(e)},o.loadFirst=function(){if(o.results)var e=o.results;else e=o.items;var t=e.length||0;1==o.options.lazyLoading&&t>200&&(t=200),y.textContent="";for(var n=0;n200){t-=200,y.textContent="";for(var n=t;n0){for(var i=0;r>0&&t[r]&&i<200;)t[r].group?(t[r].group.parentNode||y.insertBefore(t[r].group,y.firstChild),t[r].group.lastChild.insertBefore(t[r].element,t[r].group.lastChild.firstChild)):y.insertBefore(t[r].element,y.firstChild),r--,i++;e=!0}return e},o.loadDown=function(){var e=!1;if(o.results)var t=o.results;else t=o.items;var n=y.querySelectorAll(".jdropdown-item"),r=n[n.length-1].indexValue;r=o.items[r];var i=t.indexOf(r)+1;if(i0&&n.prev(),t.preventDefault();else if(40==t.which)null==n.currentIndex?n.first():n.currentIndex+10)for(var o=0;o<7;o++)n.prev();t.preventDefault()}else if(34==t.which){if(null==n.currentIndex)n.first();else if(n.currentIndex+10&&(n.options.grid?(r.classList.add("jpicker-grid"),r.style.gridTemplateColumns="repeat("+n.options.grid+", 1fr)"):(r.classList.add("jpicker-columns"),r.style.width=n.options.width?n.options.width:36*n.options.columns+"px")),isNaN(parseInt(n.options.value))&&(n.options.value=0),function(){r.innerHTML="";for(var e=Object.keys(n.options.data),t=0;t'+n.options.content+"":n.getLabel(e,null),i(t)?(o.innerHTML="",o.appendChild(t)):o.innerHTML=t},n.open=function(){if(!e.classList.contains("jpicker-focus")){u(n,!0),e.classList.add("jpicker-focus"),e.focus();var t=0,i=0;r.style.marginLeft="";var a=o.getBoundingClientRect(),s=r.getBoundingClientRect();t=window.innerHeightwindow.innerWidth&&(i=-1*(10+s.left+s.width-window.innerWidth)),r.style.marginTop=parseInt(t)+"px",r.style.marginLeft=parseInt(i)+"px","function"==typeof n.options.onopen&&n.options.onopen(e,n)}},n.close=function(){e.classList.contains("jpicker-focus")&&(e.classList.remove("jpicker-focus"),u(n,!1),"function"==typeof n.options.onclose&&n.options.onclose(e,n))},e.classList.add("jpicker"),e.setAttribute("tabindex","900"),e.onmousedown=function(t){e.classList.contains("jpicker-focus")||n.open()},(o=document.createElement("div")).classList.add("jpicker-header"),(r=document.createElement("div")).classList.add("jpicker-content"),r.onclick=function(e){var t=a.findElement(e.target,"jpicker-item");t&&t.parentNode===r&&n.setValue(t.k,e)},e.appendChild(o),e.appendChild(r),e.value=t.value||0,n.setOptions(t),"function"==typeof n.options.onload&&n.options.onload(e,n),e.change=n.setValue,e.val=function(e){if(void 0===e)return n.getValue();n.setValue(e)},e.picker=n,n}function E(e,t){var n={type:"toolbar",options:{}},o={app:null,container:!1,badge:!1,title:!1,responsive:!1,maxWidth:null,bottom:!0,items:[]};for(var r in o)t&&t.hasOwnProperty(r)?n.options[r]=t[r]:n.options[r]=o[r];!e&&t.app&&t.app.el&&(e=document.createElement("div"),t.app.el.appendChild(e));var i=document.createElement("div");i.classList.add("jtoolbar-item"),i.classList.add("jtoolbar-arrow");var s=document.createElement("div");s.classList.add("jtoolbar-floating"),i.appendChild(s),n.selectItem=function(e){for(var t=l.children,n=0;nwindow.innerHeight||n.options.bottom?s.style.bottom="0":s.style.removeProperty("bottom"),s.style.right="0",i.children[0].focus(),u(n,!0)},n.close=function(){i.classList.remove("jtoolbar-arrow-selected"),u(n,!1)},n.refresh=function(){if(1==n.options.responsive){var t=e.parentNode.getBoundingClientRect();n.options.maxWidth||(n.options.maxWidth=t.width);var o=parseInt(n.options.maxWidth);for(i.parentNode&&i.parentNode.removeChild(i);s.firstChild;)l.appendChild(s.firstChild);if(o0&&l.appendChild(i)}},n.setReadonly=function(t){t=t?"add":"remove",e.classList[t]("jtoolbar-disabled")},e.onclick=function(e){var t=a.findElement(e.target,"jtoolbar-item");t&&n.selectItem(t),e.target.classList.contains("jtoolbar-arrow")&&n.open()},window.addEventListener("resize",(function(){n.refresh()})),e.classList.add("jtoolbar"),e.innerHTML="",1==n.options.container&&e.classList.add("jtoolbar-container");var l=document.createElement("div");return e.appendChild(l),n.options.app&&e.classList.add("jtoolbar-mobile"),n.create(n.options.items),e.toolbar=n,n}var _=function(){var e=function(t,n){var o={type:"editor",options:{}},r={url:null,value:"",snippet:null,toolbar:!0,toolbarOnTop:!1,remoteParser:null,placeholder:null,filterPaste:!0,dropZone:!0,dropAsSnippet:!1,acceptImages:!0,acceptFiles:!1,maxFileSize:5e6,allowImageResize:!0,maxHeight:null,height:null,focus:!1,onclick:null,onfocus:null,onblur:null,onload:null,onkeyup:null,onkeydown:null,onchange:null,extensions:null,type:null};for(var i in r)n&&n.hasOwnProperty(i)?o.options[i]=n[i]:o.options[i]=r[i];var s=null,l=null,c=[];o.el=t,"function"==typeof o.options.onclick&&(t.onclick=function(e){o.options.onclick(t,o,e)}),t.classList.add("jeditor-container");var u=document.createElement("div");u.className="jsnippet",u.setAttribute("contenteditable",!1);var d=document.createElement("div");if(d.className="jeditor-toolbar",o.editor=document.createElement("div"),o.editor.setAttribute("contenteditable",!0),o.editor.setAttribute("spellcheck",!1),o.editor.classList.add("jeditor"),o.options.placeholder&&o.editor.setAttribute("data-placeholder",o.options.placeholder),(o.options.maxHeight||o.options.height)&&(o.editor.style.overflowY="auto",o.options.maxHeight&&(o.editor.style.maxHeight=o.options.maxHeight),o.options.height&&(o.editor.style.height=o.options.height)),o.options.url)h({url:o.options.url,dataType:"html",success:function(t){o.editor.innerHTML=t,e.setCursor(o.editor,"initial"==o.options.focus)}});else if(o.options.value)o.editor.innerHTML=o.options.value;else for(var f=0;f4?4:t),t>4?e.setAttribute("data-total",t-4):e.removeAttribute("data-total")}};o.appendSnippet=function(e){u.innerHTML="";for(var t=["image","title","description","host","url"],n=0;n/g,"\n")).replace(/<\/div>/g,"\n")).replace(/<(?:.|\n)*?>/gm,""),d.content=l.trim(),O("getData",d)}else var d=o.editor.innerHTML;return d},o.reset=function(){o.editor.innerHTML="",u.innerHTML="",c=[]},o.addPdf=function(e){if("data"!=e.result.substr(0,4))console.error("Invalid source");else{var t=document.createElement("canvas");t.width=60,t.height=60;var n=new Image;t.getContext("2d").drawImage(n,0,0,t.width,t.height),t.toBlob((function(t){var n=document.createElement("img");n.src=window.URL.createObjectURL(t),n.title=e.name,n.className="jfile pdf",c[n.src]={file:n.src,extension:"pdf",content:e.result},document.execCommand("insertHtml",!1,n.outerHTML)}))}},o.addImage=function(e,t){if(e||(e=""),"data"==e.substr(0,4)||o.options.remoteParser){if("data"==e.substr(0,4))n=(n=(n=e.split(";"))[0].split("/"))[1];else{var n=e.substr(e.lastIndexOf(".")+1);e=o.options.remoteParser+e}var r=new Image;r.onload=function(){var e=document.createElement("canvas");e.width=r.width,e.height=r.height,e.getContext("2d").drawImage(r,0,0,e.width,e.height),e.toBlob((function(i){var a,s=document.createElement("img");s.src=window.URL.createObjectURL(i),s.classList.add("jfile"),s.setAttribute("tabindex","900"),s.setAttribute("width",r.width),s.setAttribute("height",r.height),c[s.src]={file:s.src,extension:n,content:e.toDataURL()},o.options.dropAsSnippet||t?(a=s,u.innerHTML||o.appendSnippet({}),u.children[0].appendChild(a),m(),c[s.src].snippet=!0):document.execCommand("insertHtml",!1,s.outerHTML),p()}))},r.src=e}else console.error("remoteParser not defined in your initialization")},o.addFile=function(e){for(var t=[],n=0;no.options.maxFileSize)alert("The file is too big");else{var r=e[n].type.split("/");(r="image"==r[0]?1:"pdf"==r[1]?2:0)?(t[n]=new FileReader,t[n].index=n,t[n].type=r,t[n].name=e[n].name,t[n].date=e[n].lastModified,t[n].size=e[n].size,t[n].addEventListener("load",(function(e){2==e.target.type?1==o.options.acceptFiles&&o.addPdf(e.target):o.addImage(e.target.result)}),!1),t[n].readAsDataURL(e[n])):alert("The extension is not allowed")}},o.destroy=function(){o.editor.removeEventListener("mouseup",I),o.editor.removeEventListener("mousedown",S),o.editor.removeEventListener("mousemove",N),o.editor.removeEventListener("keyup",L),o.editor.removeEventListener("keydown",D),o.editor.removeEventListener("dragstart",w),o.editor.removeEventListener("dragenter",C),o.editor.removeEventListener("dragover",_),o.editor.removeEventListener("drop",M),o.editor.removeEventListener("paste",x),o.editor.removeEventListener("blur",A),o.editor.removeEventListener("focus",T),t.editor=null,t.classList.remove("jeditor-container"),d.remove(),u.remove(),o.editor.remove()},o.upload=function(){a.click(o.file)};var g=[HTMLUnknownElement,HTMLAudioElement,HTMLEmbedElement,HTMLIFrameElement,HTMLTextAreaElement,HTMLInputElement,HTMLScriptElement],b=["width","height","align","border","src","tabindex"],j=["color","font-weight","font-size","background","background-color","margin"],v=function(e){if(e.attributes&&e.attributes.length){var t=null,n=e.getAttribute("style");if(n){t=[];for(var r=n.split(";"),i=0;i=0){var s=a.shift();a=a.join(":"),t.push(s+":"+a)}}}"IMG"==e.tagName.toUpperCase()&&(o.options.acceptImages&&e.src?(e.setAttribute("tabindex","900"),o.addImage(e.src)):e.parentNode.removeChild(e));for(var l=[],c=0;c=0&&e.remove()},y=function(e){var t=window.getSelection(),n=document.createRange();n.selectNode(e),t.addRange(n)},x=function(e){if(1==o.options.filterPaste){if(e.clipboardData||e.originalEvent.clipboardData)var t=(e.originalEvent||e).clipboardData.getData("text/html"),n=(e.originalEvent||e).clipboardData.getData("text/plain"),r=(e.originalEvent||e).clipboardData.files;else window.clipboardData&&(t=window.clipboardData.getData("Html"),n=window.clipboardData.getData("Text"),r=window.clipboardData.files);if(r.length)o.addFile(r);else if(t){var i=function(e){e&&(e=e.replace(new RegExp("\x3c!--(.*?)--\x3e","gsi"),""));var t=(new DOMParser).parseFromString(e,"text/html");v(t);var n=document.createElement("span");return n.innerHTML=t.firstChild.innerHTML,n}(t);document.execCommand("insertHtml",!1,i.innerHTML)}else t=n.split("\r\n"),e.target.innerText?(t=t.map((function(e){return"
"+e+"
"})),document.execCommand("insertHtml",!1,t.join(""))):t.map((function(e){var t=document.createElement("div");t.innerText=e,o.editor.appendChild(t)}));e.preventDefault()}},w=function(e){l&&l.e&&e.preventDefault()},C=function(e){l||0==o.options.dropZone||(t.classList.add("jeditor-dragging"),e.preventDefault())},_=function(e){l||0==o.options.dropZone||(s&&clearTimeout(s),s=setTimeout((function(){t.classList.remove("jeditor-dragging")}),100),e.preventDefault())},M=function(e){if(l||0==o.options.dropZone);else{var n=null;document.caretRangeFromPoint?n=document.caretRangeFromPoint(e.clientX,e.clientY):e.rangeParent&&(n=document.createRange()).setStart(e.rangeParent,e.rangeOffset);var r=window.getSelection();r.removeAllRanges(),r.addRange(n),r.anchorNode.parentNode.focus();var i=(e.originalEvent||e).dataTransfer.getData("text/html"),a=(e.originalEvent||e).dataTransfer.getData("text/plain"),s=(e.originalEvent||e).dataTransfer.files;s.length?o.addFile(s):a&&function(e){var t=document.createElement("div");t.innerHTML=e;var n=t.querySelectorAll("img");if(n.length)for(var r=0;r
"),"function"==typeof o.options.onkeyup&&o.options.onkeyup(t,o,e)},D=function(e){if(O("onevent",e),"Delete"==e.key&&"IMG"==e.target.tagName){var n=e.target.parentNode;y(e.target),n.classList.contains("jsnippet-image")&&m()}"function"==typeof o.options.onkeydown&&o.options.onkeydown(t,o,e)},I=function(e){if(l&&l.e&&(l.e.classList.remove("resizing"),1==l.e.changed)){var t=l.e.cloneNode();t.width=parseInt(l.e.style.width)||l.e.getAttribute("width"),t.height=parseInt(l.e.style.height)||l.e.getAttribute("height"),l.e.style.width="",l.e.style.height="",y(l.e),document.execCommand("insertHtml",!1,t.outerHTML)}l=!1},S=function(e){var t=function(t){var n=t.getBoundingClientRect();n.width-(e.clientX-n.left)<40&&e.clientY-n.top<40&&(t.innerHTML="",t.remove())};if("IMG"==e.target.tagName)if(e.target.style.cursor){var n=e.target.getBoundingClientRect();l={e:e.target,x:e.clientX,y:e.clientY,w:n.width,h:n.height,d:e.target.style.cursor},e.target.getAttribute("width")||e.target.setAttribute("width",n.width),e.target.getAttribute("height")||e.target.setAttribute("height",n.height);var o=window.getSelection();if(o.rangeCount)for(var r=0;r'+e+""},onchange:function(e,t,n,o,r){document.execCommand("fontName",!1,o)}}),n.push({type:"select",content:"format_size",options:["x-small","small","medium","large","x-large"],render:function(e){return''+e+""},onchange:function(e,t,n,o,r){document.execCommand("fontSize",!1,parseInt(r)+1)}}),n.push({type:"select",options:["format_align_left","format_align_center","format_align_right","format_align_justify"],render:function(e){return''+e+""},onchange:function(e,t,n,o,r){document.execCommand(["JustifyLeft","justifyCenter","justifyRight","justifyFull"][r])}}),n.push({type:"divisor"}),n.push({content:"format_color_text",k:"color",onclick:t}),n.push({content:"format_color_fill",k:"background-color",onclick:t})),n.push({content:"format_bold",onclick:function(e,t,n){document.execCommand("bold"),document.queryCommandState("bold")?n.classList.add("selected"):n.classList.remove("selected")}}),n.push({content:"format_italic",onclick:function(e,t,n){document.execCommand("italic"),document.queryCommandState("italic")?n.classList.add("selected"):n.classList.remove("selected")}}),n.push({content:"format_underline",onclick:function(e,t,n){document.execCommand("underline"),document.queryCommandState("underline")?n.classList.add("selected"):n.classList.remove("selected")}}),n.push({type:"divisor"}),n.push({content:"format_list_bulleted",onclick:function(e,t,n){document.execCommand("insertUnorderedList"),document.queryCommandState("insertUnorderedList")?n.classList.add("selected"):n.classList.remove("selected")}}),n.push({content:"format_list_numbered",onclick:function(e,t,n){document.execCommand("insertOrderedList"),document.queryCommandState("insertOrderedList")?n.classList.add("selected"):n.classList.remove("selected")}}),n.push({content:"format_indent_increase",onclick:function(e,t,n){document.execCommand("indent",!0,null),document.queryCommandState("indent")?n.classList.add("selected"):n.classList.remove("selected")}}),n.push({content:"format_indent_decrease",onclick:function(){document.execCommand("outdent"),document.queryCommandState("outdent")?this.classList.add("selected"):this.classList.remove("selected")}}),e.options.toolbarOnTop&&(n.push({type:"divisor"}),n.push({content:"photo",onclick:function(){e.upload()}}),n.push({type:"select",content:"table_view",columns:8,grid:8,right:!0,options:["0x0","1x0","2x0","3x0","4x0","5x0","6x0","7x0","0x1","1x1","2x1","3x1","4x1","5x1","6x1","7x1","0x2","1x2","2x2","3x2","4x2","5x2","6x2","7x2","0x3","1x3","2x3","3x3","4x3","5x3","6x3","7x3","0x4","1x4","2x4","3x4","4x4","5x4","6x4","7x4","0x5","1x5","2x5","3x5","4x5","5x5","6x5","7x5","0x6","1x6","2x6","3x6","4x6","5x6","6x6","7x6","0x7","1x7","2x7","3x7","4x7","5x7","6x7","7x7"],render:function(e,t){t&&(t.onmouseover=this.onmouseover,e=e.split("x"),t.setAttribute("data-x",e[0]),t.setAttribute("data-y",e[1]));var n=document.createElement("div");return t.style.margin="1px",t.style.border="1px solid #ddd",n},onmouseover:function(e){for(var t=parseInt(e.target.getAttribute("data-x")),n=parseInt(e.target.getAttribute("data-y")),o=0;o=t[0]&&e<=t[1]},"not between":function(e,t){return et[1]},"<":function(e,t){return e":function(e,t){return e>t[0]},">=":function(e,t){return e>=t[0]},"=":function(e,t){return e==t[0]},"!=":function(e,t){return e!=t[0]}},n={"valid date":function(){return!0},"=":function(e,t){return e===t[0]},"!=":function(e,t){return e!==t[0]},"<":function(e,t){return e":function(e,t){return e>t[0]},">=":function(e,t){return e>=t[0]},between:function(e,t){return e>=t[0]&&e<=t[1]},"not between":function(e,t){return et[1]}},o={contains:function(e,t){return e.includes(t[0])},"not contains":function(e,t){return!e.includes(t[0])},"begins with":function(e,t){return e.startsWith(t[0])},"ends with":function(e,t){return e.endsWith(t[0])},"=":function(e,t){return e===t[0]},"!=":function(e,t){return e!==t[0]},"valid email":function(e){return new RegExp(/^[^\s@]+@[^\s@]+\.[^\s@]+$/).test(e)},"valid url":function(e){return new RegExp(/(((https?:\/\/)|(www\.))[-A-Z0-9+&@#\/%?=~_|!:,.;]*[-A-Z0-9+&@#\/%=~_|]+)/gi).test(e)}},r=function(e,t){return"function"==typeof r[t.type]?!(!t.allowBlank||""!==e)||r[t.type](e,t):null};r.url=function(){return!!new RegExp(/(((https?:\/\/)|(www\.))[-A-Z0-9+&@#\/%?=~_|!:,.;]*[-A-Z0-9+&@#\/%=~_|]+)/gi).test(data)},r.email=function(e){var t=new RegExp(/^[^\s@]+@[^\s@]+\.[^\s@]+$/);return!(!e||!t.test(e))},r.required=function(e){return!!e.trim()},r.exist=function(e,t){return!!e.toString().trim()},r["not exist"]=function(e,t){return!e.toString().trim()},r.empty=function(e){return!e.toString().trim()},r.notEmpty=function(e){return!!e.toString().trim()},r.number=function(n,o){if(!e(n))return!1;if(!o||!o.criteria)return!0;if(!t[o.criteria])return!1;let r=o.value.map((function(e){return parseFloat(e)}));return t[o.criteria](n,r)},r.login=function(e){let t=new RegExp(/^[a-zA-Z0-9._-]+$/);return!(!e||!t.test(e))},r.list=function(e,t){let n,o=typeof e;return("string"===o||"number"===o)&&(n="string"==typeof t.value[0]?t.value[0].split(","):t.value[0],!!Array.isArray(n)&&n.findIndex((function(t){return t==e}))>-1)};const i=function(){let e=new Date;return e.setHours(0,0,0,0),e},a={"one year ago":function(){let e=i();return e.setFullYear(e.getFullYear()-1),e},"one month ago":function(){let e=i();return e.setMonth(e.getMonth()-1),e},"one week ago":function(){let e=i();return e.setDate(e.getDate()-7),e},yesterday:function(){let e=i();return e.setDate(e.getDate()-1),e},today:i,tomorrow:function(){let e=i();return e.setDate(e.getDate()+1),e}};return r.date=function(t,o){if(e(t)&&t>0&&t<1e6&&(t=s.numToDate(t)),"Invalid Date"==new Date(t))return!1;if(!o||!o.criteria)return!0;if(!n[o.criteria])return!1;let r=o.value.map((function(e){return"string"==typeof e&&a[e]?a[e]().getTime():new Date(e).getTime()}));return n[o.criteria](new Date(t).getTime(),r)},r.text=function(e,t){return"string"==typeof e&&(!t||!t.criteria||!!o[t.criteria]&&o[t.criteria](e,t.value))},r.textLength=function(e,t){return e=e.toString(),r.number(e.length,t)},r}(),T=function(){var e=function(t,n){var o={options:{}},r={url:null,message:"Are you sure? There are unsaved information in your form",ignore:!1,currentHash:null,submitButton:null,validations:null,onbeforeload:null,onload:null,onbeforesave:null,onsave:null,onbeforeremove:null,onremove:null,onerror:function(e,t){alert(t)}};for(var i in r)n&&n.hasOwnProperty(i)?o.options[i]=n[i]:o.options[i]=r[i];return o.options.validations||(o.options.validations={}),o.options.submitButton||(o.options.submitButton=t.querySelector("input[type=submit]")),o.options.submitButton&&o.options.url&&(o.options.submitButton.onclick=function(){o.save()}),o.options.validations.email||(o.options.validations.email=A.email),o.options.validations.length||(o.options.validations.length=A.length),o.options.validations.required||(o.options.validations.required=A.required),o.setUrl=function(e){o.options.url=e},o.load=function(){h({url:o.options.url,method:"GET",dataType:"json",queue:!0,success:function(n){if("function"==typeof o.options.onbeforeload){var r=o.options.onbeforeload(t,n);r&&(n=r)}e.setElements(t,n),"function"==typeof o.options.onload&&o.options.onload(t,n)}})},o.save=function(){var n=o.validate();if(n)o.options.onerror(t,n);else{var r=e.getElements(t,!0);if("function"==typeof o.options.onbeforesave&&!1===(r=o.options.onbeforesave(t,r)))return;h({url:o.options.url,method:"POST",dataType:"json",data:r,success:function(e){"function"==typeof o.options.onsave&&o.options.onsave(t,r,e)}})}},o.remove=function(){if("function"==typeof o.options.onbeforeremove&&!1===o.options.onbeforeremove(t,o))return!1;h({url:o.options.url,method:"DELETE",dataType:"json",success:function(e){"function"==typeof o.options.onremove&&o.options.onremove(t,o,e),o.reset()}})},o.validateElement=function(n){var r=!1,i=e.getValue(n),a=n.getAttribute("data-validation");return"function"!=typeof o.options.validations[a]||o.options.validations[a](i,n)?n.classList.contains("error")&&function(e){var n=!1;e.classList.remove("error"),e.removeAttribute("title");for(var r=t.querySelectorAll("input, select, textarea, div[name]"),i=0;i0&&e.join("
")},o.getError=function(){return!!o.validation()},o.setHash=function(){return o.getHash(e.getElements(t))},o.getHash=function(e){var t,n=0;if(0===e.length)return n;for(t=0;t800?m.fadeIn(r):m.slideTop(r,1)},t.hide=function(){a.getWindowWidth()>800?m.fadeOut(r,(function(){r.parentNode&&(r.parentNode.removeChild(r),b&&clearTimeout(b))})):m.slideTop(r,0,(function(){r.parentNode&&(r.parentNode.removeChild(r),b&&clearTimeout(b))}))},t.show(),1==t.options.autoHide)var b=setTimeout((function(){t.hide()}),t.options.timeout);return a.getWindowWidth()<800&&r.addEventListener("swipeup",(function(e){t.hide(),e.preventDefault(),e.stopPropagation()})),t};return e.isVisible=function(){var e=document.querySelector(".jnotification");return!(!e||!e.parentNode)},e}();function I(e,t){if(e.search)return e.search;var n=null,o=function(t){if("function"==typeof s.options.onsearch){var n=s.options.onsearch(s,t);n&&(t=n)}if(l.innerHTML="",t.length){e.style.display="block";for(var o=t.length<11?t.length:10,r=0;r=0)return!0}else for(var n in t)if((""+t[n]).toLowerCase().search(e.toLowerCase())>=0)return!0;return!1}(t)}));o(t)}else h({url:s.options.data+e,method:"GET",dataType:"json",success:function(e){o(e)}})},i=null,s=function(e){i&&clearTimeout(i),i=setTimeout((function(){r(e)}),500)};null===t.forceSelect&&(t.forceSelect=!0),s.options={data:t.data||null,input:t.input||null,searchByNode:t.searchByNode||null,onselect:t.onselect||null,forceSelect:t.forceSelect,onsearch:t.onsearch||null,onbeforesearch:t.onbeforesearch||null},s.selectIndex=function(e){var t=e.getAttribute("id"),n=e.getAttribute("data-text"),o=e.getAttribute("data-value"),r=e.children[0].src||"";"function"==typeof s.options.onselect&&s.options.onselect(s,n,o,t,r),s.close()},s.open=function(){e.style.display="block"},s.close=function(){i&&clearTimeout(i),s.terms="",l.innerHTML="",e.style.display=""},s.isOpened=function(){return!!e.style.display},s.keydown=function(e){s.isOpened()&&("Enter"==e.key?null!==n&&l.children[n]?(s.selectIndex(l.children[n]),e.preventDefault()):s.close():"ArrowUp"===e.key?(null!==n&&l.children[0]&&(l.children[n].classList.remove("selected"),s.options.forceSelect||0!==n?(n=Math.max(0,n-1),l.children[n].classList.add("selected")):n=null),e.preventDefault()):"ArrowDown"===e.key&&(null==n?n=-1:l.children[n].classList.remove("selected"),n<9&&l.children[n+1]&&n++,l.children[n].classList.add("selected"),e.preventDefault()))},s.keyup=function(e){if(!s.options.searchByNode&&s.options.input)if("DIV"===s.options.input.tagName)var t=s.options.input.innerText;else t=s.options.input.value;else{var n=a.getNode();n&&(t=n.innerText)}if("function"==typeof s.options.onbeforesearch){var o=s.options.onbeforesearch(s,t);if(o)t=o;else if(!1===o)return}s(t)},s.blur=function(e){s.close()},s.options.input&&(s.options.input.addEventListener("keyup",s.keyup),s.options.input.addEventListener("keydown",s.keydown),s.options.input.addEventListener("blur",s.blur));var l=document.createElement("div");return l.classList.add("jsearch_container"),l.onmousedown=function(e){if(e.target.classList.contains("jsearch_item"))var t=e.target;else t=e.target.parentNode;s.selectIndex(t),e.preventDefault()},e.appendChild(l),e.classList.add("jsearch"),e.search=s,s}function S(e,t){var n={options:{}},o={type:"image",extension:"*",input:!1,minWidth:!1,maxWidth:null,maxHeight:null,maxJpegSizeBytes:null,onchange:null,multiple:!1,remoteParser:null};for(var r in o)t&&t.hasOwnProperty(r)?n.options[r]=t[r]:n.options[r]=o[r];1==n.options.multiple&&e.setAttribute("data-multiple",!0),e.content=[],e.classList.add("jupload"),1==n.options.input&&e.classList.add("input"),n.add=function(t){if(0==n.options.multiple&&(e.content=[],e.innerText=""),"image"==n.options.type){var o=document.createElement("img");o.setAttribute("src",t.file),o.setAttribute("tabindex",-1),e.getAttribute("name")||(o.className="jfile",o.content=t),e.appendChild(o)}else{if(t.name)var r=t.name;else r=t.file;var i=document.createElement("div");i.innerText=r||n.options.type,i.classList.add("jupload-item"),i.setAttribute("tabindex",-1),e.appendChild(i)}t.content&&(t.file=a.guid()),e.content.push(t),"function"==typeof n.options.onchange&&n.options.onchange(e,t)},n.addFromFile=function(e){if(e.type.split("/")[0]==n.options.type){var t=new FileReader;t.addEventListener("load",(function(t){var o={file:t.srcElement.result,extension:e.name.substr(e.name.lastIndexOf(".")+1),name:e.name,size:e.size,lastmodified:e.lastModified,content:t.srcElement.result};n.add(o)})),t.readAsDataURL(e)}else alert(c.translate("This extension is not allowed"))},n.addFromUrl=function(e){if("data"==e.substr(0,4)||n.options.remoteParser)if("data"==e.substr(0,4))if((o=(o=e.split(";"))[0].split("/"))[0].replace("data:","")==n.options.type){var t={file:e,name:"",extension:o[1],content:e};n.add(t)}else alert(n.options.text.extensionNotAllowed);else{var o=e.substr(e.lastIndexOf(".")+1);e=n.options.remoteParser+e,h({url:e,type:"GET",dataType:"blob",success:function(e){}})}else console.error("remoteParser not defined in your initialization")};var i=n.options.type+"/"+n.options.extension,s=document.createElement("input");s.type="file",s.setAttribute("accept",i),s.onchange=function(){for(var e=0;e=0&&(e.content.splice(n,1),l.remove(),l=null)}})),e.addEventListener("drop",(function(t){t.preventDefault(),t.stopPropagation();var o=(t.originalEvent||t).dataTransfer.getData("text/html");if((t.originalEvent||t).dataTransfer.files.length)for(var r=0;r4&&e.setAttribute("data-total",o-4),e.setAttribute("data-number",o>4?4:o)}var r=document.createElement("div");if(r.classList.add("jslider-counter"),e.children.length>0)for(var i=0;in.currentImage.offsetWidth&&n.currentImage.classList.add("jslider-vertical"),l.children[0].innerText=n.currentImage.getAttribute("title")},n.open=function(){n.show(),"function"==typeof n.options.onopen&&n.options.onopen(e)},n.close=function(){e.classList.remove("jslider-focus"),e.classList.remove("jslider-left"),e.classList.remove("jslider-right"),n.options.grid&&e.classList.add("jslider-grid");for(var t=0;t=n.options.limit)},r=null,i=null;n.setOptions=function(t,o){var a={value:"",limit:null,search:null,placeholder:null,validation:null,onbeforepaste:null,onbeforechange:null,onlimit:null,onchange:null,onfocus:null,onblur:null,onload:null};for(var s in a)t&&t.hasOwnProperty(s)?n.options[s]=t[s]:void 0!==n.options[s]&&!0!==o||(n.options[s]=a[s]);return n.options.placeholder?e.setAttribute("data-placeholder",n.options.placeholder):e.removeAttribute("data-placeholder"),e.placeholder=n.options.placeholder,n.setValue(n.options.value),d(),n.options.search?i||(i=document.createElement("div"),e.parentNode.insertBefore(i,e.nextSibling),r=I(i,{data:n.options.search,onselect:function(e,t,o){n.selectIndex(t,o)}})):i&&(r=null,i.remove(),i=null),n},n.add=function(t,i){if("function"==typeof n.options.onbeforechange){var d=n.options.onbeforechange(e,n,n.options.value,t);if(!1===d)return!1;null!=d&&(t=d)}if(r&&r.close(),o())"function"==typeof n.options.onlimit?n.options.onlimit(n,n.options.limit):alert(c.translate("You reach the limit number of entries")+" "+n.options.limit);else{var f=a.getNode();if(!(f&&f.parentNode&&f.parentNode.classList.contains("jtags")&&f.nextSibling)||f.nextSibling.innerText&&f.nextSibling.innerText.trim()){if(e.lastChild&&(e.lastChild.innerText.trim()||e.removeChild(e.lastChild)),t&&"string"!=typeof t){for(var p=0;p<=t.length;p++)if(!o()){if(t[p]&&"string"!=typeof t[p])h=t[p].text,m=t[p].value;else var h=t[p]||"",m=null;g=l(h,m)}}else var g=l(t,t,f);u()}else g=f.nextSibling;i&&s(g)}},n.setLimit=function(t){for(n.options.limit=t,e.children.length;e.children.length>t;)e.removeChild(e.lastChild)},n.remove=function(t){t.parentNode.removeChild(t),e.children.length?u():n.add("",!0)},n.getData=function(){for(var t=[],n=0;n",u()},n.isValid=function(){for(var t=0,n=0;n1&&(o()?"function"==typeof n.options.onlimit&&n.options.onlimit(n,n.options.limit):n.add("",!0)),t.preventDefault()):"Enter"==t.key?r&&r.isOpened()||(window.getSelection().anchorOffset>1&&(o()||n.add("",!0)),t.preventDefault()):"Backspace"==t.key&&1==e.children.length&&window.getSelection().anchorOffset<1&&t.preventDefault(),r&&r.keydown(t),f()},g=function(e){if(39==e.which){var t=window.getSelection().anchorOffset;t>1&&t==h&&n.add("",!0)}else 13==e.which||38==e.which||40==e.which?e.preventDefault():r&&r.keyup(e);d()},b=function(t){if(t.clipboardData||t.originalEvent.clipboardData)var o=(t.originalEvent||t).clipboardData.getData("text/plain");else window.clipboardData&&(o=window.clipboardData.getData("Text"));var r=p(o);if("function"==typeof n.options.onbeforepaste){var i=n.options.onbeforepaste(e,n,r);if(!1===i)return t.preventDefault(),!1;i&&(r=i)}r.length>1?(n.add(r,!0),t.preventDefault()):r[0]&&(document.execCommand("insertText",!1,r[0]),t.preventDefault())},j=function(t){if(t.target.parentNode&&t.target.parentNode.classList.contains("jtags")&&(t.target.classList.contains("jtags_label")||t.target.classList.contains("jtags_error"))){var o=t.target.getBoundingClientRect();o.width-(t.clientX-o.left)<16&&n.remove(t.target)}t.target==e&&s()},v=function(){e.classList.contains("jtags-focus")||(e.children.length&&!n.getValue(e.children.length-1)||o()||l(""),"function"==typeof n.options.onfocus&&n.options.onfocus(e,n,n.getValue()),e.classList.add("jtags-focus"))},y=function(){if(e.classList.contains("jtags-focus")){r&&r.close();for(var t=0;t0)for(var n=0;n=e.length?{done:!0}:{done:!1,value:e[o++]}},e:function(e){throw e},f:r}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,s=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return a=e.done,e},e:function(e){s=!0,i=e},f:function(){try{a||null==n.return||n.return()}finally{if(s)throw i}}}}function _unsupportedIterableToArray(e,t){if(e){if("string"==typeof e)return _arrayLikeToArray(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?_arrayLikeToArray(e,t):void 0}}function _arrayLikeToArray(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,o=new Array(t);n1||!Number.isInteger(Number(e))||""!==r&&Number(e)>Number(r))&&(i=!1)})),i}if(isNaN(Number(o))||0===Number(o)||""!==r&&Number(o)>Number(r)||!Number.isInteger(Number(o)))return!1}return!0},verifyQuantity=function(e,t,n,o){if(""!==o){if(isNaN(Number(o))||0===Number(o))return!1;if(""!==(1===e?siTable.getComments(getColumnName(t)+(n+1)):miTable.getComments(getColumnName(t)+(n+1)))+""&&Number(o)<5)return!1}return!0},verifyFormat=function(e,t,n,o){if(""!==o.trim()){if(o=o.trim(),0===t)return!0;if(1===t)return!0;if(2===t){if(1===e&&!siTypeSource.includes(o))return!1;if(2===e&&!miTypeSource.includes(o))return!1}if(3===t)return!0;if(4===t)return!0;if(5===t&&!backboneModificationsSource.includes(o))return!0;if(6===t)return verifySiteNumber(e,t,n,o);if(7===t&&!riboseModificationsSource.includes(o))return!0;if(8===t)return verifySiteNumber(e,t,n,o);if(9===t&&!baseModificationsSource.includes(o))return!0;if(10===t)return verifySiteNumber(e,t,n,o);if(11===t)return verifyQuantity(e,t,n,o);if(12===t&&!unitSource.includes(o))return!0;if(13===t)return!0}return!0},verifyMerge=function(e,t,n){t+=1;var o=JSON.stringify(siTable.getMerge());if(2===e)if(siTable.removeMerge("N"+t),siTable.removeMerge("M"+t),siTable.removeMerge("L"+t),siTable.removeMerge("A"+t),siTable.removeMerge("C"+t),"dsDNA"===n||"dsRNA"===n){var r=JSON.parse(JSON.stringify(siTable.getData()));t==r.length?siTable.insertRow([],r.length-1):o.includes('"C'+(t+1)+'"')&&siTable.insertRow([],t-1);var i=siTable.getValue("B"+t),a=siTable.getValue("B"+(t+1));siTable.setValue("N"+(t+1),"",!0),siTable.setValue("M"+(t+1),"",!0),siTable.setValue("L"+(t+1),"",!0),siTable.setValue("A"+(t+1),"",!0),siTable.setValue("C"+(t+1),"",!0),siTable.setMerge("N"+t,1,2),siTable.setMerge("M"+t,1,2),siTable.setMerge("L"+t,1,2),siTable.setMerge("A"+t,1,2),siTable.setMerge("C"+t,1,2),siTable.setValue("B"+t,"AS: "+i,!0),siTable.setValue("B"+(t+1),"SS: "+a,!0)}else o.includes('"C'+t+'"')&&(siTable.setValue("B"+t,(siTable.getValue("B"+t)+"").replace("AS: ","").replace("SS: ",""),!0),siTable.setValue("B"+(t+1),(siTable.getValue("B"+(t+1))+"").replace("AS: ","").replace("SS: ",""),!0))},verifyMerge2=function(e,t,n){t+=1;var o=JSON.stringify(miTable.getMerge());if(2===e)if(miTable.removeMerge("N"+t),miTable.removeMerge("M"+t),miTable.removeMerge("L"+t),miTable.removeMerge("A"+t),miTable.removeMerge("C"+t),"dsDNA"===n||"dsRNA"===n){var r=JSON.parse(JSON.stringify(miTable.getData()));t==r.length?miTable.insertRow([],r.length-1):o.includes('"C'+(t+1)+'"')&&miTable.insertRow([],t-1);var i=miTable.getValue("B"+t),a=miTable.getValue("B"+(t+1));miTable.setValue("N"+(t+1),"",!0),miTable.setValue("M"+(t+1),"",!0),miTable.setValue("L"+(t+1),"",!0),miTable.setValue("A"+(t+1),"",!0),miTable.setValue("C"+(t+1),"",!0),miTable.setMerge("N"+t,1,2),miTable.setMerge("M"+t,1,2),miTable.setMerge("L"+t,1,2),miTable.setMerge("A"+t,1,2),miTable.setMerge("C"+t,1,2),miTable.setValue("B"+t,"AS: "+i,!0),miTable.setValue("B"+(t+1),"SS: "+a,!0)}else o.includes('"C'+t+'"')&&(miTable.setValue("B"+t,(miTable.getValue("B"+t)+"").replace("AS: ","").replace("SS: ",""),!0),miTable.setValue("B"+(t+1),(miTable.getValue("B"+(t+1))+"").replace("AS: ","").replace("SS: ",""),!0))},patch=function patch(s,re){return re=eval("/"+re+"/ig"),s.match(re)?s.match(re).length:0},getStrLen=function(e){var t={};return e.replace(/\S/g,(function(e){t[e]=isNaN(t[e])?1:t[e]+1})),t},verifySequence=function(e,t,n,o){var r=!0;if(1===t){n+=1;var i="";if((i=(i=o).replace("AS: ","").replace("SS: ","")).length>70&&(r=!1),""!==i&&r){var a=getStrLen(i),s=Object.keys(a),l=0;if(1===e?s.map((function(e){"A"===e.toUpperCase()||"T"===e.toUpperCase()||"C"===e.toUpperCase()||"G"===e.toUpperCase()?l+=Number(a[e]):r=!1})):s.map((function(e){"A"===e.toUpperCase()||"U"===e.toUpperCase()||"C"===e.toUpperCase()||"G"===e.toUpperCase()?l+=Number(a[e]):r=!1})),r){2===e?miTable.setComments("G"+n,"Max site: "+l,""):siTable.setComments("G"+n,"Max site: "+l,""),2===e?miTable.setComments("I"+n,"Max site: "+l,""):siTable.setComments("I"+n,"Max site: "+l,""),2===e?miTable.setComments("K"+n,"Max site: "+l,""):siTable.setComments("K"+n,"Max site: "+l,"");var c=(2===e?miTable.getValue("G"+n):siTable.getValue("G"+n))+"";""!==c&&Number(c)>l?2===e?miTable.setStyle(errorCss(6,n-1)):siTable.setStyle(errorCss(6,n-1)):2===e?miTable.resetStyle(removeErrorCss(6,n-1)):siTable.resetStyle(removeErrorCss(6,n-1));var u=(2===e?miTable.getValue("I"+n):siTable.getValue("I"+n))+"";""!==u&&Number(u)>l?2===e?miTable.setStyle(errorCss(8,n-1)):siTable.setStyle(errorCss(8,n-1)):2===e?miTable.resetStyle(removeErrorCss(8,n-1)):siTable.resetStyle(removeErrorCss(8,n-1));var d=(2===e?miTable.getValue("K"+n):siTable.getValue("K"+n))+"";""!==d&&Number(d)>l?2===e?miTable.setStyle(errorCss(10,n-1)):siTable.setStyle(errorCss(10,n-1)):2===e?miTable.resetStyle(removeErrorCss(10,n-1)):siTable.resetStyle(removeErrorCss(10,n-1))}}r&&""!==i||(2===e?miTable.resetStyle(removeErrorCss(6,n-1)):siTable.resetStyle(removeErrorCss(6,n-1)),2===e?miTable.resetStyle(removeErrorCss(8,n-1)):siTable.resetStyle(removeErrorCss(8,n-1)),2===e?miTable.resetStyle(removeErrorCss(10,n-1)):siTable.resetStyle(removeErrorCss(10,n-1)),2===e?miTable.setComments("G"+n,"",""):siTable.setComments("G"+n,"",""),2===e?miTable.setComments("I"+n,"",""):siTable.setComments("I"+n,"",""),2===e?miTable.setComments("K"+n,"",""):siTable.setComments("K"+n,"",""))}return r},verifyUnit=function(e,t,n,o){if(12===t){n+=1;if(""!==o&&"nmol"===o){2===e?miTable.setComments("L"+n,"Min value: 5",""):siTable.setComments("L"+n,"Min value: 5","");var r=(2===e?miTable.getValue("L"+n):siTable.getValue("L"+n))+"";""!==r&&Number(r)<5?2===e?miTable.setStyle(errorCss(11,n-1)):siTable.setStyle(errorCss(11,n-1)):2===e?miTable.resetStyle(removeErrorCss(11,n-1)):siTable.resetStyle(removeErrorCss(11,n-1))}else 2===e?miTable.resetStyle(removeErrorCss(11,n-1)):siTable.resetStyle(removeErrorCss(11,n-1)),2===e?miTable.setComments("L"+n,"",""):siTable.setComments("L"+n,"","")}},readonlyCss=function(e){var t='{"'+e+'": "text-align: left; pointer-events: none;"}';return JSON.parse(t)},removeReadonlyCss=function(e){var t='{"'+e+'": "text-align: left; pointer-events: none;"}';return JSON.parse(t)},errorCss=function(e,t){var n='{"'+getColumnName(Number(e))+(Number(t)+1)+'": "text-align: left; border: 1px solid #ee3134;"}';return JSON.parse(n)},removeErrorCss=function(e,t){var n='{"'+getColumnName(Number(e))+(Number(t)+1)+'": "text-align: left;"}';return JSON.parse(n)},beforeChange=function(e,t,n,o,r){r+="",verifyFormat(1,Number(n),Number(o),r)?siTable.resetStyle(removeErrorCss(n,o)):siTable.setStyle(errorCss(n,o)),verifyMerge(Number(n),Number(o),r),verifySequence(1,Number(n),Number(o),r)?siTable.resetStyle(removeErrorCss(1,o)):siTable.setStyle(errorCss(1,o)),verifyUnit(1,Number(n),Number(o),r)},beforeChange2=function(e,t,n,o,r){r+="",verifyFormat(2,Number(n),Number(o),r)?miTable.resetStyle(removeErrorCss(n,o)):miTable.setStyle(errorCss(n,o)),verifyMerge2(Number(n),Number(o),r),verifySequence(2,Number(n),Number(o),r)?miTable.resetStyle(removeErrorCss(1,o)):miTable.setStyle(errorCss(1,o)),verifyUnit(2,Number(n),Number(o),r)},siTable=jspreadsheet_ce__WEBPACK_IMPORTED_MODULE_5___default()(siContainer,{colHeaders:tableHead,colWidths:tableColWidths,defaultRowHeight:25,columns:siTableColumns,onchange:beforeChange,minDimensions:[14,10],tableWidth:"1000px",tableHeight:"330px",tableOverflow:!0,allowDeleteColumn:!1,allowDeletingAllColumns:!1,allowDeleteRow:!0,allowDeletingAllRows:!1,allowInsertColumn:!1,allowInsertRow:!0,allowManualInsertColumn:!1,allowManualInsertRow:!1,allowRenameColumn:!1,columnSorting:!1,fullscreen:!1,allowExport:!1,contextMenu:"",about:!1}),miTable=jspreadsheet_ce__WEBPACK_IMPORTED_MODULE_5___default()(miContainer,{colHeaders:tableHead,colWidths:tableColWidths,defaultRowHeight:25,columns:miTableColumns,onchange:beforeChange2,minDimensions:[14,10],tableWidth:"1000px",tableHeight:"330px",tableOverflow:!0,allowDeleteColumn:!1,allowDeletingAllColumns:!1,allowDeleteRow:!0,allowDeletingAllRows:!1,allowInsertColumn:!1,allowInsertRow:!0,allowManualInsertColumn:!1,allowManualInsertRow:!1,allowRenameColumn:!1,columnSorting:!1,fullscreen:!1,allowExport:!1,contextMenu:"",about:!1});jquery__WEBPACK_IMPORTED_MODULE_1___default()("#table-si").find("thead>tr>td").each((function(){var e=Number(jquery__WEBPACK_IMPORTED_MODULE_1___default()(this).attr("data-x"));if(e>=0){var t="";"名称"!==jquery__WEBPACK_IMPORTED_MODULE_1___default()(this).text()&&"序列(5’ to 3’)"!==jquery__WEBPACK_IMPORTED_MODULE_1___default()(this).text()&&"类别"!==jquery__WEBPACK_IMPORTED_MODULE_1___default()(this).text()&&"总需求"!==jquery__WEBPACK_IMPORTED_MODULE_1___default()(this).text()&&"单位"!==jquery__WEBPACK_IMPORTED_MODULE_1___default()(this).text()||(t='* '),jquery__WEBPACK_IMPORTED_MODULE_1___default()(this).html(t+jquery__WEBPACK_IMPORTED_MODULE_1___default()(this).text()+'
'),jquery__WEBPACK_IMPORTED_MODULE_1___default()(this).find(".copy-icon").on("click",(function(){var t=siTable.getMerge();if(jquery__WEBPACK_IMPORTED_MODULE_1___default.a.isEmptyObject(t)||1!==e&&2!==e){var n=siTable.getColumnData(e),o=n[0],r=[];""!==o&&(n.map((function(){r.push(o)})),siTable.setColumnData(e,r))}else _service_cn_notice__WEBPACK_IMPORTED_MODULE_2__.a.error("当前列不能操作")})),jquery__WEBPACK_IMPORTED_MODULE_1___default()(this).find(".delect-icon").on("click",(function(){var t=siTable.getMerge();if(jquery__WEBPACK_IMPORTED_MODULE_1___default.a.isEmptyObject(t)||1!==e&&2!==e){var n=siTable.getColumnData(e),o=[];n.map((function(){o.push("")})),siTable.setColumnData(e,o)}else _service_cn_notice__WEBPACK_IMPORTED_MODULE_2__.a.error("当前列不能操作")}))}})),jquery__WEBPACK_IMPORTED_MODULE_1___default()("#table-mi").find("thead>tr>td").each((function(){var e=Number(jquery__WEBPACK_IMPORTED_MODULE_1___default()(this).attr("data-x"));if(e>=0){var t="";"名称"!==jquery__WEBPACK_IMPORTED_MODULE_1___default()(this).text()&&"序列(5’ to 3’)"!==jquery__WEBPACK_IMPORTED_MODULE_1___default()(this).text()&&"类别"!==jquery__WEBPACK_IMPORTED_MODULE_1___default()(this).text()&&"总需求"!==jquery__WEBPACK_IMPORTED_MODULE_1___default()(this).text()&&"单位"!==jquery__WEBPACK_IMPORTED_MODULE_1___default()(this).text()||(t='* '),jquery__WEBPACK_IMPORTED_MODULE_1___default()(this).html(t+jquery__WEBPACK_IMPORTED_MODULE_1___default()(this).text()+'
'),jquery__WEBPACK_IMPORTED_MODULE_1___default()(this).find(".copy-icon").on("click",(function(){var t=miTable.getMerge();if(jquery__WEBPACK_IMPORTED_MODULE_1___default.a.isEmptyObject(t)||1!==e&&2!==e){var n=miTable.getColumnData(e),o=n[0],r=[];""!==o&&(n.map((function(){r.push(o)})),miTable.setColumnData(e,r))}else _service_cn_notice__WEBPACK_IMPORTED_MODULE_2__.a.error("当前列不能操作")})),jquery__WEBPACK_IMPORTED_MODULE_1___default()(this).find(".delect-icon").on("click",(function(){var t=miTable.getMerge();if(jquery__WEBPACK_IMPORTED_MODULE_1___default.a.isEmptyObject(t)||1!==e&&2!==e){var n=miTable.getColumnData(e),o=[];n.map((function(){o.push("")})),miTable.setColumnData(e,o)}else _service_cn_notice__WEBPACK_IMPORTED_MODULE_2__.a.error("当前列不能操作")}))}}));var initItems=function(e){for(var t=[],n=0;ndiv").each((function(){jquery__WEBPACK_IMPORTED_MODULE_1___default()(this).is(":hidden")||(1===Number(jquery__WEBPACK_IMPORTED_MODULE_1___default()(this).attr("data-table-type"))?siTable.insertRow(e):miTable.insertRow(e),jquery__WEBPACK_IMPORTED_MODULE_1___default()("#add-row-number").val(""))})))})),jquery__WEBPACK_IMPORTED_MODULE_1___default()("#clear-table").on("click",(function(){jquery__WEBPACK_IMPORTED_MODULE_1___default()(".order-content>div").each((function(){jquery__WEBPACK_IMPORTED_MODULE_1___default()(this).is(":hidden")||(1===Number(jquery__WEBPACK_IMPORTED_MODULE_1___default()(this).attr("data-table-type"))?(siTable.setData(initItems(10)),siTable.destroyMerged()):(miTable.setData(initItems(10)),miTable.destroyMerged()))}))}));var verifyMergeEmptyValue=function(e,t,n,o){return 0===n&&""!==o||!!(n>0&&(""===o&&e.includes(t)||""!==o))},verifyMergeNumberEmptyValue=function(e,t,n,o){return 0===n&&""!==o&&!isNaN(Number(o))&&0!==Number(o)||!!(n>0&&(""===o&&e.includes(t)||""!==o&&!isNaN(Number(o))&&0!==Number(o)))},newSiItems=[],newMiItems=[],pass=!0,totalPrice=0,getQuotation=!1,dnaMap={},rnaMap={},dnaPriceMap=new Map,rnaPriceMap=new Map;jquery__WEBPACK_IMPORTED_MODULE_1___default()("#oligonucleotide-quotation").on("click",(function(){if(pass=!0,!Object(_function_inputNotEmpty__WEBPACK_IMPORTED_MODULE_4__.a)(jquery__WEBPACK_IMPORTED_MODULE_1___default()("#InquiryForm")))return _service_cn_notice__WEBPACK_IMPORTED_MODULE_2__.a.error("非空项必填!"),void(pass=!1);if(!Object(_function_verifyEmail__WEBPACK_IMPORTED_MODULE_6__.a)(jquery__WEBPACK_IMPORTED_MODULE_1___default()("#InquiryForm")))return _service_cn_notice__WEBPACK_IMPORTED_MODULE_2__.a.error("请输入正确的邮箱格式!"),void(pass=!1);jquery__WEBPACK_IMPORTED_MODULE_1___default()("#oligonucleotide-quotation").attr({disabled:"disabled"}).addClass("form_btn_submit_send").removeClass("form_btn_submit");var e=JSON.parse(JSON.stringify(siTable.getData())),t=JSON.parse(JSON.stringify(miTable.getData()));newSiItems=[],newMiItems=[];var n=JSON.stringify(siTable.getMerge()),o=JSON.stringify(miTable.getMerge());e.map((function(e,t){if(""!==e[0]||""!==e[1]||""!==e[2]||""!==e[3]||""!==e[4]||""!==e[5]||""!==e[6]||""!==e[7]||""!==e[8]||""!==e[9]||""!==e[10]||""!==e[11]||""!==e[12]||""!==e[13]){var o={id:"",name:e[0]||"",sequence:e[1]||"",type:""!==e[2]&&siTypeSource.includes(e[2])?e[2]:"",modification5:""!==e[3]&&modification5Source.includes(e[3])?e[3]:"",modification3:""!==e[4]&&modification3Source.includes(e[4])?e[4]:"",backboneModifications:""!==e[5]&&backboneModificationsSource.includes(e[5])?e[5]:"",backboneModificationSites:e[6],riboseModifications:""!==e[7]&&riboseModificationsSource.includes(e[7])?e[7]:"",riboseModificationSites:e[8],baseModifications:""!==e[9]&&baseModificationsSource.includes(e[9])?e[9]:"",baseModificationSites:e[10],quantity:e[11]||"",unit:""!==e[12]&&unitSource.includes(e[12])?e[12]:"",remarks:e[13]||""};verifyMergeEmptyValue(n,"A"+t,t,o.name)||(pass=!1,siTable.setStyle(errorCss(0,t)));var r=o.sequence.replace("AS: ","").replace("SS: ","");verifySequence(1,1,t,r)&&""!==r||(pass=!1,siTable.setStyle(errorCss(1,t))),verifyMergeEmptyValue(n,"C"+t,t,o.type)||(pass=!1,siTable.setStyle(errorCss(2,t))),""!==o.backboneModificationSites&&(verifySiteNumber(1,6,t,o.backboneModificationSites)||(pass=!1,siTable.setStyle(errorCss(6,t)))),""!==o.riboseModificationSites&&(verifySiteNumber(1,8,t,o.riboseModificationSites)||(pass=!1,siTable.setStyle(errorCss(8,t)))),""!==o.baseModificationSites&&(verifySiteNumber(1,10,t,o.baseModificationSites)||(pass=!1,siTable.setStyle(errorCss(10,t)))),verifyMergeEmptyValue(n,"M"+t,t,o.unit)?""===o.unit&&n.includes("M"+t)||verifyUnit(1,12,t,o.unit):(pass=!1,siTable.setStyle(errorCss(12,t))),verifyMergeNumberEmptyValue(n,"L"+t,t,o.quantity)&&(""===o.quantity&&n.includes("L"+t)||verifyQuantity(1,11,t,o.quantity))||(pass=!1,siTable.setStyle(errorCss(11,t))),newSiItems.push(o)}else for(var i=0;i<14;i++)siTable.resetStyle(removeErrorCss(i,t))})),t.map((function(e,t){if(""!==e[0]||""!==e[1]||""!==e[2]||""!==e[3]||""!==e[4]||""!==e[5]||""!==e[6]||""!==e[7]||""!==e[8]||""!==e[9]||""!==e[10]||""!==e[11]||""!==e[12]||""!==e[13]){var n={id:"",name:e[0]||"",sequence:e[1]||"",type:""!==e[2]&&miTypeSource.includes(e[2])?e[2]:"",modification5:""!==e[3]&&modification5Source.includes(e[3])?e[3]:"",modification3:""!==e[4]&&modification3Source.includes(e[4])?e[4]:"",backboneModifications:""!==e[5]&&backboneModificationsSource.includes(e[5])?e[5]:"",backboneModificationSites:e[6],riboseModifications:""!==e[7]&&riboseModificationsSource.includes(e[7])?e[7]:"",riboseModificationSites:e[8],baseModifications:""!==e[9]&&baseModificationsSource.includes(e[9])?e[9]:"",baseModificationSites:e[10],quantity:e[11]||"",unit:""!==e[12]&&unitSource.includes(e[12])?e[12]:"",remarks:e[13]||""};verifyMergeEmptyValue(o,"A"+t,t,n.name)||(pass=!1,miTable.setStyle(errorCss(0,t)));var r=n.sequence.replace("AS: ","").replace("SS: ","");verifySequence(2,1,t,r)&&""!==r||(pass=!1,miTable.setStyle(errorCss(1,t))),verifyMergeEmptyValue(o,"C"+t,t,n.type)||(pass=!1,miTable.setStyle(errorCss(2,t))),""!==n.backboneModificationSites&&(verifySiteNumber(2,6,t,n.backboneModificationSites)||(pass=!1,miTable.setStyle(errorCss(6,t)))),""!==n.riboseModificationSites&&(verifySiteNumber(2,8,t,n.riboseModificationSites)||(pass=!1,miTable.setStyle(errorCss(8,t)))),""!==n.baseModificationSites&&(verifySiteNumber(2,10,t,n.baseModificationSites)||(pass=!1,miTable.setStyle(errorCss(10,t)))),verifyMergeEmptyValue(o,"M"+t,t,n.unit)?""===n.unit&&o.includes("M"+t)||verifyUnit(2,12,t,n.unit):(pass=!1,miTable.setStyle(errorCss(12,t))),verifyMergeNumberEmptyValue(o,"L"+t,t,n.quantity)&&(""===n.quantity&&o.includes("L"+t)||verifyQuantity(2,11,t,n.quantity))||(pass=!1,miTable.setStyle(errorCss(11,t))),newMiItems.push(n)}else for(var i=0;i<14;i++)miTable.resetStyle(removeErrorCss(i,t))})),totalPrice=0,getQuotation=!1,dnaMap={},rnaMap={},dnaPriceMap=new Map,rnaPriceMap=new Map,(newSiItems.length>0||newMiItems.length>0)&&pass?(jquery__WEBPACK_IMPORTED_MODULE_1___default()(".form_submit_loading").show(),_service_cn_oligonucleotide_synthesis_service__WEBPACK_IMPORTED_MODULE_3__.a.quotation({siRNA:JSON.stringify(newSiItems),miRNA:JSON.stringify(newMiItems)}).done((function(e){if(e.success){dnaMap=e.dnaMap,rnaMap=e.rnaMap;var t="";t+=getQuotationHtml(e.dnaMap,e.dnaPriceMap,1),t+=getQuotationHtml(e.rnaMap,e.rnaPriceMap,2),t+="
",jquery__WEBPACK_IMPORTED_MODULE_1___default()(".quotation-table").html(t),jquery__WEBPACK_IMPORTED_MODULE_1___default()(".mask-oligonucleotide").show(),jquery__WEBPACK_IMPORTED_MODULE_1___default()(".oligonucleotide-quotation-info").show()}else _service_cn_notice__WEBPACK_IMPORTED_MODULE_2__.a.infoEn("抱歉,报价遇到错误, 请稍后再试!");jquery__WEBPACK_IMPORTED_MODULE_1___default()(".form_submit_loading").hide(),jquery__WEBPACK_IMPORTED_MODULE_1___default()("#oligonucleotide-quotation").removeAttr("disabled").addClass("form_btn_submit").removeClass("form_btn_submit_send"),jquery__WEBPACK_IMPORTED_MODULE_1___default()(".quotation-price span").html(getQuotation?"待报价":"¥"+Number(totalPrice).toFixed(2))}))):(jquery__WEBPACK_IMPORTED_MODULE_1___default()("#oligonucleotide-quotation").removeAttr("disabled").addClass("form_btn_submit").removeClass("form_btn_submit_send"),pass?0==newSiItems.length&&0==newMiItems.length&&_service_cn_notice__WEBPACK_IMPORTED_MODULE_2__.a.error("表格数据为空,请先填写!"):_service_cn_notice__WEBPACK_IMPORTED_MODULE_2__.a.error("检测到错误,红框部分请按要求填写!"),pass=!1)}));var getQuotationHtml=function(e,t,n){var o=new Map,r="";if(void 0!==e){r='

 

 

'+(1==n?"DNA 合成":"RNA 合成")+'

 

 

',r+='';var i=function(n){var i=0;Object.keys(t).map((function(e){e===n&&(i=Number(t[e]))})),totalPrice+=i,0===i&&(getQuotation=!0),o.set(n,0===i?"待报价":"¥"+Number(i).toFixed(2));var a=e[n];r+='",r+='"};for(var a in e)i(a);r+="

名称:'+a[0].name+',类别:'+a[0].type+',总需求量:'+a[0].quantity+" "+a[0].unit+',价格:'+(0===i?"待报价":"¥"+Number(i).toFixed(2))+',备注:'+a[0].remarks+"

',a.map((function(e){r+='"})),r+="

序列

5\'修饰

3\'修饰

骨架修饰

修饰位点

核糖修饰

修饰位点

碱基修饰

修饰位点

'+e.sequence+'

'+e.modification5+'

'+e.modification3+'

'+e.backboneModifications+'

'+e.backboneModificationSites+'

'+e.riboseModifications+'

'+e.riboseModificationSites+'

'+e.baseModifications+'

'+e.baseModificationSites+"

"}return 1===n?dnaPriceMap=o:rnaPriceMap=o,r},mapChangeObj=function(e){var t,n={},o=_createForOfIteratorHelper(e);try{for(o.s();!(t=o.n()).done;){var r=_slicedToArray(t.value,2),i=r[0],a=r[1];n[i]=a}}catch(e){o.e(e)}finally{o.f()}return n};jquery__WEBPACK_IMPORTED_MODULE_1___default()("#place-order").on("click",(function(){jquery__WEBPACK_IMPORTED_MODULE_1___default()("#place-order").attr({disabled:"disabled"}).addClass("form_btn_submit_send").removeClass("form_btn_submit"),(newSiItems.length>0||newMiItems.length>0)&&pass?(jquery__WEBPACK_IMPORTED_MODULE_1___default()(".form_submit_loading").show(),_service_cn_oligonucleotide_synthesis_service__WEBPACK_IMPORTED_MODULE_3__.a.saveOrder({customerName:jquery__WEBPACK_IMPORTED_MODULE_1___default()('input[name="customerName"]').val(),companyName:jquery__WEBPACK_IMPORTED_MODULE_1___default()('input[name="companyName"]').val(),email:jquery__WEBPACK_IMPORTED_MODULE_1___default()('input[name="email"]').val(),phone:jquery__WEBPACK_IMPORTED_MODULE_1___default()('input[name="phone"]').val(),department:jquery__WEBPACK_IMPORTED_MODULE_1___default()('input[name="department"]').val(),country:jquery__WEBPACK_IMPORTED_MODULE_1___default()('input[name="country"]').val()||"",agentName:jquery__WEBPACK_IMPORTED_MODULE_1___default()('input[name="agentName"]').val()||"",state:jquery__WEBPACK_IMPORTED_MODULE_1___default()('input[name="cmInqriry.state"]').val()||"",remarks:jquery__WEBPACK_IMPORTED_MODULE_1___default()('textarea[name="remarks"]').val(),totalPrice:getQuotation?"待报价":"¥"+Number(totalPrice).toFixed(2),dnaMapParam:JSON.stringify(dnaMap),dnaPriceMapParam:JSON.stringify(mapChangeObj(dnaPriceMap)),rnaMapParam:JSON.stringify(rnaMap),rnaPriceMapParam:JSON.stringify(mapChangeObj(rnaPriceMap))}).done((function(e){e.success?(siTable.setData(initItems(10)),miTable.setData(initItems(10)),siTable.destroyMerged(),miTable.destroyMerged(),newSiItems=[],newMiItems=[],pass=!0,jquery__WEBPACK_IMPORTED_MODULE_1___default()("#notice_titie").html("提交成功!"),jquery__WEBPACK_IMPORTED_MODULE_1___default()("#notice_content").html("我们已收到您的请求,并将尽快给您答复。"),jquery__WEBPACK_IMPORTED_MODULE_1___default()("#main").find("input[type='text'], textarea").val(""),jquery__WEBPACK_IMPORTED_MODULE_1___default()(".oligonucleotide-quotation-info").hide(),jquery__WEBPACK_IMPORTED_MODULE_1___default()(".mask-oligonucleotide").hide()):(jquery__WEBPACK_IMPORTED_MODULE_1___default()("#notice_titie").html("哎呀!"),jquery__WEBPACK_IMPORTED_MODULE_1___default()("#notice_content").html("看来我们无法发送电子邮件。请验证您的电子邮件地址,然后重试!")),jquery__WEBPACK_IMPORTED_MODULE_1___default()("#place-order").removeAttr("disabled").addClass("form_btn_submit").removeClass("form_btn_submit_send"),jquery__WEBPACK_IMPORTED_MODULE_1___default()(".inquiry_success").show(),jquery__WEBPACK_IMPORTED_MODULE_1___default()(".mask").show(),jquery__WEBPACK_IMPORTED_MODULE_1___default()(".form_submit_loading").hide(),jquery__WEBPACK_IMPORTED_MODULE_1___default()(".inquiry_success").css("margin-top","-"+jquery__WEBPACK_IMPORTED_MODULE_1___default()(".inquiry_success").outerHeight()/2+"px")}))):pass=!1}));var initUserTable=function(){_service_cn_oligonucleotide_synthesis_service__WEBPACK_IMPORTED_MODULE_3__.a.getTable().done((function(e){if(e.success){var t=JSON.parse(e.siRNA),n=JSON.parse(e.miRNA);t.length>0&&(siTable.setData(t),siMergeImportValue(n)),n.length>0&&(miTable.setData(n),miMergeImportValue(n))}}))};jquery__WEBPACK_IMPORTED_MODULE_1___default()("#save-table").on("click",(function(){var e=JSON.parse(JSON.stringify(siTable.getData())),t=JSON.parse(JSON.stringify(miTable.getData())),n=[],o=[];e.map((function(e){""===e[0]&&""===e[1]&&""===e[2]&&""===e[3]&&""===e[4]&&""===e[5]&&""===e[6]&&""===e[7]&&""===e[8]&&""===e[9]&&""===e[10]&&""===e[11]&&""===e[12]&&""===e[13]||n.push([e[0],e[1],e[2],e[3],e[4],e[5],e[6],e[7],e[8],e[9],e[10],e[11],e[12],e[13]])})),t.map((function(e){""===e[0]&&""===e[1]&&""===e[2]&&""===e[3]&&""===e[4]&&""===e[5]&&""===e[6]&&""===e[7]&&""===e[8]&&""===e[9]&&""===e[10]&&""===e[11]&&""===e[12]&&""===e[13]||o.push([e[0],e[1],e[2],e[3],e[4],e[5],e[6],e[7],e[8],e[9],e[10],e[11],e[12],e[13]])})),_service_cn_oligonucleotide_synthesis_service__WEBPACK_IMPORTED_MODULE_3__.a.saveTable({siRNA:JSON.stringify(n),miRNA:JSON.stringify(o)}).done((function(e){e.success?_service_cn_notice__WEBPACK_IMPORTED_MODULE_2__.a.info("保存草稿成功","270px"):"user error"===e.error?_service_cn_notice__WEBPACK_IMPORTED_MODULE_2__.a.error("请先登录!"):_service_cn_notice__WEBPACK_IMPORTED_MODULE_2__.a.error("保存失败,请稍后再试!")}))})),jquery__WEBPACK_IMPORTED_MODULE_1___default()("#upload-order").on("click",(function(){jquery__WEBPACK_IMPORTED_MODULE_1___default()("#file_upload").click()})),jquery__WEBPACK_IMPORTED_MODULE_1___default()("#file_upload").on("change",(function(){onFileChange(jquery__WEBPACK_IMPORTED_MODULE_1___default()("#file_upload")[0].files[0]),jquery__WEBPACK_IMPORTED_MODULE_1___default()(this).val("")}));var onFileChange=function(e){if(e){jquery__WEBPACK_IMPORTED_MODULE_1___default()(".form_submit_loading").show();var t=new FormData;t.append("file",e),_service_cn_oligonucleotide_synthesis_service__WEBPACK_IMPORTED_MODULE_3__.a.uploadFile(t).done((function(e){if(e.success){var t=e.customer,n=e.siArr,o=e.miArr;jquery__WEBPACK_IMPORTED_MODULE_1___default()('input[name="customerName"]').val(t.customerName),jquery__WEBPACK_IMPORTED_MODULE_1___default()('input[name="email"]').val(t.email),jquery__WEBPACK_IMPORTED_MODULE_1___default()('input[name="phone"]').val(t.phone),jquery__WEBPACK_IMPORTED_MODULE_1___default()('input[name="companyName"]').val(t.companyName),jquery__WEBPACK_IMPORTED_MODULE_1___default()('input[name="department"]').val(t.department),jquery__WEBPACK_IMPORTED_MODULE_1___default()('textarea[name="remarks"]').val(t.remarks),jquery__WEBPACK_IMPORTED_MODULE_1___default()('input[name="country"]').val(t.country);var r=getNewItems(1,n);obj.siItems=r;var i=getNewItems(2,o);obj.miItems=i,siTable.destroyMerged(),miTable.destroyMerged(),siTable.setData(obj.siItems),miTable.setData(obj.miItems),siMergeImportValue(obj.siItems),miMergeImportValue(obj.miItems)}else _service_cn_notice__WEBPACK_IMPORTED_MODULE_2__.a.error(e.error);jquery__WEBPACK_IMPORTED_MODULE_1___default()(".form_submit_loading").hide()}))}else _service_cn_notice__WEBPACK_IMPORTED_MODULE_2__.a.error("请选择文件")},getNewItems=function(e,t){var n=[];return t.map((function(t){var o=Object.keys(t),r={name:"",sequence:"",type:"",modification5:"",modification3:"",backboneModifications:"",backboneModificationSites:"",riboseModifications:"",riboseModificationSites:"",baseModifications:"",baseModificationSites:"",quantity:"",unit:"",remarks:""};o.map((function(n){if("name"===n&&(r.name=t[n]),"sequence"===n&&(r.sequence=t[n]),"type"===n){var o=t[n]+"";r.type=1===e?""!==o&&siTypeSource.includes(o)?o:"":""!==o&&miTypeSource.includes(o)?o:""}if("modification5"===n){var i=t[n]+"";r.modification5=""!==i&&modification5Source.includes(i)?i:""}if("modification3"===n){var a=t[n]+"";r.modification3=""!==a&&modification3Source.includes(a)?a:""}if("backboneModifications"===n){var s=t[n]+"";r.backboneModifications=""!==s&&backboneModificationsSource.includes(s)?s:""}if("backboneModificationSites"===n&&(r.backboneModificationSites=t[n]),"riboseModifications"===n){var l=t[n]+"";r.riboseModifications=""!==l&&riboseModificationsSource.includes(l)?l:""}if("riboseModificationSites"===n&&(r.riboseModificationSites=t[n]),"baseModifications"===n){var c=t[n]+"";r.baseModifications=""!==c&&baseModificationsSource.includes(c)?c:""}if("baseModificationSites"===n&&(r.baseModificationSites=t[n]),"quantity"===n&&(r.quantity=t[n]),"unit"===n){var u=t[n]+"";r.unit=""!==u&&unitSource.includes(u)?u:""}"remarks"===n&&(r.remarks=t[n])})),n.push([r.name,r.sequence,r.type,r.modification5,r.modification3,r.backboneModifications,r.backboneModificationSites,r.riboseModifications,r.riboseModificationSites,r.baseModifications,r.baseModificationSites,r.quantity,r.unit,r.remarks])})),n},siMergeImportValue=function(e){if(e.length>1)for(var t=0;t1)for(var t=0;t