Big News: Socket raises $60M Series C at a $1B valuation to secure software supply chains for AI-driven development.Announcement
Sign In

fluxmax

Package Overview
Dependencies
Maintainers
1
Versions
2
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

fluxmax - npm Package Compare versions

Comparing version
0.0.1
to
0.0.2
dist/Fluxmax.js

Sorry, the diff of this file is too big to display

+2
var Fluxmax=function(n){function t(e){if(r[e])return r[e].exports;var i=r[e]={exports:{},id:e,loaded:!1};return n[e].call(i.exports,i,i.exports,t),i.loaded=!0,i.exports}var r={};return t.m=n,t.c=r,t.p="",t(0)}([function(n,t,r){n.exports={App:r(5),StoreMixin:r(7)}},function(n,t,r){var e;(function(n,i){(function(){function u(n,t){if(n!==t){var r=n===n,e=t===t;if(n>t||!r||"undefined"==typeof n&&e)return 1;if(t>n||!e||"undefined"==typeof t&&r)return-1}return 0}function o(n,t,r){if(t!==t)return y(n,r);for(var e=(r||0)-1,i=n.length;++e<i;)if(n[e]===t)return e;return-1}function a(n){return"function"==typeof n||!1}function c(n,t){var r=n.length;for(n.sort(t);r--;)n[r]=n[r].value;return n}function f(n){return"string"==typeof n?n:null==n?"":n+""}function l(n){return n.charCodeAt(0)}function s(n,t){for(var r=-1,e=n.length;++r<e&&t.indexOf(n.charAt(r))>-1;);return r}function h(n,t){for(var r=n.length;r--&&t.indexOf(n.charAt(r))>-1;);return r}function p(n,t){return u(n.criteria,t.criteria)||n.index-t.index}function _(n,t){for(var r=-1,e=n.criteria,i=t.criteria,o=e.length;++r<o;){var a=u(e[r],i[r]);if(a)return a}return n.index-t.index}function g(n){return zt[n]}function v(n){return Vt[n]}function d(n){return"\\"+Gt[n]}function y(n,t,r){for(var e=n.length,i=r?t||e:(t||0)-1;r?i--:++i<e;){var u=n[i];if(u!==u)return i}return-1}function m(n){return n&&"object"==typeof n||!1}function w(n){return 160>=n&&n>=9&&13>=n||32==n||160==n||5760==n||6158==n||n>=8192&&(8202>=n||8232==n||8233==n||8239==n||8287==n||12288==n||65279==n)}function b(n,t){for(var r=-1,e=n.length,i=-1,u=[];++r<e;)n[r]===t&&(n[r]=Y,u[++i]=r);return u}function E(n,t){for(var r,e=-1,i=n.length,u=-1,o=[];++e<i;){var a=n[e],c=t?t(a,e,n):a;e&&r===c||(r=c,o[++u]=a)}return o}function x(n){for(var t=-1,r=n.length;++t<r&&w(n.charCodeAt(t)););return t}function C(n){for(var t=n.length;t--&&w(n.charCodeAt(t)););return t}function A(n){return Yt[n]}function j(n){function t(n){if(m(n)&&!Xa(n)&&!(n instanceof i)){if(n instanceof e)return n;if(ta.call(n,"__chain__")&&ta.call(n,"__wrapped__"))return Fe(n)}return new e(n)}function r(){}function e(n,t,r){this.__wrapped__=n,this.__actions__=r||[],this.__chain__=!!t}function i(n){this.__wrapped__=n,this.__actions__=null,this.__dir__=1,this.__dropCount__=0,this.__filtered__=!1,this.__iteratees__=null,this.__takeCount__=Oa,this.__views__=null}function w(){var n=this.__actions__,t=this.__iteratees__,r=this.__views__,e=new i(this.__wrapped__);return e.__actions__=n?Zt(n):null,e.__dir__=this.__dir__,e.__dropCount__=this.__dropCount__,e.__filtered__=this.__filtered__,e.__iteratees__=t?Zt(t):null,e.__takeCount__=this.__takeCount__,e.__views__=r?Zt(r):null,e}function Q(){if(this.__filtered__){var n=new i(this);n.__dir__=-1,n.__filtered__=!0}else n=this.clone(),n.__dir__*=-1;return n}function et(){var n=this.__wrapped__.value();if(!Xa(n))return Jr(n,this.__actions__);var t=this.__dir__,r=0>t,e=me(0,n.length,this.__views__),i=e.start,u=e.end,o=u-i,a=this.__dropCount__,c=Aa(o,this.__takeCount__),f=r?u:i-1,l=this.__iteratees__,s=l?l.length:0,h=0,p=[];n:for(;o--&&c>h;){f+=t;for(var _=-1,g=n[f];++_<s;){var v=l[_],d=v.iteratee,y=d(g,f,n),m=v.type;if(m==P)g=y;else if(!y){if(m==q)continue n;break n}}a?a--:p[h++]=g}return p}function ut(){this.__data__={}}function zt(n){return this.has(n)&&delete this.__data__[n]}function Vt(n){return"__proto__"==n?S:this.__data__[n]}function Yt(n){return"__proto__"!=n&&ta.call(this.__data__,n)}function Kt(n,t){return"__proto__"!=n&&(this.__data__[n]=t),this}function Gt(n){var t=n?n.length:0;for(this.data={hash:ba(null),set:new _a};t--;)this.push(n[t])}function Jt(n,t){var r=n.data,e="string"==typeof t||Su(t)?r.set.has(t):r.hash[t];return e?0:-1}function Xt(n){var t=this.data;"string"==typeof n||Su(n)?t.set.add(n):t.hash[n]=!0}function Zt(n,t){var r=-1,e=n.length;for(t||(t=Mo(e));++r<e;)t[r]=n[r];return t}function nr(n,t){for(var r=-1,e=n.length;++r<e&&t(n[r],r,n)!==!1;);return n}function tr(n,t){for(var r=n.length;r--&&t(n[r],r,n)!==!1;);return n}function rr(n,t){for(var r=-1,e=n.length;++r<e;)if(!t(n[r],r,n))return!1;return!0}function er(n,t){for(var r=-1,e=n.length,i=-1,u=[];++r<e;){var o=n[r];t(o,r,n)&&(u[++i]=o)}return u}function ir(n,t){for(var r=-1,e=n.length,i=Mo(e);++r<e;)i[r]=t(n[r],r,n);return i}function ur(n){for(var t=-1,r=n.length,e=ka;++t<r;){var i=n[t];i>e&&(e=i)}return e}function or(n){for(var t=-1,r=n.length,e=Oa;++t<r;){var i=n[t];e>i&&(e=i)}return e}function ar(n,t,r,e){var i=-1,u=n.length;for(e&&u&&(r=n[++i]);++i<u;)r=t(r,n[i],i,n);return r}function cr(n,t,r,e){var i=n.length;for(e&&i&&(r=n[--i]);i--;)r=t(r,n[i],i,n);return r}function fr(n,t){for(var r=-1,e=n.length;++r<e;)if(t(n[r],r,n))return!0;return!1}function lr(n,t){return"undefined"==typeof n?t:n}function sr(n,t,r,e){return"undefined"!=typeof n&&ta.call(e,r)?n:t}function hr(n,t,r){var e=rc(t);if(!r)return _r(t,n,e);for(var i=-1,u=e.length;++i<u;){var o=e[i],a=n[o],c=r(a,t[o],o,n,t);(c===c?c===a:a!==a)&&("undefined"!=typeof a||o in n)||(n[o]=c)}return n}function pr(n,t){for(var r=-1,e=n.length,i=je(e),u=t.length,o=Mo(u);++r<u;){var a=t[r];i?(a=parseFloat(a),o[r]=Ce(a,e)?n[a]:S):o[r]=n[a]}return o}function _r(n,t,r){r||(r=t,t={});for(var e=-1,i=r.length;++e<i;){var u=r[e];t[u]=n[u]}return t}function gr(n,t){for(var r=-1,e=t.length;++r<e;){var i=t[r];n[i]=he(n[i],T,n)}return n}function vr(n,t,r){var e=typeof n;return"function"==e?"undefined"!=typeof t&&xe(n)?Qr(n,t,r):n:null==n?To:"object"==e?Wr(n):"undefined"==typeof t?qr(n+""):Lr(n+"",t)}function dr(n,t,r,e,i,u,o){var a;if(r&&(a=i?r(n,e,i):r(n)),"undefined"!=typeof a)return a;if(!Su(n))return n;var c=Xa(n);if(c){if(a=we(n),!t)return Zt(n,a)}else{var f=ea.call(n),l=f==Z;if(f!=tt&&f!=K&&(!l||i))return qt[f]?Ee(n,f,t):i?n:{};if(a=be(l?{}:n),!t)return _r(n,a,rc(n))}u||(u=[]),o||(o=[]);for(var s=u.length;s--;)if(u[s]==n)return o[s];return u.push(n),o.push(a),(c?nr:kr)(n,function(e,i){a[i]=dr(e,t,r,i,n,u,o)}),a}function yr(n,t,r,e){if("function"!=typeof n)throw new Ho(V);return ga(function(){n.apply(S,Yr(r,e))},t)}function mr(n,t){var r=n?n.length:0,e=[];if(!r)return e;var i=-1,u=ye(),a=u==o,c=a&&t.length>=200?$a(t):null,f=t.length;c&&(u=Jt,a=!1,t=c);n:for(;++i<r;){var l=n[i];if(a&&l===l){for(var s=f;s--;)if(t[s]===l)continue n;e.push(l)}else u(t,l)<0&&e.push(l)}return e}function wr(n,t){var r=n?n.length:0;if(!je(r))return kr(n,t);for(var e=-1,i=Ne(n);++e<r&&t(i[e],e,i)!==!1;);return n}function br(n,t){var r=n?n.length:0;if(!je(r))return Or(n,t);for(var e=Ne(n);r--&&t(e[r],r,e)!==!1;);return n}function Er(n,t){var r=!0;return wr(n,function(n,e,i){return r=!!t(n,e,i)}),r}function xr(n,t,r,e){var i=n.length;for(r=null==r?0:+r||0,0>r&&(r=-r>i?0:i+r),e="undefined"==typeof e||e>i?i:+e||0,0>e&&(e+=i),i=r>e?0:e>>>0,r>>>=0;i>r;)n[r++]=t;return n}function Cr(n,t){var r=[];return wr(n,function(n,e,i){t(n,e,i)&&r.push(n)}),r}function Ar(n,t,r,e){var i;return r(n,function(n,r,u){return t(n,r,u)?(i=e?r:n,!1):void 0}),i}function jr(n,t,r,e){for(var i=(e||0)-1,u=n.length,o=-1,a=[];++i<u;){var c=n[i];if(m(c)&&je(c.length)&&(Xa(c)||wu(c))){t&&(c=jr(c,t,r));var f=-1,l=c.length;for(a.length+=l;++f<l;)a[++o]=c[f]}else r||(a[++o]=c)}return a}function Sr(n,t,r){for(var e=-1,i=Ne(n),u=r(n),o=u.length;++e<o;){var a=u[e];if(t(i[a],a,i)===!1)break}return n}function Ir(n,t,r){for(var e=Ne(n),i=r(n),u=i.length;u--;){var o=i[u];if(t(e[o],o,e)===!1)break}return n}function Tr(n,t){return Sr(n,t,Ju)}function kr(n,t){return Sr(n,t,rc)}function Or(n,t){return Ir(n,t,rc)}function Br(n,t){for(var r=-1,e=t.length,i=-1,u=[];++r<e;){var o=t[r];Qa(n[o])&&(u[++i]=o)}return u}function Rr(n,t,r){var e=-1,i="function"==typeof t,u=n?n.length:0,o=je(u)?Mo(u):[];return wr(n,function(n){var u=i?t:null!=n&&n[t];o[++e]=u?u.apply(n,r):S}),o}function Dr(n,t,r,e,i,u){if(n===t)return 0!==n||1/n==1/t;var o=typeof n,a=typeof t;return"function"!=o&&"object"!=o&&"function"!=a&&"object"!=a||null==n||null==t?n!==n&&t!==t:Nr(n,t,Dr,r,e,i,u)}function Nr(n,t,r,e,i,u,o){var a=Xa(n),c=Xa(t),f=G,l=G;a||(f=ea.call(n),f==K?f=tt:f!=tt&&(a=Nu(n))),c||(l=ea.call(t),l==K?l=tt:l!=tt&&(c=Nu(t)));var s=f==tt,h=l==tt,p=f==l;if(p&&!a&&!s)return _e(n,t,f);var _=s&&ta.call(n,"__wrapped__"),g=h&&ta.call(t,"__wrapped__");if(_||g)return r(_?n.value():n,g?t.value():t,e,i,u,o);if(!p)return!1;u||(u=[]),o||(o=[]);for(var v=u.length;v--;)if(u[v]==n)return o[v]==t;u.push(n),o.push(t);var d=(a?pe:ge)(n,t,r,e,i,u,o);return u.pop(),o.pop(),d}function Fr(n,t,r,e,i){var u=t.length;if(null==n)return!u;for(var o=-1,a=!i;++o<u;)if(a&&e[o]?r[o]!==n[t[o]]:!ta.call(n,t[o]))return!1;for(o=-1;++o<u;){var c=t[o];if(a&&e[o])var f=ta.call(n,c);else{var l=n[c],s=r[o];f=i?i(l,s,c):S,"undefined"==typeof f&&(f=Dr(s,l,i,!0))}if(!f)return!1}return!0}function Ur(n,t){var r=[];return wr(n,function(n,e,i){r.push(t(n,e,i))}),r}function Wr(n){var t=rc(n),r=t.length;if(1==r){var e=t[0],i=n[e];if(Se(i))return function(n){return null!=n&&n[e]===i&&ta.call(n,e)}}for(var u=Mo(r),o=Mo(r);r--;)i=n[t[r]],u[r]=i,o[r]=Se(i);return function(n){return Fr(n,t,u,o)}}function Lr(n,t){return Se(t)?function(r){return null!=r&&r[n]===t}:function(r){return null!=r&&Dr(t,r[n],null,!0)}}function Mr(n,t,r,e,i){if(!Su(n))return n;var u=je(t.length)&&(Xa(t)||Nu(t));return(u?nr:kr)(t,function(t,o,a){if(m(t))return e||(e=[]),i||(i=[]),$r(n,a,o,Mr,r,e,i);var c=n[o],f=r?r(c,t,o,n,a):S,l="undefined"==typeof f;l&&(f=t),!u&&"undefined"==typeof f||!l&&(f===f?f===c:c!==c)||(n[o]=f)}),n}function $r(n,t,r,e,i,u,o){for(var a=u.length,c=t[r];a--;)if(u[a]==c)return void(n[r]=o[a]);var f=n[r],l=i?i(f,c,r,n,t):S,s="undefined"==typeof l;s&&(l=c,je(c.length)&&(Xa(c)||Nu(c))?l=Xa(f)?f:f?Zt(f):[]:nc(c)||wu(c)?l=wu(f)?Wu(f):nc(f)?f:{}:s=!1),u.push(c),o.push(l),s?n[r]=e(l,c,i,u,o):(l===l?l!==f:f===f)&&(n[r]=l)}function qr(n){return function(t){return null==t?S:t[n]}}function Pr(n,t){var r=t.length,e=pr(n,t);for(t.sort(u);r--;){var i=parseFloat(t[r]);if(i!=o&&Ce(i)){var o=i;va.call(n,i,1)}}return e}function zr(n,t){return n+la(Ta()*(t-n+1))}function Vr(n,t,r,e,i){return i(n,function(n,i,u){r=e?(e=!1,n):t(r,n,i,u)}),r}function Yr(n,t,r){var e=-1,i=n.length;t=null==t?0:+t||0,0>t&&(t=-t>i?0:i+t),r="undefined"==typeof r||r>i?i:+r||0,0>r&&(r+=i),i=t>r?0:r-t>>>0,t>>>=0;for(var u=Mo(i);++e<i;)u[e]=n[e+t];return u}function Kr(n,t){var r;return wr(n,function(n,e,i){return r=t(n,e,i),!r}),!!r}function Gr(n,t){var r=-1,e=ye(),i=n.length,u=e==o,a=u&&i>=200,c=a?$a():null,f=[];c?(e=Jt,u=!1):(a=!1,c=t?[]:f);n:for(;++r<i;){var l=n[r],s=t?t(l,r,n):l;if(u&&l===l){for(var h=c.length;h--;)if(c[h]===s)continue n;t&&c.push(s),f.push(l)}else e(c,s)<0&&((t||a)&&c.push(s),f.push(l))}return f}function Hr(n,t){for(var r=-1,e=t.length,i=Mo(e);++r<e;)i[r]=n[t[r]];return i}function Jr(n,t){var r=n;r instanceof i&&(r=r.value());for(var e=-1,u=t.length;++e<u;){var o=[r],a=t[e];ha.apply(o,a.args),r=a.func.apply(a.thisArg,o)}return r}function Xr(n,t,r){var e=0,i=n?n.length:e;if("number"==typeof t&&t===t&&Da>=i){for(;i>e;){var u=e+i>>>1,o=n[u];(r?t>=o:t>o)?e=u+1:i=u}return i}return Zr(n,t,To,r)}function Zr(n,t,r,e){t=r(t);for(var i=0,u=n?n.length:0,o=t!==t,a="undefined"==typeof t;u>i;){var c=la((i+u)/2),f=r(n[c]),l=f===f;if(o)var s=l||e;else s=a?l&&(e||"undefined"!=typeof f):e?t>=f:t>f;s?i=c+1:u=c}return Aa(u,Ra)}function Qr(n,t,r){if("function"!=typeof n)return To;if("undefined"==typeof t)return n;switch(r){case 1:return function(r){return n.call(t,r)};case 3:return function(r,e,i){return n.call(t,r,e,i)};case 4:return function(r,e,i,u){return n.call(t,r,e,i,u)};case 5:return function(r,e,i,u,o){return n.call(t,r,e,i,u,o)}}return function(){return n.apply(t,arguments)}}function ne(n){return aa.call(n,0)}function te(n,t,r){for(var e=r.length,i=-1,u=Ca(n.length-e,0),o=-1,a=t.length,c=Mo(u+a);++o<a;)c[o]=t[o];for(;++i<e;)c[r[i]]=n[i];for(;u--;)c[o++]=n[i++];return c}function re(n,t,r){for(var e=-1,i=r.length,u=-1,o=Ca(n.length-i,0),a=-1,c=t.length,f=Mo(o+c);++u<o;)f[u]=n[u];for(var l=u;++a<c;)f[l+a]=t[a];for(;++e<i;)f[l+r[e]]=n[u++];return f}function ee(n,t){return function(r,e,i){var u=t?t():{};if(e=de(e,i,3),Xa(r))for(var o=-1,a=r.length;++o<a;){var c=r[o];n(u,c,e(c,o,r),r)}else wr(r,function(t,r,i){n(u,t,e(t,r,i),i)});return u}}function ie(n){return function(){var t=arguments.length,r=arguments[0];if(2>t||null==r)return r;if(t>3&&Ae(arguments[1],arguments[2],arguments[3])&&(t=2),t>3&&"function"==typeof arguments[t-2])var e=Qr(arguments[--t-1],arguments[t--],5);else t>2&&"function"==typeof arguments[t-1]&&(e=arguments[--t]);for(var i=0;++i<t;){var u=arguments[i];u&&n(r,u,e)}return r}}function ue(n,t){function r(){return(this instanceof r?e:n).apply(t,arguments)}var e=ae(n);return r}function oe(n){return function(t){for(var r=-1,e=Ao(co(t)),i=e.length,u="";++r<i;)u=n(u,e[r],r);return u}}function ae(n){return function(){var t=La(n.prototype),r=n.apply(t,arguments);return Su(r)?r:t}}function ce(n,t){return function(r,e,i){i&&Ae(r,e,i)&&(e=null);var u=de(),o=null==e;if(u===vr&&o||(o=!1,e=u(e,i,3)),o){var a=Xa(r);if(a||!Du(r))return n(a?r:De(r));e=l}return ve(r,e,t)}}function fe(n,t,r,e,i,u,o,a,c,f){function l(){for(var m=arguments.length,w=m,E=Mo(m);w--;)E[w]=arguments[w];if(e&&(E=te(E,e,i)),u&&(E=re(E,u,o)),_||v){var x=l.placeholder,C=b(E,x);if(m-=C.length,f>m){var A=a?Zt(a):null,j=Ca(f-m,0),S=_?C:null,I=_?null:C,O=_?E:null,B=_?null:E;t|=_?D:N,t&=~(_?N:D),g||(t&=~(T|k));var R=fe(n,t,r,O,S,B,I,A,c,j);return R.placeholder=x,R}}var F=h?r:this;return p&&(n=F[y]),a&&(E=Oe(E,a)),s&&c<E.length&&(E.length=c),(this instanceof l?d||ae(n):n).apply(F,E)}var s=t&U,h=t&T,p=t&k,_=t&B,g=t&O,v=t&R,d=!p&&ae(n),y=n;return l}function le(n,t,r){var e=n.length;if(t=+t,e>=t||!Ea(t))return"";var i=t-e;return r=null==r?" ":r+"",vo(r,ca(i/r.length)).slice(0,i)}function se(n,t,r,e){function i(){for(var t=-1,a=arguments.length,c=-1,f=e.length,l=Mo(a+f);++c<f;)l[c]=e[c];for(;a--;)l[c++]=arguments[++t];return(this instanceof i?o:n).apply(u?r:this,l)}var u=t&T,o=ae(n);return i}function he(n,t,r,e,i,u,o,a){var c=t&k;if(!c&&"function"!=typeof n)throw new Ho(V);var f=e?e.length:0;if(f||(t&=~(D|N),e=i=null),f-=i?i.length:0,t&N){var l=e,s=i;e=i=null}var h=!c&&qa(n),p=[n,t,r,e,i,l,s,u,o,a];if(h&&h!==!0&&(Ie(p,h),t=p[1],a=p[9]),p[9]=null==a?c?0:n.length:Ca(a-f,0)||0,t==T)var _=ue(p[0],p[2]);else _=t!=D&&t!=(T|D)||p[4].length?fe.apply(S,p):se.apply(S,p);var g=h?Ma:Pa;return g(_,p)}function pe(n,t,r,e,i,u,o){var a=-1,c=n.length,f=t.length,l=!0;if(c!=f&&!(i&&f>c))return!1;for(;l&&++a<c;){var s=n[a],h=t[a];if(l=S,e&&(l=i?e(h,s,a):e(s,h,a)),"undefined"==typeof l)if(i)for(var p=f;p--&&(h=t[p],!(l=s&&s===h||r(s,h,e,i,u,o))););else l=s&&s===h||r(s,h,e,i,u,o)}return!!l}function _e(n,t,r){switch(r){case H:case J:return+n==+t;case X:return n.name==t.name&&n.message==t.message;case nt:return n!=+n?t!=+t:0==n?1/n==1/t:n==+t;case rt:case it:return n==t+""}return!1}function ge(n,t,r,e,i,u,o){var a=rc(n),c=a.length,f=rc(t),l=f.length;if(c!=l&&!i)return!1;for(var s,h=-1;++h<c;){var p=a[h],_=ta.call(t,p);if(_){var g=n[p],v=t[p];_=S,e&&(_=i?e(v,g,p):e(g,v,p)),"undefined"==typeof _&&(_=g&&g===v||r(g,v,e,i,u,o))}if(!_)return!1;s||(s="constructor"==p)}if(!s){var d=n.constructor,y=t.constructor;if(d!=y&&"constructor"in n&&"constructor"in t&&!("function"==typeof d&&d instanceof d&&"function"==typeof y&&y instanceof y))return!1}return!0}function ve(n,t,r){var e=r?Oa:ka,i=e,u=i;return wr(n,function(n,o,a){var c=t(n,o,a);((r?i>c:c>i)||c===e&&c===u)&&(i=c,u=n)}),u}function de(n,r,e){var i=t.callback||So;return i=i===So?vr:i,e?i(n,r,e):i}function ye(n,r,e){var i=t.indexOf||Je;return i=i===Je?o:i,n?i(n,r,e):i}function me(n,t,r){for(var e=-1,i=r?r.length:0;++e<i;){var u=r[e],o=u.size;switch(u.type){case"drop":n+=o;break;case"dropRight":t-=o;break;case"take":t=Aa(t,n+o);break;case"takeRight":n=Ca(n,t-o)}}return{start:n,end:t}}function we(n){var t=n.length,r=new n.constructor(t);return t&&"string"==typeof n[0]&&ta.call(n,"index")&&(r.index=n.index,r.input=n.input),r}function be(n){var t=n.constructor;return"function"==typeof t&&t instanceof t||(t=Yo),new t}function Ee(n,t,r){var e=n.constructor;switch(t){case ot:return ne(n);case H:case J:return new e(+n);case at:case ct:case ft:case lt:case st:case ht:case pt:case _t:case gt:var i=n.buffer;return new e(r?ne(i):i,n.byteOffset,n.length);case nt:case it:return new e(n);case rt:var u=new e(n.source,St.exec(n));u.lastIndex=n.lastIndex}return u}function xe(n){var r=t.support,e=!(r.funcNames?n.name:r.funcDecomp);if(!e){var i=Qo.call(n);r.funcNames||(e=!It.test(i)),e||(e=Nt.test(i)||ku(n),Ma(n,e))}return e}function Ce(n,t){return n=+n,t=null==t?Fa:t,n>-1&&n%1==0&&t>n}function Ae(n,t,r){if(!Su(r))return!1;var e=typeof t;if("number"==e)var i=r.length,u=je(i)&&Ce(t,i);else u="string"==e&&t in r;if(u){var o=r[t];return n===n?n===o:o!==o}return!1}function je(n){return"number"==typeof n&&n>-1&&n%1==0&&Fa>=n}function Se(n){return n===n&&(0===n?1/n>0:!Su(n))}function Ie(n,t){var r=n[1],e=t[1],i=r|e,u=U|F,o=T|k,a=u|o|O|R,c=r&U&&!(e&U),f=r&F&&!(e&F),l=(f?n:t)[7],s=(c?n:t)[8],h=!(r>=F&&e>o||r>o&&e>=F),p=i>=u&&a>=i&&(F>r||(f||c)&&l.length<=s);if(!h&&!p)return n;e&T&&(n[2]=t[2],i|=r&T?0:O);var _=t[3];if(_){var g=n[3];n[3]=g?te(g,_,t[4]):Zt(_),n[4]=g?b(n[3],Y):Zt(t[4])}return _=t[5],_&&(g=n[5],n[5]=g?re(g,_,t[6]):Zt(_),n[6]=g?b(n[5],Y):Zt(t[6])),_=t[7],_&&(n[7]=Zt(_)),e&U&&(n[8]=null==n[8]?t[8]:Aa(n[8],t[8])),null==n[9]&&(n[9]=t[9]),n[0]=t[0],n[1]=i,n}function Te(n,t){n=Ne(n);for(var r=-1,e=t.length,i={};++r<e;){var u=t[r];u in n&&(i[u]=n[u])}return i}function ke(n,t){var r={};return Tr(n,function(n,e,i){t(n,e,i)&&(r[e]=n)}),r}function Oe(n,t){for(var r=n.length,e=Aa(t.length,r),i=Zt(n);e--;){var u=t[e];n[e]=Ce(u,r)?i[u]:S}return n}function Be(n){{var r;t.support}if(!m(n)||ea.call(n)!=tt||!ta.call(n,"constructor")&&(r=n.constructor,"function"==typeof r&&!(r instanceof r)))return!1;var e;return Tr(n,function(n,t){e=t}),"undefined"==typeof e||ta.call(n,e)}function Re(n){for(var r=Ju(n),e=r.length,i=e&&n.length,u=t.support,o=i&&je(i)&&(Xa(n)||u.nonEnumArgs&&wu(n)),a=-1,c=[];++a<e;){var f=r[a];(o&&Ce(f,i)||ta.call(n,f))&&c.push(f)}return c}function De(n){return null==n?[]:je(n.length)?Su(n)?n:Yo(n):eo(n)}function Ne(n){return Su(n)?n:Yo(n)}function Fe(n){return n instanceof i?n.clone():new e(n.__wrapped__,n.__chain__,Zt(n.__actions__))}function Ue(n,t,r){t=(r?Ae(n,t,r):null==t)?1:Ca(+t||1,1);for(var e=0,i=n?n.length:0,u=-1,o=Mo(ca(i/t));i>e;)o[++u]=Yr(n,e,e+=t);return o}function We(n){for(var t=-1,r=n?n.length:0,e=-1,i=[];++t<r;){var u=n[t];u&&(i[++e]=u)}return i}function Le(){for(var n=-1,t=arguments.length;++n<t;){var r=arguments[n];if(Xa(r)||wu(r))break}return mr(r,jr(arguments,!1,!0,++n))}function Me(n,t,r){var e=n?n.length:0;return e?((r?Ae(n,t,r):null==t)&&(t=1),Yr(n,0>t?0:t)):[]}function $e(n,t,r){var e=n?n.length:0;return e?((r?Ae(n,t,r):null==t)&&(t=1),t=e-(+t||0),Yr(n,0,0>t?0:t)):[]}function qe(n,t,r){var e=n?n.length:0;if(!e)return[];for(t=de(t,r,3);e--&&t(n[e],e,n););return Yr(n,0,e+1)}function Pe(n,t,r){var e=n?n.length:0;if(!e)return[];var i=-1;for(t=de(t,r,3);++i<e&&t(n[i],i,n););return Yr(n,i)}function ze(n,t,r,e){var i=n?n.length:0;return i?(r&&"number"!=typeof r&&Ae(n,t,r)&&(r=0,e=i),xr(n,t,r,e)):[]}function Ve(n,t,r){var e=-1,i=n?n.length:0;for(t=de(t,r,3);++e<i;)if(t(n[e],e,n))return e;return-1}function Ye(n,t,r){var e=n?n.length:0;for(t=de(t,r,3);e--;)if(t(n[e],e,n))return e;return-1}function Ke(n){return n?n[0]:S}function Ge(n,t,r){var e=n?n.length:0;return r&&Ae(n,t,r)&&(t=!1),e?jr(n,t):[]}function He(n){var t=n?n.length:0;return t?jr(n,!0):[]}function Je(n,t,r){var e=n?n.length:0;if(!e)return-1;if("number"==typeof r)r=0>r?Ca(e+r,0):r||0;else if(r){var i=Xr(n,t),u=n[i];return(t===t?t===u:u!==u)?i:-1}return o(n,t,r)}function Xe(n){return $e(n,1)}function Ze(){for(var n=[],t=-1,r=arguments.length,e=[],i=ye(),u=i==o;++t<r;){var a=arguments[t];(Xa(a)||wu(a))&&(n.push(a),e.push(u&&a.length>=120?$a(t&&a):null))}r=n.length;var c=n[0],f=-1,l=c?c.length:0,s=[],h=e[0];n:for(;++f<l;)if(a=c[f],(h?Jt(h,a):i(s,a))<0){for(t=r;--t;){var p=e[t];if((p?Jt(p,a):i(n[t],a))<0)continue n}h&&h.push(a),s.push(a)}return s}function Qe(n){var t=n?n.length:0;return t?n[t-1]:S}function ni(n,t,r){var e=n?n.length:0;if(!e)return-1;var i=e;if("number"==typeof r)i=(0>r?Ca(e+r,0):Aa(r||0,e-1))+1;else if(r){i=Xr(n,t,!0)-1;var u=n[i];return(t===t?t===u:u!==u)?i:-1}if(t!==t)return y(n,i,!0);for(;i--;)if(n[i]===t)return i;return-1}function ti(){var n=arguments[0];if(!n||!n.length)return n;for(var t=0,r=ye(),e=arguments.length;++t<e;)for(var i=0,u=arguments[t];(i=r(n,u,i))>-1;)va.call(n,i,1);return n}function ri(n){return Pr(n||[],jr(arguments,!1,!1,1))}function ei(n,t,r){var e=-1,i=n?n.length:0,u=[];for(t=de(t,r,3);++e<i;){var o=n[e];t(o,e,n)&&(u.push(o),va.call(n,e--,1),i--)}return u}function ii(n){return Me(n,1)}function ui(n,t,r){var e=n?n.length:0;return e?(r&&"number"!=typeof r&&Ae(n,t,r)&&(t=0,r=e),Yr(n,t,r)):[]}function oi(n,t,r,e){var i=de(r);return i===vr&&null==r?Xr(n,t):Zr(n,t,i(r,e,1))}function ai(n,t,r,e){var i=de(r);return i===vr&&null==r?Xr(n,t,!0):Zr(n,t,i(r,e,1),!0)}function ci(n,t,r){var e=n?n.length:0;return e?((r?Ae(n,t,r):null==t)&&(t=1),Yr(n,0,0>t?0:t)):[]}function fi(n,t,r){var e=n?n.length:0;return e?((r?Ae(n,t,r):null==t)&&(t=1),t=e-(+t||0),Yr(n,0>t?0:t)):[]}function li(n,t,r){var e=n?n.length:0;if(!e)return[];for(t=de(t,r,3);e--&&t(n[e],e,n););return Yr(n,e+1)}function si(n,t,r){var e=n?n.length:0;if(!e)return[];var i=-1;for(t=de(t,r,3);++i<e&&t(n[i],i,n););return Yr(n,0,i)}function hi(){return Gr(jr(arguments,!1,!0))}function pi(n,t,r,e){var i=n?n.length:0;if(!i)return[];null!=t&&"boolean"!=typeof t&&(e=r,r=Ae(n,t,e)?null:t,t=!1);var u=de();return(u!==vr||null!=r)&&(r=u(r,e,3)),t&&ye()==o?E(n,r):Gr(n,r)}function _i(n){for(var t=-1,r=(n&&n.length&&ur(ir(n,na)))>>>0,e=Mo(r);++t<r;)e[t]=ir(n,qr(t));return e}function gi(n){return mr(n,Yr(arguments,1))}function vi(){for(var n=-1,t=arguments.length;++n<t;){var r=arguments[n];if(Xa(r)||wu(r))var e=e?mr(e,r).concat(mr(r,e)):r}return e?Gr(e):[]}function di(){for(var n=arguments.length,t=Mo(n);n--;)t[n]=arguments[n];return _i(t)}function yi(n,t){var r=-1,e=n?n.length:0,i={};for(!e||t||Xa(n[0])||(t=[]);++r<e;){var u=n[r];t?i[u]=t[r]:u&&(i[u[0]]=u[1])}return i}function mi(n){var r=t(n);return r.__chain__=!0,r}function wi(n,t,r){return t.call(r,n),n}function bi(n,t,r){return t.call(r,n)}function Ei(){return mi(this)}function xi(){return new e(this.value(),this.__chain__)}function Ci(n){for(var t,e=this;e instanceof r;){var i=Fe(e);t?u.__wrapped__=i:t=i;var u=i;e=e.__wrapped__}return u.__wrapped__=n,t}function Ai(){var n=this.__wrapped__;return n instanceof i?(this.__actions__.length&&(n=new i(this)),new e(n.reverse(),this.__chain__)):this.thru(function(n){return n.reverse()})}function ji(){return this.value()+""}function Si(){return Jr(this.__wrapped__,this.__actions__)}function Ii(n){var t=n?n.length:0;return je(t)&&(n=De(n)),pr(n,jr(arguments,!1,!1,1))}function Ti(n,t,r){var e=Xa(n)?rr:Er;return("function"!=typeof t||"undefined"!=typeof r)&&(t=de(t,r,3)),e(n,t)}function ki(n,t,r){var e=Xa(n)?er:Cr;return t=de(t,r,3),e(n,t)}function Oi(n,t,r){if(Xa(n)){var e=Ve(n,t,r);return e>-1?n[e]:S}return t=de(t,r,3),Ar(n,t,wr)}function Bi(n,t,r){return t=de(t,r,3),Ar(n,t,br)}function Ri(n,t){return Oi(n,Wr(t))}function Di(n,t,r){return"function"==typeof t&&"undefined"==typeof r&&Xa(n)?nr(n,t):wr(n,Qr(t,r,3))}function Ni(n,t,r){return"function"==typeof t&&"undefined"==typeof r&&Xa(n)?tr(n,t):br(n,Qr(t,r,3))}function Fi(n,t,r){var e=n?n.length:0;return je(e)||(n=eo(n),e=n.length),e?(r="number"==typeof r?0>r?Ca(e+r,0):r||0:0,"string"==typeof n||!Xa(n)&&Du(n)?e>r&&n.indexOf(t,r)>-1:ye(n,t,r)>-1):!1}function Ui(n,t){return Rr(n,t,Yr(arguments,2))}function Wi(n,t,r){var e=Xa(n)?ir:Ur;return t=de(t,r,3),e(n,t)}function Li(n,t){return Wi(n,qr(t))}function Mi(n,t,r,e){var i=Xa(n)?ar:Vr;return i(n,de(t,e,4),r,arguments.length<3,wr)}function $i(n,t,r,e){var i=Xa(n)?cr:Vr;return i(n,de(t,e,4),r,arguments.length<3,br)}function qi(n,t,r){var e=Xa(n)?er:Cr;return t=de(t,r,3),e(n,function(n,r,e){return!t(n,r,e)})}function Pi(n,t,r){if(r?Ae(n,t,r):null==t){n=De(n);var e=n.length;return e>0?n[zr(0,e-1)]:S}var i=zi(n);return i.length=Aa(0>t?0:+t||0,i.length),i}function zi(n){n=De(n);for(var t=-1,r=n.length,e=Mo(r);++t<r;){var i=zr(0,t);t!=i&&(e[t]=e[i]),e[i]=n[t]}return e}function Vi(n){var t=n?n.length:0;return je(t)?t:rc(n).length}function Yi(n,t,r){var e=Xa(n)?fr:Kr;return("function"!=typeof t||"undefined"!=typeof r)&&(t=de(t,r,3)),e(n,t)}function Ki(n,t,r){var e=-1,i=n?n.length:0,u=je(i)?Mo(i):[];return r&&Ae(n,t,r)&&(t=null),t=de(t,r,3),wr(n,function(n,r,i){u[++e]={criteria:t(n,r,i),index:e,value:n}}),c(u,p)}function Gi(n){var t=arguments;t.length>3&&Ae(t[1],t[2],t[3])&&(t=[n,t[1]]);var r=-1,e=n?n.length:0,i=jr(t,!1,!1,1),u=je(e)?Mo(e):[];return wr(n,function(n){for(var t=i.length,e=Mo(t);t--;)e[t]=null==n?S:n[i[t]];u[++r]={criteria:e,index:r,value:n}}),c(u,_)}function Hi(n,t){return ki(n,Wr(t))}function Ji(n,t){if("function"!=typeof t){if("function"!=typeof n)throw new Ho(V);var r=n;n=t,t=r}return n=Ea(n=+n)?n:0,function(){return--n<1?t.apply(this,arguments):void 0}}function Xi(n,t,r){return r&&Ae(n,t,r)&&(t=null),t=n&&null==t?n.length:Ca(+t||0,0),he(n,U,null,null,null,null,t)}function Zi(n,t){var r;if("function"!=typeof t){if("function"!=typeof n)throw new Ho(V);var e=n;n=t,t=e}return function(){return--n>0?r=t.apply(this,arguments):t=null,r}}function Qi(n,t){var r=T;if(arguments.length>2){var e=Yr(arguments,2),i=b(e,Qi.placeholder);r|=D}return he(n,r,t,e,i)}function nu(n){return gr(n,arguments.length>1?jr(arguments,!1,!1,1):Ku(n))}function tu(n,t){var r=T|k;if(arguments.length>2){var e=Yr(arguments,2),i=b(e,tu.placeholder);r|=D}return he(t,r,n,e,i)}function ru(n,t,r){r&&Ae(n,t,r)&&(t=null);var e=he(n,B,null,null,null,null,null,t);return e.placeholder=ru.placeholder,e}function eu(n,t,r){r&&Ae(n,t,r)&&(t=null);var e=he(n,R,null,null,null,null,null,t);return e.placeholder=eu.placeholder,e}function iu(n,t,r){function e(){h&&fa(h),c&&fa(c),c=h=p=S}function i(){var r=t-(Ja()-l);if(0>=r||r>t){c&&fa(c);var e=p;c=h=p=S,e&&(_=Ja(),f=n.apply(s,a),h||c||(a=s=null))}else h=ga(i,r)}function u(){h&&fa(h),c=h=p=S,(v||g!==t)&&(_=Ja(),f=n.apply(s,a),h||c||(a=s=null))}function o(){if(a=arguments,l=Ja(),s=this,p=v&&(h||!d),g===!1)var r=d&&!h;else{c||d||(_=l);var e=g-(l-_),o=0>=e||e>g;o?(c&&(c=fa(c)),_=l,f=n.apply(s,a)):c||(c=ga(u,e))}return o&&h?h=fa(h):h||t===g||(h=ga(i,t)),r&&(o=!0,f=n.apply(s,a)),!o||h||c||(a=s=null),f}var a,c,f,l,s,h,p,_=0,g=!1,v=!0;if("function"!=typeof n)throw new Ho(V);if(t=0>t?0:+t||0,r===!0){var d=!0;v=!1}else Su(r)&&(d=r.leading,g="maxWait"in r&&Ca(+r.maxWait||0,t),v="trailing"in r?r.trailing:v);return o.cancel=e,o}function uu(n){return yr(n,1,arguments,1)}function ou(n,t){return yr(n,t,arguments,2)}function au(){var n=arguments,t=n.length;if(!t)return function(){return arguments[0]};if(!rr(n,a))throw new Ho(V);return function(){for(var r=0,e=n[r].apply(this,arguments);++r<t;)e=n[r].call(this,e);return e}}function cu(){var n=arguments,t=n.length-1;if(0>t)return function(){return arguments[0]};if(!rr(n,a))throw new Ho(V);return function(){for(var r=t,e=n[r].apply(this,arguments);r--;)e=n[r].call(this,e);return e}}function fu(n,t){if("function"!=typeof n||t&&"function"!=typeof t)throw new Ho(V);var r=function(){var e=r.cache,i=t?t.apply(this,arguments):arguments[0];if(e.has(i))return e.get(i);var u=n.apply(this,arguments);return e.set(i,u),u};return r.cache=new fu.Cache,r}function lu(n){if("function"!=typeof n)throw new Ho(V);return function(){return!n.apply(this,arguments)}}function su(n){return Zi(n,2)}function hu(n){var t=Yr(arguments,1),r=b(t,hu.placeholder);return he(n,D,null,t,r)}function pu(n){var t=Yr(arguments,1),r=b(t,pu.placeholder);return he(n,N,null,t,r)}function _u(n){var t=jr(arguments,!1,!1,1);return he(n,F,null,null,null,t)}function gu(n){if("function"!=typeof n)throw new Ho(V);return function(t){return n.apply(this,t)}}function vu(n,t,r){var e=!0,i=!0;if("function"!=typeof n)throw new Ho(V);return r===!1?e=!1:Su(r)&&(e="leading"in r?!!r.leading:e,i="trailing"in r?!!r.trailing:i),Pt.leading=e,Pt.maxWait=+t,Pt.trailing=i,iu(n,t,Pt)}function du(n,t){return t=null==t?To:t,he(t,D,null,[n],[])}function yu(n,t,r,e){return t&&"boolean"!=typeof t&&Ae(n,t,r)?t=!1:"function"==typeof t&&(e=r,r=t,t=!1),r="function"==typeof r&&Qr(r,e,1),dr(n,t,r)}function mu(n,t,r){return t="function"==typeof t&&Qr(t,r,1),dr(n,!0,t)}function wu(n){var t=m(n)?n.length:S;return je(t)&&ea.call(n)==K||!1}function bu(n){return n===!0||n===!1||m(n)&&ea.call(n)==H||!1}function Eu(n){return m(n)&&ea.call(n)==J||!1}function xu(n){return n&&1===n.nodeType&&m(n)&&ea.call(n).indexOf("Element")>-1||!1}function Cu(n){if(null==n)return!0;var t=n.length;return je(t)&&(Xa(n)||Du(n)||wu(n)||m(n)&&Qa(n.splice))?!t:!rc(n).length}function Au(n,t,r,e){if(r="function"==typeof r&&Qr(r,e,3),!r&&Se(n)&&Se(t))return n===t;var i=r?r(n,t):S;return"undefined"==typeof i?Dr(n,t,r):!!i}function ju(n){return m(n)&&"string"==typeof n.message&&ea.call(n)==X||!1}function Su(n){var t=typeof n;return"function"==t||n&&"object"==t||!1}function Iu(n,t,r,e){var i=rc(t),u=i.length;if(r="function"==typeof r&&Qr(r,e,3),!r&&1==u){var o=i[0],a=t[o];if(Se(a))return null!=n&&a===n[o]&&ta.call(n,o)}for(var c=Mo(u),f=Mo(u);u--;)a=c[u]=t[i[u]],f[u]=Se(a);return Fr(n,i,c,f,r)}function Tu(n){return Bu(n)&&n!=+n}function ku(n){return null==n?!1:ea.call(n)==Z?ua.test(Qo.call(n)):m(n)&&kt.test(n)||!1}function Ou(n){return null===n}function Bu(n){return"number"==typeof n||m(n)&&ea.call(n)==nt||!1}function Ru(n){return m(n)&&ea.call(n)==rt||!1}function Du(n){return"string"==typeof n||m(n)&&ea.call(n)==it||!1}function Nu(n){return m(n)&&je(n.length)&&$t[ea.call(n)]||!1}function Fu(n){return"undefined"==typeof n}function Uu(n){var t=n?n.length:0;return je(t)?t?Zt(n):[]:eo(n)}function Wu(n){return _r(n,Ju(n))}function Lu(n,t,r){var e=La(n);return r&&Ae(n,t,r)&&(t=null),t?_r(t,e,rc(t)):e}function Mu(n){if(null==n)return n;var t=Zt(arguments);return t.push(lr),tc.apply(S,t)}function $u(n,t,r){return t=de(t,r,3),Ar(n,t,kr,!0)}function qu(n,t,r){return t=de(t,r,3),Ar(n,t,Or,!0)}function Pu(n,t,r){return("function"!=typeof t||"undefined"!=typeof r)&&(t=Qr(t,r,3)),Sr(n,t,Ju)}function zu(n,t,r){return t=Qr(t,r,3),Ir(n,t,Ju)}function Vu(n,t,r){return("function"!=typeof t||"undefined"!=typeof r)&&(t=Qr(t,r,3)),kr(n,t)}function Yu(n,t,r){return t=Qr(t,r,3),Ir(n,t,rc)}function Ku(n){return Br(n,Ju(n))}function Gu(n,t){return n?ta.call(n,t):!1}function Hu(n,t,r){r&&Ae(n,t,r)&&(t=null);for(var e=-1,i=rc(n),u=i.length,o={};++e<u;){var a=i[e],c=n[a];t?ta.call(o,c)?o[c].push(a):o[c]=[a]:o[c]=a}return o}function Ju(n){if(null==n)return[];Su(n)||(n=Yo(n));var t=n.length;t=t&&je(t)&&(Xa(n)||Wa.nonEnumArgs&&wu(n))&&t||0;for(var r=n.constructor,e=-1,i="function"==typeof r&&r.prototype===n,u=Mo(t),o=t>0;++e<t;)u[e]=e+"";for(var a in n)o&&Ce(a,t)||"constructor"==a&&(i||!ta.call(n,a))||u.push(a);return u}function Xu(n,t,r){var e={};return t=de(t,r,3),kr(n,function(n,r,i){e[r]=t(n,r,i)}),e}function Zu(n,t,r){if(null==n)return{};if("function"!=typeof t){var e=ir(jr(arguments,!1,!1,1),Go);return Te(n,mr(Ju(n),e))}return t=Qr(t,r,3),ke(n,function(n,r,e){return!t(n,r,e)})}function Qu(n){for(var t=-1,r=rc(n),e=r.length,i=Mo(e);++t<e;){var u=r[t];i[t]=[u,n[u]]}return i}function no(n,t,r){return null==n?{}:"function"==typeof t?ke(n,Qr(t,r,3)):Te(n,jr(arguments,!1,!1,1))}function to(n,t,r){var e=null==n?S:n[t];return"undefined"==typeof e&&(e=r),Qa(e)?e.call(n):e}function ro(n,t,r,e){var i=Xa(n)||Nu(n);if(t=de(t,e,4),null==r)if(i||Su(n)){var u=n.constructor;r=i?Xa(n)?new u:[]:La(Qa(u)&&u.prototype)}else r={};return(i?nr:kr)(n,function(n,e,i){return t(r,n,e,i)}),r}function eo(n){return Hr(n,rc(n))}function io(n){return Hr(n,Ju(n))}function uo(n,t,r){return t=+t||0,"undefined"==typeof r?(r=t,t=0):r=+r||0,n>=t&&r>n}function oo(n,t,r){r&&Ae(n,t,r)&&(t=r=null);var e=null==n,i=null==t;if(null==r&&(i&&"boolean"==typeof n?(r=n,n=1):"boolean"==typeof t&&(r=t,i=!0)),e&&i&&(t=1,i=!1),n=+n||0,i?(t=n,n=0):t=+t||0,r||n%1||t%1){var u=Ta();
return Aa(n+u*(t-n+parseFloat("1e-"+((u+"").length-1))),t)}return zr(n,t)}function ao(n){return n=f(n),n&&n.charAt(0).toUpperCase()+n.slice(1)}function co(n){return n=f(n),n&&n.replace(Ot,g)}function fo(n,t,r){n=f(n),t+="";var e=n.length;return r=("undefined"==typeof r?e:Aa(0>r?0:+r||0,e))-t.length,r>=0&&n.indexOf(t,r)==r}function lo(n){return n=f(n),n&&Et.test(n)?n.replace(wt,v):n}function so(n){return n=f(n),n&&Dt.test(n)?n.replace(Rt,"\\$&"):n}function ho(n,t,r){n=f(n),t=+t;var e=n.length;if(e>=t||!Ea(t))return n;var i=(t-e)/2,u=la(i),o=ca(i);return r=le("",o,r),r.slice(0,u)+n+r}function po(n,t,r){return n=f(n),n&&le(n,t,r)+n}function _o(n,t,r){return n=f(n),n&&n+le(n,t,r)}function go(n,t,r){return r&&Ae(n,t,r)&&(t=0),Ia(n,t)}function vo(n,t){var r="";if(n=f(n),t=+t,1>t||!n||!Ea(t))return r;do t%2&&(r+=n),t=la(t/2),n+=n;while(t);return r}function yo(n,t,r){return n=f(n),r=null==r?0:Aa(0>r?0:+r||0,n.length),n.lastIndexOf(t,r)==r}function mo(n,r,e){var i=t.templateSettings;e&&Ae(n,r,e)&&(r=e=null),n=f(n),r=hr(hr({},e||r),i,sr);var u,o,a=hr(hr({},r.imports),i.imports,sr),c=rc(a),l=Hr(a,c),s=0,h=r.interpolate||Bt,p="__p += '",_=Ko((r.escape||Bt).source+"|"+h.source+"|"+(h===At?jt:Bt).source+"|"+(r.evaluate||Bt).source+"|$","g"),g="//# sourceURL="+("sourceURL"in r?r.sourceURL:"lodash.templateSources["+ ++Mt+"]")+"\n";n.replace(_,function(t,r,e,i,a,c){return e||(e=i),p+=n.slice(s,c).replace(Ft,d),r&&(u=!0,p+="' +\n__e("+r+") +\n'"),a&&(o=!0,p+="';\n"+a+";\n__p += '"),e&&(p+="' +\n((__t = ("+e+")) == null ? '' : __t) +\n'"),s=c+t.length,t}),p+="';\n";var v=r.variable;v||(p="with (obj) {\n"+p+"\n}\n"),p=(o?p.replace(vt,""):p).replace(dt,"$1").replace(yt,"$1;"),p="function("+(v||"obj")+") {\n"+(v?"":"obj || (obj = {});\n")+"var __t, __p = ''"+(u?", __e = _.escape":"")+(o?", __j = Array.prototype.join;\nfunction print() { __p += __j.call(arguments, '') }\n":";\n")+p+"return __p\n}";var y=jo(function(){return Po(c,g+"return "+p).apply(S,l)});if(y.source=p,ju(y))throw y;return y}function wo(n,t,r){var e=n;return(n=f(n))?(r?Ae(e,t,r):null==t)?n.slice(x(n),C(n)+1):(t+="",n.slice(s(n,t),h(n,t)+1)):n}function bo(n,t,r){var e=n;return n=f(n),n?n.slice((r?Ae(e,t,r):null==t)?x(n):s(n,t+"")):n}function Eo(n,t,r){var e=n;return n=f(n),n?(r?Ae(e,t,r):null==t)?n.slice(0,C(n)+1):n.slice(0,h(n,t+"")+1):n}function xo(n,t,r){r&&Ae(n,t,r)&&(t=null);var e=W,i=L;if(null!=t)if(Su(t)){var u="separator"in t?t.separator:u;e="length"in t?+t.length||0:e,i="omission"in t?f(t.omission):i}else e=+t||0;if(n=f(n),e>=n.length)return n;var o=e-i.length;if(1>o)return i;var a=n.slice(0,o);if(null==u)return a+i;if(Ru(u)){if(n.slice(o).search(u)){var c,l,s=n.slice(0,o);for(u.global||(u=Ko(u.source,(St.exec(u)||"")+"g")),u.lastIndex=0;c=u.exec(s);)l=c.index;a=a.slice(0,null==l?o:l)}}else if(n.indexOf(u,o)!=o){var h=a.lastIndexOf(u);h>-1&&(a=a.slice(0,h))}return a+i}function Co(n){return n=f(n),n&&bt.test(n)?n.replace(mt,A):n}function Ao(n,t,r){return r&&Ae(n,t,r)&&(t=null),n=f(n),n.match(t||Ut)||[]}function jo(){var n=arguments.length,t=arguments[0];try{for(var r=Mo(n?n-1:0);--n>0;)r[n-1]=arguments[n];return t.apply(S,r)}catch(e){return ju(e)?e:new qo(e)}}function So(n,t,r){return r&&Ae(n,t,r)&&(t=null),m(n)?ko(n):vr(n,t)}function Io(n){return function(){return n}}function To(n){return n}function ko(n){return Wr(dr(n,!0))}function Oo(n,t){return Lr(n+"",dr(t,!0))}function Bo(n,t,r){if(null==r){var e=Su(t),i=e&&rc(t),u=i&&i.length&&Br(t,i);(u?u.length:e)||(u=!1,r=t,t=n,n=this)}u||(u=Br(t,rc(t)));var o=!0,a=-1,c=Qa(n),f=u.length;r===!1?o=!1:Su(r)&&"chain"in r&&(o=r.chain);for(;++a<f;){var l=u[a],s=t[l];n[l]=s,c&&(n.prototype[l]=function(t){return function(){var r=this.__chain__;if(o||r){var e=n(this.__wrapped__);return(e.__actions__=Zt(this.__actions__)).push({func:t,args:arguments,thisArg:n}),e.__chain__=r,e}var i=[this.value()];return ha.apply(i,arguments),t.apply(n,i)}}(s))}return n}function Ro(){return n._=ia,this}function Do(){}function No(n){return qr(n+"")}function Fo(n){return function(t){return null==n?S:n[t]}}function Uo(n,t,r){r&&Ae(n,t,r)&&(t=r=null),n=+n||0,r=null==r?1:+r||0,null==t?(t=n,n=0):t=+t||0;for(var e=-1,i=Ca(ca((t-n)/(r||1)),0),u=Mo(i);++e<i;)u[e]=n,n+=r;return u}function Wo(n,t,r){if(n=+n,1>n||!Ea(n))return[];var e=-1,i=Mo(Aa(n,Ba));for(t=Qr(t,r,1);++e<n;)Ba>e?i[e]=t(e):t(e);return i}function Lo(n){var t=++ra;return f(n)+t}n=n?Qt.defaults(Ht.Object(),n,Qt.pick(Ht,Lt)):Ht;var Mo=n.Array,$o=n.Date,qo=n.Error,Po=n.Function,zo=n.Math,Vo=n.Number,Yo=n.Object,Ko=n.RegExp,Go=n.String,Ho=n.TypeError,Jo=Mo.prototype,Xo=Yo.prototype,Zo=(Zo=n.window)&&Zo.document,Qo=Po.prototype.toString,na=qr("length"),ta=Xo.hasOwnProperty,ra=0,ea=Xo.toString,ia=n._,ua=Ko("^"+so(ea).replace(/toString|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),oa=ku(oa=n.ArrayBuffer)&&oa,aa=ku(aa=oa&&new oa(0).slice)&&aa,ca=zo.ceil,fa=n.clearTimeout,la=zo.floor,sa=ku(sa=Yo.getPrototypeOf)&&sa,ha=Jo.push,pa=Xo.propertyIsEnumerable,_a=ku(_a=n.Set)&&_a,ga=n.setTimeout,va=Jo.splice,da=ku(da=n.Uint8Array)&&da,ya=ku(ya=n.WeakMap)&&ya,ma=function(){try{var t=ku(t=n.Float64Array)&&t,r=new t(new oa(10),0,1)&&t}catch(e){}return r}(),wa=ku(wa=Mo.isArray)&&wa,ba=ku(ba=Yo.create)&&ba,Ea=n.isFinite,xa=ku(xa=Yo.keys)&&xa,Ca=zo.max,Aa=zo.min,ja=ku(ja=$o.now)&&ja,Sa=ku(Sa=Vo.isFinite)&&Sa,Ia=n.parseInt,Ta=zo.random,ka=Vo.NEGATIVE_INFINITY,Oa=Vo.POSITIVE_INFINITY,Ba=zo.pow(2,32)-1,Ra=Ba-1,Da=Ba>>>1,Na=ma?ma.BYTES_PER_ELEMENT:0,Fa=zo.pow(2,53)-1,Ua=ya&&new ya,Wa=t.support={};!function(){Wa.funcDecomp=!ku(n.WinRTError)&&Nt.test(j),Wa.funcNames="string"==typeof Po.name;try{Wa.dom=11===Zo.createDocumentFragment().nodeType}catch(t){Wa.dom=!1}try{Wa.nonEnumArgs=!pa.call(arguments,1)}catch(t){Wa.nonEnumArgs=!0}}(0,0),t.templateSettings={escape:xt,evaluate:Ct,interpolate:At,variable:"",imports:{_:t}};var La=function(){function t(){}return function(r){if(Su(r)){t.prototype=r;var e=new t;t.prototype=null}return e||n.Object()}}(),Ma=Ua?function(n,t){return Ua.set(n,t),n}:To;aa||(ne=oa&&da?function(n){var t=n.byteLength,r=ma?la(t/Na):0,e=r*Na,i=new oa(t);if(r){var u=new ma(i,0,r);u.set(new ma(n,0,r))}return t!=e&&(u=new da(i,e),u.set(new da(n,e))),i}:Io(null));var $a=ba&&_a?function(n){return new Gt(n)}:Io(null),qa=Ua?function(n){return Ua.get(n)}:Do,Pa=function(){var n=0,t=0;return function(r,e){var i=Ja(),u=$-(i-t);if(t=i,u>0){if(++n>=M)return r}else n=0;return Ma(r,e)}}(),za=ee(function(n,t,r){ta.call(n,r)?++n[r]:n[r]=1}),Va=ee(function(n,t,r){ta.call(n,r)?n[r].push(t):n[r]=[t]}),Ya=ee(function(n,t,r){n[r]=t}),Ka=ce(ur),Ga=ce(or,!0),Ha=ee(function(n,t,r){n[r?0:1].push(t)},function(){return[[],[]]}),Ja=ja||function(){return(new $o).getTime()},Xa=wa||function(n){return m(n)&&je(n.length)&&ea.call(n)==G||!1};Wa.dom||(xu=function(n){return n&&1===n.nodeType&&m(n)&&!nc(n)||!1});var Za=Sa||function(n){return"number"==typeof n&&Ea(n)},Qa=a(/x/)||da&&!a(da)?function(n){return ea.call(n)==Z}:a,nc=sa?function(n){if(!n||ea.call(n)!=tt)return!1;var t=n.valueOf,r=ku(t)&&(r=sa(t))&&sa(r);return r?n==r||sa(n)==r:Be(n)}:Be,tc=ie(hr),rc=xa?function(n){if(n)var t=n.constructor,r=n.length;return"function"==typeof t&&t.prototype===n||"function"!=typeof n&&r&&je(r)?Re(n):Su(n)?xa(n):[]}:Re,ec=ie(Mr),ic=oe(function(n,t,r){return t=t.toLowerCase(),n+(r?t.charAt(0).toUpperCase()+t.slice(1):t)}),uc=oe(function(n,t,r){return n+(r?"-":"")+t.toLowerCase()});8!=Ia(Wt+"08")&&(go=function(n,t,r){return(r?Ae(n,t,r):null==t)?t=0:t&&(t=+t),n=wo(n),Ia(n,t||(Tt.test(n)?16:10))});var oc=oe(function(n,t,r){return n+(r?"_":"")+t.toLowerCase()}),ac=oe(function(n,t,r){return n+(r?" ":"")+(t.charAt(0).toUpperCase()+t.slice(1))});return t.prototype=r.prototype,e.prototype=La(r.prototype),e.prototype.constructor=e,i.prototype=La(r.prototype),i.prototype.constructor=i,ut.prototype["delete"]=zt,ut.prototype.get=Vt,ut.prototype.has=Yt,ut.prototype.set=Kt,Gt.prototype.push=Xt,fu.Cache=ut,t.after=Ji,t.ary=Xi,t.assign=tc,t.at=Ii,t.before=Zi,t.bind=Qi,t.bindAll=nu,t.bindKey=tu,t.callback=So,t.chain=mi,t.chunk=Ue,t.compact=We,t.constant=Io,t.countBy=za,t.create=Lu,t.curry=ru,t.curryRight=eu,t.debounce=iu,t.defaults=Mu,t.defer=uu,t.delay=ou,t.difference=Le,t.drop=Me,t.dropRight=$e,t.dropRightWhile=qe,t.dropWhile=Pe,t.fill=ze,t.filter=ki,t.flatten=Ge,t.flattenDeep=He,t.flow=au,t.flowRight=cu,t.forEach=Di,t.forEachRight=Ni,t.forIn=Pu,t.forInRight=zu,t.forOwn=Vu,t.forOwnRight=Yu,t.functions=Ku,t.groupBy=Va,t.indexBy=Ya,t.initial=Xe,t.intersection=Ze,t.invert=Hu,t.invoke=Ui,t.keys=rc,t.keysIn=Ju,t.map=Wi,t.mapValues=Xu,t.matches=ko,t.matchesProperty=Oo,t.memoize=fu,t.merge=ec,t.mixin=Bo,t.negate=lu,t.omit=Zu,t.once=su,t.pairs=Qu,t.partial=hu,t.partialRight=pu,t.partition=Ha,t.pick=no,t.pluck=Li,t.property=No,t.propertyOf=Fo,t.pull=ti,t.pullAt=ri,t.range=Uo,t.rearg=_u,t.reject=qi,t.remove=ei,t.rest=ii,t.shuffle=zi,t.slice=ui,t.sortBy=Ki,t.sortByAll=Gi,t.spread=gu,t.take=ci,t.takeRight=fi,t.takeRightWhile=li,t.takeWhile=si,t.tap=wi,t.throttle=vu,t.thru=bi,t.times=Wo,t.toArray=Uu,t.toPlainObject=Wu,t.transform=ro,t.union=hi,t.uniq=pi,t.unzip=_i,t.values=eo,t.valuesIn=io,t.where=Hi,t.without=gi,t.wrap=du,t.xor=vi,t.zip=di,t.zipObject=yi,t.backflow=cu,t.collect=Wi,t.compose=cu,t.each=Di,t.eachRight=Ni,t.extend=tc,t.iteratee=So,t.methods=Ku,t.object=yi,t.select=ki,t.tail=ii,t.unique=pi,Bo(t,t),t.attempt=jo,t.camelCase=ic,t.capitalize=ao,t.clone=yu,t.cloneDeep=mu,t.deburr=co,t.endsWith=fo,t.escape=lo,t.escapeRegExp=so,t.every=Ti,t.find=Oi,t.findIndex=Ve,t.findKey=$u,t.findLast=Bi,t.findLastIndex=Ye,t.findLastKey=qu,t.findWhere=Ri,t.first=Ke,t.has=Gu,t.identity=To,t.includes=Fi,t.indexOf=Je,t.inRange=uo,t.isArguments=wu,t.isArray=Xa,t.isBoolean=bu,t.isDate=Eu,t.isElement=xu,t.isEmpty=Cu,t.isEqual=Au,t.isError=ju,t.isFinite=Za,t.isFunction=Qa,t.isMatch=Iu,t.isNaN=Tu,t.isNative=ku,t.isNull=Ou,t.isNumber=Bu,t.isObject=Su,t.isPlainObject=nc,t.isRegExp=Ru,t.isString=Du,t.isTypedArray=Nu,t.isUndefined=Fu,t.kebabCase=uc,t.last=Qe,t.lastIndexOf=ni,t.max=Ka,t.min=Ga,t.noConflict=Ro,t.noop=Do,t.now=Ja,t.pad=ho,t.padLeft=po,t.padRight=_o,t.parseInt=go,t.random=oo,t.reduce=Mi,t.reduceRight=$i,t.repeat=vo,t.result=to,t.runInContext=j,t.size=Vi,t.snakeCase=oc,t.some=Yi,t.sortedIndex=oi,t.sortedLastIndex=ai,t.startCase=ac,t.startsWith=yo,t.template=mo,t.trim=wo,t.trimLeft=bo,t.trimRight=Eo,t.trunc=xo,t.unescape=Co,t.uniqueId=Lo,t.words=Ao,t.all=Ti,t.any=Yi,t.contains=Fi,t.detect=Oi,t.foldl=Mi,t.foldr=$i,t.head=Ke,t.include=Fi,t.inject=Mi,Bo(t,function(){var n={};return kr(t,function(r,e){t.prototype[e]||(n[e]=r)}),n}(),!1),t.sample=Pi,t.prototype.sample=function(n){return this.__chain__||null!=n?this.thru(function(t){return Pi(t,n)}):Pi(this.value())},t.VERSION=I,nr(["bind","bindKey","curry","curryRight","partial","partialRight"],function(n){t[n].placeholder=t}),nr(["filter","map","takeWhile"],function(n,t){var r=t==q||t==z;i.prototype[n]=function(n,e){var i=this.clone(),u=i.__iteratees__||(i.__iteratees__=[]);return i.__filtered__=i.__filtered__||r,u.push({iteratee:de(n,e,3),type:t}),i}}),nr(["drop","take"],function(n,t){var r="__"+n+"Count__",e=n+"While";i.prototype[n]=function(e){e=null==e?1:Ca(la(e)||0,0);var i=this.clone();if(i.__filtered__){var u=i[r];i[r]=t?Aa(u,e):u+e}else{var o=i.__views__||(i.__views__=[]);o.push({size:e,type:n+(i.__dir__<0?"Right":"")})}return i},i.prototype[n+"Right"]=function(t){return this.reverse()[n](t).reverse()},i.prototype[n+"RightWhile"]=function(n,t){return this.reverse()[e](n,t).reverse()}}),nr(["first","last"],function(n,t){var r="take"+(t?"Right":"");i.prototype[n]=function(){return this[r](1).value()[0]}}),nr(["initial","rest"],function(n,t){var r="drop"+(t?"":"Right");i.prototype[n]=function(){return this[r](1)}}),nr(["pluck","where"],function(n,t){var r=t?"filter":"map",e=t?Wr:qr;i.prototype[n]=function(n){return this[r](e(n))}}),i.prototype.compact=function(){return this.filter(To)},i.prototype.dropWhile=function(n,t){var r,e,i=this.__dir__<0;return n=de(n,t,3),this.filter(function(t,u,o){return r=r&&(i?e>u:u>e),e=u,r||(r=!n(t,u,o))})},i.prototype.reject=function(n,t){return n=de(n,t,3),this.filter(function(t,r,e){return!n(t,r,e)})},i.prototype.slice=function(n,t){n=null==n?0:+n||0;var r=0>n?this.takeRight(-n):this.drop(n);return"undefined"!=typeof t&&(t=+t||0,r=0>t?r.dropRight(-t):r.take(t-n)),r},i.prototype.toArray=function(){return this.drop(0)},kr(i.prototype,function(n,r){var u=t[r],o=/^(?:first|last)$/.test(r);t.prototype[r]=function(){var r=this.__wrapped__,a=arguments,c=this.__chain__,f=!!this.__actions__.length,l=r instanceof i,s=l&&!f;if(o&&!c)return s?n.call(r):u.call(t,this.value());var h=function(n){var r=[n];return ha.apply(r,a),u.apply(t,r)};if(l||Xa(r)){var p=s?r:new i(this),_=n.apply(p,a);if(!o&&(f||_.__actions__)){var g=_.__actions__||(_.__actions__=[]);g.push({func:bi,args:[h],thisArg:t})}return new e(_,c)}return this.thru(h)}}),nr(["concat","join","pop","push","shift","sort","splice","unshift"],function(n){var r=Jo[n],e=/^(?:push|sort|unshift)$/.test(n)?"tap":"thru",i=/^(?:join|pop|shift)$/.test(n);t.prototype[n]=function(){var n=arguments;return i&&!this.__chain__?r.apply(this.value(),n):this[e](function(t){return r.apply(t,n)})}}),i.prototype.clone=w,i.prototype.reverse=Q,i.prototype.value=et,t.prototype.chain=Ei,t.prototype.commit=xi,t.prototype.plant=Ci,t.prototype.reverse=Ai,t.prototype.toString=ji,t.prototype.run=t.prototype.toJSON=t.prototype.valueOf=t.prototype.value=Si,t.prototype.collect=t.prototype.map,t.prototype.head=t.prototype.first,t.prototype.select=t.prototype.filter,t.prototype.tail=t.prototype.rest,t}var S,I="3.3.1",T=1,k=2,O=4,B=8,R=16,D=32,N=64,F=128,U=256,W=30,L="...",M=150,$=16,q=0,P=1,z=2,V="Expected a function",Y="__lodash_placeholder__",K="[object Arguments]",G="[object Array]",H="[object Boolean]",J="[object Date]",X="[object Error]",Z="[object Function]",Q="[object Map]",nt="[object Number]",tt="[object Object]",rt="[object RegExp]",et="[object Set]",it="[object String]",ut="[object WeakMap]",ot="[object ArrayBuffer]",at="[object Float32Array]",ct="[object Float64Array]",ft="[object Int8Array]",lt="[object Int16Array]",st="[object Int32Array]",ht="[object Uint8Array]",pt="[object Uint8ClampedArray]",_t="[object Uint16Array]",gt="[object Uint32Array]",vt=/\b__p \+= '';/g,dt=/\b(__p \+=) '' \+/g,yt=/(__e\(.*?\)|\b__t\)) \+\n'';/g,mt=/&(?:amp|lt|gt|quot|#39|#96);/g,wt=/[&<>"'`]/g,bt=RegExp(mt.source),Et=RegExp(wt.source),xt=/<%-([\s\S]+?)%>/g,Ct=/<%([\s\S]+?)%>/g,At=/<%=([\s\S]+?)%>/g,jt=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,St=/\w*$/,It=/^\s*function[ \n\r\t]+\w/,Tt=/^0[xX]/,kt=/^\[object .+?Constructor\]$/,Ot=/[\xc0-\xd6\xd8-\xde\xdf-\xf6\xf8-\xff]/g,Bt=/($^)/,Rt=/[.*+?^${}()|[\]\/\\]/g,Dt=RegExp(Rt.source),Nt=/\bthis\b/,Ft=/['\n\r\u2028\u2029\\]/g,Ut=function(){var n="[A-Z\\xc0-\\xd6\\xd8-\\xde]",t="[a-z\\xdf-\\xf6\\xf8-\\xff]+";return RegExp(n+"{2,}(?="+n+t+")|"+n+"?"+t+"|"+n+"+|[0-9]+","g")}(),Wt=" \f \n\r\u2028\u2029 ᠎              ",Lt=["Array","ArrayBuffer","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Math","Number","Object","RegExp","Set","String","_","clearTimeout","document","isFinite","parseInt","setTimeout","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","window","WinRTError"],Mt=-1,$t={};$t[at]=$t[ct]=$t[ft]=$t[lt]=$t[st]=$t[ht]=$t[pt]=$t[_t]=$t[gt]=!0,$t[K]=$t[G]=$t[ot]=$t[H]=$t[J]=$t[X]=$t[Z]=$t[Q]=$t[nt]=$t[tt]=$t[rt]=$t[et]=$t[it]=$t[ut]=!1;var qt={};qt[K]=qt[G]=qt[ot]=qt[H]=qt[J]=qt[at]=qt[ct]=qt[ft]=qt[lt]=qt[st]=qt[nt]=qt[tt]=qt[rt]=qt[it]=qt[ht]=qt[pt]=qt[_t]=qt[gt]=!0,qt[X]=qt[Z]=qt[Q]=qt[et]=qt[ut]=!1;var Pt={leading:!1,maxWait:0,trailing:!1},zt={"À":"A","Á":"A","Â":"A","Ã":"A","Ä":"A","Å":"A","à":"a","á":"a","â":"a","ã":"a","ä":"a","å":"a","Ç":"C","ç":"c","Ð":"D","ð":"d","È":"E","É":"E","Ê":"E","Ë":"E","è":"e","é":"e","ê":"e","ë":"e","Ì":"I","Í":"I","Î":"I","Ï":"I","ì":"i","í":"i","î":"i","ï":"i","Ñ":"N","ñ":"n","Ò":"O","Ó":"O","Ô":"O","Õ":"O","Ö":"O","Ø":"O","ò":"o","ó":"o","ô":"o","õ":"o","ö":"o","ø":"o","Ù":"U","Ú":"U","Û":"U","Ü":"U","ù":"u","ú":"u","û":"u","ü":"u","Ý":"Y","ý":"y","ÿ":"y","Æ":"Ae","æ":"ae","Þ":"Th","þ":"th","ß":"ss"},Vt={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;","`":"&#96;"},Yt={"&amp;":"&","&lt;":"<","&gt;":">","&quot;":'"',"&#39;":"'","&#96;":"`"},Kt={"function":!0,object:!0},Gt={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},Ht=Kt[typeof window]&&window!==(this&&this.window)?window:this,Jt=Kt[typeof t]&&t&&!t.nodeType&&t,Xt=Kt[typeof n]&&n&&!n.nodeType&&n,Zt=Jt&&Xt&&"object"==typeof i&&i;!Zt||Zt.global!==Zt&&Zt.window!==Zt&&Zt.self!==Zt||(Ht=Zt);var Qt=(Xt&&Xt.exports===Jt&&Jt,j());Ht._=Qt,e=function(){return Qt}.call(t,r,t,n),!(e!==S&&(n.exports=e))}).call(this)}).call(t,r(2)(n),function(){return this}())},function(n){n.exports=function(n){return n.webpackPolyfill||(n.deprecate=function(){},n.paths=[],n.children=[],n.webpackPolyfill=1),n}},function(n,t,r){var e=r(1),i=function(n){e.isArray(n)?(this.__changeTypes={},n.forEach(function(n){this.__changeTypes[n]=!0}.bind(this))):this.__changeTypes=n};e.extend(i.prototype,{get:function(n){if(!this.exists(n))throw new Error('Change "'+n+'" does not exist.');return n},validateData:function(n,t){var r=this.__getSchema(n);if(r===!0)return{data:"NO_SCHEMA"};if(void 0===r)return{data:"NO_TYPE_DEFINED"};var e=new Validator(r);return{data:e.check(t)}},__getSchema:function(n){return this.__changeTypes[n]},exists:function(n){return"*"===n?!0:!!this.__changeTypes[n]},getAll:function(){return e.keys(this.__changeTypes)}}),n.exports=i},function(n,t,r){var e=r(1),i=function(n){n=e.extend({},n),this.__listenersBySrc={},this.__dependenciesBySrc={},this.__dependencies=[],this.__changes=[]};e.extend(i.prototype,{on:function(n,t,r,e,i,u){if(!e)throw new Error("runCb is required");this.__listenersBySrc[t]||(this.__listenersBySrc[t]={}),this.__listenersBySrc[t][r]||(this.__listenersBySrc[t][r]=[]);var o={callerSrc:n,targetSrc:t,targetType:r,runCb:e,cbName:i,target:u};this.__listenersBySrc[t][r].push(o),this.__dependenciesBySrc[n]||(this.__dependenciesBySrc[n]={}),this.__dependenciesBySrc[n][t]||(this.__dependenciesBySrc[n][t]=[]),this.__dependenciesBySrc[n][t].push(r),this.__dependencies.push(o)},off:function(n,t,r,i,u,o){var a={callerSrc:n,targetSrc:t,targetType:r,runCb:i,cbName:u,target:o};this.__listenersBySrc[t][r]=this.__listenersBySrc[t][r].filter(function(n){return!e.isEqual(n,a)}),this.__dependenciesBySrc[n][t]=this.__dependenciesBySrc[n][t].filter(function(n){return!e.isEqual(n,r)}),this.__dependencies=this.__dependencies.filter(function(n){return!e.isEqual(n,a)})},emitChangeToListeners:function(n){var t=[];if(this.__changes.push(n),this.__listenersBySrc[n.src]){var r=this.__listenersBySrc[n.src][n.type]||this.__listenersBySrc[n.src]["*"];r&&r.forEach(function(r){t.push(r),r.runCb.call(r.target,n.data)})}return t},clearChanges:function(){this.__changes=[]},getChanges:function(){return this.__changes},getDependencies:function(){return this.__dependencies.slice(0)},renderDependecies:function(n){console.group("Dependencies "+n+":");var t=[],r=[],i={};e.forEach(this.__dependenciesBySrc,function(n,i){e.forEach(n,function(n,e){r.push({entity:i,dependsOn:e,types:n}),n.forEach(function(n){t.push({entity:i,dependsOn:e,type:n})})})}),e.forEach(this.__dependenciesBySrc,function(n,t){i[t]={deps:r.reduce(function(n,r){return n+(r.entity===t?1:0)},0),depsArray:r.reduce(function(n,r){return r.entity===t&&n.push(r.dependsOn+"("+r.types.join(", ")+")"),n},[]).join(", ")}}),console.log("All:"),console.table(t),console.log("Depends on:"),console.table(i),console.groupEnd()}}),n.exports=i},function(n,t,r){var e=r(1),i=r(4),u=r(6),o=r(3),a=function(n){n=e.extend({isSingleton:!1},n),this.__isSingleton=n.isSingleton,this.__eachChange=new i,this.__batchChange=new i,this.__entities=[],this.__entitiesById={},this.__changeTypesByEntityId={},this.__metaEntities=[]};a.ChangeTypes=o,a.__instance=void 0,a.getInstance=function(){return a.__instance||(a.__instance=new a({isSingleton:!0})),a.__instance},a.listen=function(n,t){var r=new u(n,t);return r.start(a.getInstance(),r.createMockObject()),r},a.addMetaEntity=function(n){var t=a.listen(n.id,n.listeners),r=a.getInstance();return r.setEntityChangeTypes(n.id,n.changeTypes),r.addMetaEntity(n),t},a.renderDependencies=function(){a.getInstance().renderDependencies()},a.checkDependencies=function(){a.getInstance().checkDependencies()},e.extend(a.prototype,{addEntities:function(n){n.forEach(function(n){var t=n.getEntityId();if(!t)return console.log("No entity id");if(this.__entitiesById[t])throw new Error('Entity "'+t+'" already exists.');this.__entities.push(n),this.__entitiesById[t]=n;var r=this.__onEntityChange.bind(this,t);n.on("change",r),this.setEntityChangeTypes(t,n.getChangeTypes())}.bind(this))},addMetaEntity:function(n){this.__metaEntities.push(n)},setEntityChangeTypes:function(n,t){this.__changeTypesByEntityId[n]=new o(t)},renderDependencies:function(){this.__eachChange.renderDependecies("each"),this.__batchChange.renderDependecies("batch"),console.group("Entities");var n=e.sortBy(this.__metaEntities,"id");n.forEach(function(n){console.log("%c"+n.id+": "+new o(n.changeTypes).getAll().join(", "),"color: green")}),console.groupEnd()},checkDependencies:function(){var n=this.__eachChange.getDependencies();n=n.map(function(n){return e.extend({},n,{depType:"each"})});var t=this.__batchChange.getDependencies();t=t.map(function(n){return e.extend({},n,{depType:"batch"})});var r=e.sortBy(n.concat(t),["callerSrc","targetSrc","type"]),i=[],u=[];r.forEach(function(n){var t=this.__changeTypesByEntityId[n.targetSrc],r='Dependency defined in "'+n.callerSrc+'" on "'+n.targetSrc+'" at type "'+n.targetType+'" is ',e=!0;t&&t.exists(n.targetType)||(e=!1);var o=" ["+n.depType+"]";e?u.push(r+"valid."+o):i.push(r+"not valid."+o)}.bind(this)),console.group("Errors"),i.forEach(function(n){console.log("%c"+n,"color: red")}),0===i.length&&console.log("%c No errors!","color: green"),console.groupEnd(),console.group("Valid"),u.forEach(function(n){console.log("%c"+n,"color: green")}),console.groupEnd()},onEach:function(n,t,r,e,i,u){this.__eachChange.on(n,t,r,e,i,u)},onBatch:function(n,t,r,e,i,u){this.__batchChange.on(n,t,r,e,i,u)},offEach:function(n,t,r,e,i,u){this.__eachChange.off(n,t,r,e,i,u)},offBatch:function(n,t,r,e,i,u){this.__batchChange.off(n,t,r,e,i,u)},__onEntityChange:function(n,t){if(!n||!t)throw new Error("entityId or changePayload is missing");var r={src:n,type:t.type,data:t.data};this.__eachChange.emitChangeToListeners(r)},injectChange:function(n,t,r){this.__onEntityChange(n,{type:t,data:r})},emitBatchChanges:function(){var n=this.__eachChange.getChanges();if(0!==n.length){this.__eachChange.clearChanges();var t={};n.forEach(function(n){var r=n.src,e=n.type;t[r]||(t[r]={}),t[r][e]||(t[r][e]=[]),t[r][e].push(n)});var r=0,i=[];e.forEach(t,function(n,t){e.forEach(n,function(n,e){var u={src:t,type:e,data:n},o=this.__batchChange.emitChangeToListeners(u);i.push({payload:u,listeners:o}),r++}.bind(this))}.bind(this))}}}),n.exports=a},function(n,t,r){var e=r(1),i=function(n,t){this.__entityId=n,this.__items=t};i.noop=function(){},e.extend(i.prototype,{start:function(n,t){this.__startOrEnd("start",n,t)},end:function(n,t){this.__startOrEnd("end",n,t)},createMockObject:function(){var n={};return this.__items.forEach(function(t){var r=t[3];n[r]=i.noop}),n},__startOrEnd:function(n,t,r){this.__items.forEach(function(e){var i,u=e[0],o=e[1],a=e[2],c=e[3];if("batch"===u)if("start"===n)i=t.onBatch;else{if("end"!==n)throw new Error("Type not available.");i=t.offBatch}else{if("each"!==u)throw new Error("ListenTtype not available.");if("start"===n)i=t.onEach;else{if("end"!==n)throw new Error("Type not available.");i=t.offEach}}if(!r[c])throw new Error('Cant find method "'+c+'" on entity "'+this.__entityId+'".');i.call(t,this.__entityId,o,a,r[c],c,r)}.bind(this))}}),n.exports=i},function(n){n.exports={mount:function(n){return this.Class?void this.Class.listen.start(n,this):console.log("This store is missing Class.")},getEntityId:function(){return this.Class?this.Class.meta.id:console.log("This store doesnt have this.Class")},getChangeTypes:function(){return this.Class?this.Class.meta.changeTypes:console.log("This store doesnt have this.Class")},emitChange:function(n,t){this.emit("change",{type:n,data:t})}}}]);
var Fluxmax =
/******/ (function(modules) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = {};
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/ // Check if module is in cache
/******/ if(installedModules[moduleId])
/******/ return installedModules[moduleId].exports;
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules[moduleId] = {
/******/ exports: {},
/******/ id: moduleId,
/******/ loaded: false
/******/ };
/******/ // Execute the module function
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
/******/ // Flag the module as loaded
/******/ module.loaded = true;
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/ // expose the modules object (__webpack_modules__)
/******/ __webpack_require__.m = modules;
/******/ // expose the module cache
/******/ __webpack_require__.c = installedModules;
/******/ // __webpack_public_path__
/******/ __webpack_require__.p = "";
/******/ // Load entry module and return exports
/******/ return __webpack_require__(0);
/******/ })
/************************************************************************/
/******/ ([
/* 0 */
/***/ function(module, exports, __webpack_require__) {
module.exports = {
App : __webpack_require__(1),
StoreMixin : __webpack_require__(2),
}
/***/ },
/* 1 */
/***/ function(module, exports, __webpack_require__) {
var _ = __webpack_require__(3);
var Context = __webpack_require__(4);
var Listen = __webpack_require__(5);
var ChangeTypes = __webpack_require__(6);
/**
* @class core.Fluxmax
*/
var Fluxmax = function(options){
options = _.extend({
isSingleton: false,
}, options)
// Is good to know if is a singleton in order to avoid
// nasty bugs when confusing the singleton with the
// instance app.
this.__isSingleton = options.isSingleton;
this.__eachChange = new Context();
this.__batchChange = new Context();
this.__entities = [];
this.__entitiesById = {};
this.__changeTypesByEntityId = {};
this.__metaEntities = [];
};
Fluxmax.ChangeTypes = ChangeTypes;
/**
* @static
* @private
*/
Fluxmax.__instance = void 0;
/**
* @static
*/
Fluxmax.getInstance = function(){
if(!Fluxmax.__instance){
Fluxmax.__instance = new Fluxmax({
isSingleton: true
});
}
return Fluxmax.__instance;
}
/**
* @static
*/
Fluxmax.listen = function(entityId, listenerDefs){
var listen = new Listen(entityId, listenerDefs);
// Need to start in order to test deps.
listen.start(Fluxmax.getInstance(), listen.createMockObject());
return listen;
}
/**
* Your entity should have
*
* Entity.meta = {
* id: 'id of the entity',
* changeTypes: [
* 'change' ,
* 'anotherType' ,
* ],
* listeners: [] // See below
* }
*
* This method is static and is only needed for debug purposes to immediately
* know whenever your deps and listeners are correct.
*
* Items is an array of listener definition:
*
* var listenerType = 'batch' // or 'each'
* var entityId = 'a string' // for example 'store.currentAction'
* var changeType = 'a string' // for example 'change' or 'reachedDestination'
* var methodName = 'a string' // The method to be called on the entity when the change is fired.
* var listeners = [
* [listenerType, entityId, changeType, methodName]
* ]
*
*
*/
Fluxmax.addMetaEntity = function(metaEntity){
var listen = Fluxmax.listen(metaEntity.id, metaEntity.listeners);
// if(DEBUG){
var app = Fluxmax.getInstance();
app.setEntityChangeTypes(metaEntity.id, metaEntity.changeTypes)
app.addMetaEntity(metaEntity);
// }
return listen;
}
/**
* @static
*/
Fluxmax.renderDependencies = function(){
Fluxmax.getInstance().renderDependencies();
}
/**
* @static
*/
Fluxmax.checkDependencies = function(){
Fluxmax.getInstance().checkDependencies();
}
_.extend(Fluxmax.prototype, {
/**
* Adds the instances of the entities as array.
*/
addEntities: function(entities){
entities.forEach(function(entity){
var entityId = entity.getEntityId();
if(!entityId){
return console.log('No entity id');
}
if(this.__entitiesById[entityId]){
throw new Error('Entity "' + entityId + '" already exists.')
}
// Store entity.
this.__entities.push(entity);
this.__entitiesById[entityId] = entity;
// Listen on entity changes.
var onEntityChange = this.__onEntityChange.bind(this, entityId);
entity.on('change', onEntityChange);
this.setEntityChangeTypes(entityId, entity.getChangeTypes())
}.bind(this))
},
/**
* For static test.
*/
addMetaEntity: function(entityMeta){
this.__metaEntities.push(entityMeta);
},
/**
*/
setEntityChangeTypes: function(entityId, changeTypesDef){
this.__changeTypesByEntityId[entityId] = new ChangeTypes(changeTypesDef);
},
/**
* Only based on static deps.
*/
renderDependencies: function(){
this.__eachChange.renderDependecies('each');
this.__batchChange.renderDependecies('batch');
console.group('Entities')
var metaEntities = _.sortBy(this.__metaEntities, 'id');
metaEntities.forEach(function(metaEntity){
console.log('%c' + metaEntity.id + ': ' + (new ChangeTypes(metaEntity.changeTypes)).getAll().join(', '), 'color: green')
})
console.groupEnd();
},
/**
* Check if the events that has been registered in the __each and __batch
* are valid based on the Entity.changeTypes provided.
*/
checkDependencies: function(){
var eachDeps = this.__eachChange.getDependencies();
eachDeps = eachDeps.map(function(dep){
return _.extend({}, dep, {depType: 'each'})
})
var batchDeps = this.__batchChange.getDependencies();
batchDeps = batchDeps.map(function(dep){
return _.extend({}, dep, {depType: 'batch'})
})
var deps = _.sortBy(eachDeps.concat(batchDeps), ['callerSrc', 'targetSrc', 'type']);
var errors = [];
var valid = [];
deps.forEach(function(dep){
var changeTypes = this.__changeTypesByEntityId[dep.targetSrc];
var text = 'Dependency defined in "' + dep.callerSrc + '" on "' + dep.targetSrc + '" at type "' + dep.targetType + '" is ';
var isValid = true;
if(!changeTypes || !changeTypes.exists(dep.targetType)){
isValid = false;
}
var depType = ' [' + dep.depType + ']';
if(isValid){
valid.push(text + 'valid.' + depType);
}else{
errors.push(text + 'not valid.' + depType);
}
}.bind(this))
console.group('Errors')
errors.forEach(function(error){console.log('%c' + error, 'color: red')})
if(errors.length === 0){
console.log('%c No errors!', 'color: green')
}
console.groupEnd()
console.group('Valid')
valid.forEach(function(valid){console.log('%c' + valid, 'color: green')})
console.groupEnd()
},
/**
* Call to add a listener for each change that happens in the app.
*/
onEach: function(callerSrc, targetSrc, targetType, runCb, callbackName, target){
this.__eachChange.on(callerSrc, targetSrc, targetType, runCb, callbackName, target);
},
/**
* Call to add a listener for a batch change that happens in the app.
*/
onBatch: function(callerSrc, targetSrc, targetType, runCb, callbackName, target){
this.__batchChange.on(callerSrc, targetSrc, targetType, runCb, callbackName, target);
},
/**
* Call to remove a listener for each change that happens in the app.
*/
offEach: function(callerSrc, targetSrc, targetType, runCb, callbackName, target){
this.__eachChange.off(callerSrc, targetSrc, targetType, runCb, callbackName, target);
},
/**
* Call to remove a listener for a batch change that happens in the app.
*/
offBatch: function(callerSrc, targetSrc, targetType, runCb, callbackName, target){
this.__batchChange.off(callerSrc, targetSrc, targetType, runCb, callbackName, target);
},
/**
* Called when an entity changes.
* It will emit the change to all entities.
*/
__onEntityChange: function(entityId, changePayload){
if(!entityId || !changePayload) throw new Error('entityId or changePayload is missing');
var payload = {
src : entityId,
type : changePayload.type,
data : changePayload.data
}
this.__eachChange.emitChangeToListeners(payload);
},
/**
* Adds a change to the system. Some entities might want to
* to use this way to make other know about their changes.
*/
injectChange: function(entityId, changeType, changeData){
this.__onEntityChange(entityId, {
type: changeType,
data: changeData,
});
},
emitBatchChanges: function(){
// Flushes the changes stores in this.__eachChange.
var changes = this.__eachChange.getChanges();
if(changes.length === 0) return;
this.__eachChange.clearChanges();
var changesBySrc = {};
changes.forEach(function(change){
var src = change.src;
var type = change.type;
if(!changesBySrc[src]){
changesBySrc[src] = {};
}
if(!changesBySrc[src][type]){
changesBySrc[src][type] = [];
}
changesBySrc[src][type].push(change);
})
// Emit every change by source.
var emittedChangesN = 0;
var emittedChanges = []
_.forEach(changesBySrc, function(changesByType, src){
_.forEach(changesByType, function(changes, type){
var payload = {
src : src,
type : type,
data : changes,
}
var listeners = this.__batchChange.emitChangeToListeners(payload);
emittedChanges.push({
payload : payload,
listeners : listeners,
})
emittedChangesN++;
}.bind(this))
}.bind(this))
// this.__emittingChanges = false;
// this.__changesN = 0;
// Show changes in console
if(emittedChangesN > 0 && (true)){
console.groupCollapsed('UI Update: ' + changes[0].src + ' @ ' + changes[0].type);
console.log('All changes:');
console.table(changes);
console.log('Emitted changes:');
console.table(emittedChanges);
emittedChanges.forEach(function(emitted){
emitted.listeners.forEach(function(listener){
console.log(emitted.payload.src + ' . ' + emitted.payload.type + ' > ' + listener.callerSrc + ' . ' + listener.cbName)
})
})
// console.log('Emitted changes:');
// var changesBySrcFormatted = [];
// _.forEach(changesBySrc, function(changes, src){
// changesBySrcFormatted.push({
// src: src,
// types: changes.map(function(change){
// return change.type;
// }).join(', '),
// length: changes.length,
// detailed: changes,
// })
// })
// console.table(changesBySrcFormatted);
console.groupEnd();
}
}
});
module.exports = Fluxmax;
/***/ },
/* 2 */
/***/ function(module, exports, __webpack_require__) {
module.exports = {
mount: function(app){
if(!this.Class) return console.log('This store is missing Class.');
this.Class.listen.start(app, this);
},
getEntityId: function(){
if(!this.Class){
return console.log('This store doesnt have this.Class');
}
return this.Class.meta.id;
},
getChangeTypes: function(){
if(!this.Class){
return console.log('This store doesnt have this.Class');
}
return this.Class.meta.changeTypes;
},
emitChange: function(type, data){
this.emit('change', {
type: type,
data: data
});
},
}
/***/ },
/* 3 */
/***/ function(module, exports, __webpack_require__) {
module.exports = lodash;
/***/ },
/* 4 */
/***/ function(module, exports, __webpack_require__) {
var _ = __webpack_require__(3);
/**
* @class core.Context
*
* Is a context where you can add and remove listeners (#on, #off methods).
* After the events are set you can call #emitChangeToListeners to emit the change
* to the listeners.
*/
var Context = function(options){
options = _.extend({
}, options);
this.__listenersBySrc = {};
this.__dependenciesBySrc = {};
this.__dependencies = [];
this.__changes = [];
};
_.extend(Context.prototype, {
/**
* @param {String} callerSrc Source of who is listening right now.
* @param {String} targetSrc Source of whom is listening to.
* @param {String} targetType The type of change that is listening to.
* @param {Function} runCb This is called when the change matches the filters.
*/
on: function(callerSrc, targetSrc, targetType, runCb, cbName, target){
if(!runCb) throw new Error('runCb is required');
// @todo: should validate the targetType
// Setup listeners
if(!this.__listenersBySrc[targetSrc]){
this.__listenersBySrc[targetSrc] = {};
}
if(!this.__listenersBySrc[targetSrc][targetType]){
this.__listenersBySrc[targetSrc][targetType] = [];
}
var dep = {
callerSrc : callerSrc,
targetSrc : targetSrc,
targetType : targetType,
runCb : runCb,
cbName : cbName,
target : target,
}
this.__listenersBySrc[targetSrc][targetType].push(dep);
// Setup dependencies
if(!this.__dependenciesBySrc[callerSrc]){
this.__dependenciesBySrc[callerSrc] = {};
}
if(!this.__dependenciesBySrc[callerSrc][targetSrc]){
this.__dependenciesBySrc[callerSrc][targetSrc] = [];
}
this.__dependenciesBySrc[callerSrc][targetSrc].push(targetType);
this.__dependencies.push(dep)
},
/**
* @param {String} callerSrc Source of who is listening right now.
* @param {String} targetSrc Source of whom is listening to.
* @param {String} targetType The type of change that is listening to.
* @param {Function} runCb This is called when the change matches the filters.
*/
off: function(callerSrc, targetSrc, targetType, runCb, cbName, target){
var dep = {
callerSrc : callerSrc,
targetSrc : targetSrc,
targetType : targetType,
runCb : runCb,
cbName : cbName,
target : target,
}
this.__listenersBySrc[targetSrc][targetType] = this.__listenersBySrc[targetSrc][targetType].filter(function(_dep){
// Return false if equal, therefore is removed.
return !_.isEqual(_dep, dep);
})
this.__dependenciesBySrc[callerSrc][targetSrc] = this.__dependenciesBySrc[callerSrc][targetSrc].filter(function(_targetType){
// Return false if equal, therefore is removed.
return !_.isEqual(_targetType, targetType);
})
this.__dependencies = this.__dependencies.filter(function(_dep){
// Return false if equal, therefore is removed.
return !_.isEqual(_dep, dep);
})
},
/**
* When a new data change is received, all listeners are notified.
*/
emitChangeToListeners: function(payload){
var listeners = [];
// We add the change before dispatching to have the changes in the correct order.
this.__changes.push(payload);
if(this.__listenersBySrc[payload.src]){
var listenersBySrc = this.__listenersBySrc[payload.src][payload.type] ||
this.__listenersBySrc[payload.src]["*"];
if(listenersBySrc){
listenersBySrc.forEach(function(listener){
listeners.push(listener);
listener.runCb.call(listener.target, payload.data);
})
}
}
return listeners;
},
/**
* Deletes all the stored changes.
*/
clearChanges: function(){
this.__changes = [];
},
/**
* Returns all changes.
*/
getChanges: function(){
return this.__changes;
},
/**
* Returns dependencies.
*/
getDependencies: function(){
return this.__dependencies.slice(0);
},
/**
* Renders dependencies.
*/
renderDependecies: function(type){
console.group('Dependencies '+type+':')
var dataByType = [];
var dataByDeps = [];
var dependents = {};
_.forEach(this.__dependenciesBySrc, function(dependenciesByTargetSrc, dependent){
_.forEach(dependenciesByTargetSrc, function(types, targetSrc){
dataByDeps.push({
entity : dependent,
dependsOn : targetSrc,
types : types,
})
types.forEach(function(type){
dataByType.push({
entity : dependent,
dependsOn : targetSrc,
type : type,
})
})
})
})
_.forEach(this.__dependenciesBySrc, function(dependenciesByTargetSrc, dependent){
dependents[dependent] = {
deps: dataByDeps.reduce(function(total, item){
return total + (item.entity === dependent ? 1 : 0)
}, 0),
depsArray: dataByDeps.reduce(function(total, item){
if(item.entity === dependent){
total.push(item.dependsOn + '('+item.types.join(', ')+')')
}
return total;
}, []).join(', ')
}
})
console.log('All:')
console.table(dataByType);
console.log('Depends on:')
console.table(dependents);
console.groupEnd();
}
});
module.exports = Context;
/***/ },
/* 5 */
/***/ function(module, exports, __webpack_require__) {
var _ = __webpack_require__(3);
/**
* @class core.Listen
*/
var Listen = function(entityId, items){
this.__entityId = entityId;
this.__items = items;
};
Listen.noop = function(){};
_.extend(Listen.prototype, {
start: function(app, target){
this.__startOrEnd('start', app, target)
},
end: function(app, target){
this.__startOrEnd('end', app, target)
},
createMockObject: function(){
var mock = {};
this.__items.forEach(function(item){
var callbackName = item[3];
mock[callbackName] = Listen.noop;
})
return mock;
},
__startOrEnd: function(type, app, target){
this.__items.forEach(function(item){
var listenType = item[0];
var listenToEntityId = item[1];
var listenToType = item[2];
var callbackName = item[3];
var fn;
if(listenType === 'batch'){
if(type === 'start'){
fn = app.onBatch;
}else if(type === 'end'){
fn = app.offBatch;
}else{
throw new Error('Type not available.')
}
}else if(listenType === 'each'){
if(type === 'start'){
fn = app.onEach;
}else if(type === 'end'){
fn = app.offEach;
}else{
throw new Error('Type not available.')
}
}else{
throw new Error('ListenTtype not available.')
}
if(!target[callbackName]){
throw new Error('Cant find method "' + callbackName + '" on entity "' + this.__entityId + '".')
}
fn.call(
app,
this.__entityId,
listenToEntityId,
listenToType,
target[callbackName], // Binding will create a new function
callbackName,
target
)
}.bind(this))
}
});
module.exports = Listen;
/***/ },
/* 6 */
/***/ function(module, exports, __webpack_require__) {
var _ = __webpack_require__(3);
/**
* @class core.ChangeTypes
*/
var ChangeTypes = function(changeTypes){
// If you provide an array create an object from the array.
if(_.isArray(changeTypes)){
this.__changeTypes = {}
changeTypes.forEach(function(changeType){
this.__changeTypes[changeType] = true;
}.bind(this))
}else{
this.__changeTypes = changeTypes;
}
};
_.extend(ChangeTypes.prototype, {
get: function(type){
if(!this.exists(type)){
throw new Error('Change "' + type + '" does not exist.')
}
return type;
},
validateData: function(type, data){
var schema = this.__getSchema(type);
if(schema === true){
return {data: 'NO_SCHEMA'}
}else if(schema === void 0){
return {data: 'NO_TYPE_DEFINED'}
}
var validator = new Validator(schema);
return {data: validator.check(data)};
},
__getSchema: function(type){
return this.__changeTypes[type];
},
exists: function(type){
if(type === '*') return true;
return !!this.__changeTypes[type];
},
getAll: function(){
return _.keys(this.__changeTypes);
},
});
module.exports = ChangeTypes;
/***/ }
/******/ ]);
var Fluxmax=function(n){function t(r){if(e[r])return e[r].exports;var i=e[r]={exports:{},id:r,loaded:!1};return n[r].call(i.exports,i,i.exports,t),i.loaded=!0,i.exports}var e={};return t.m=n,t.c=e,t.p="",t(0)}([function(n,t,e){n.exports={App:e(4),StoreMixin:e(6)}},function(n){n.exports=lodash},function(n,t,e){var r=e(1),i=function(n){r.isArray(n)?(this.__changeTypes={},n.forEach(function(n){this.__changeTypes[n]=!0}.bind(this))):this.__changeTypes=n};r.extend(i.prototype,{get:function(n){if(!this.exists(n))throw new Error('Change "'+n+'" does not exist.');return n},validateData:function(n,t){var e=this.__getSchema(n);if(e===!0)return{data:"NO_SCHEMA"};if(void 0===e)return{data:"NO_TYPE_DEFINED"};var r=new Validator(e);return{data:r.check(t)}},__getSchema:function(n){return this.__changeTypes[n]},exists:function(n){return"*"===n?!0:!!this.__changeTypes[n]},getAll:function(){return r.keys(this.__changeTypes)}}),n.exports=i},function(n,t,e){var r=e(1),i=function(n){n=r.extend({},n),this.__listenersBySrc={},this.__dependenciesBySrc={},this.__dependencies=[],this.__changes=[]};r.extend(i.prototype,{on:function(n,t,e,r,i,o){if(!r)throw new Error("runCb is required");this.__listenersBySrc[t]||(this.__listenersBySrc[t]={}),this.__listenersBySrc[t][e]||(this.__listenersBySrc[t][e]=[]);var u={callerSrc:n,targetSrc:t,targetType:e,runCb:r,cbName:i,target:o};this.__listenersBySrc[t][e].push(u),this.__dependenciesBySrc[n]||(this.__dependenciesBySrc[n]={}),this.__dependenciesBySrc[n][t]||(this.__dependenciesBySrc[n][t]=[]),this.__dependenciesBySrc[n][t].push(e),this.__dependencies.push(u)},off:function(n,t,e,i,o,u){var a={callerSrc:n,targetSrc:t,targetType:e,runCb:i,cbName:o,target:u};this.__listenersBySrc[t][e]=this.__listenersBySrc[t][e].filter(function(n){return!r.isEqual(n,a)}),this.__dependenciesBySrc[n][t]=this.__dependenciesBySrc[n][t].filter(function(n){return!r.isEqual(n,e)}),this.__dependencies=this.__dependencies.filter(function(n){return!r.isEqual(n,a)})},emitChangeToListeners:function(n){var t=[];if(this.__changes.push(n),this.__listenersBySrc[n.src]){var e=this.__listenersBySrc[n.src][n.type]||this.__listenersBySrc[n.src]["*"];e&&e.forEach(function(e){t.push(e),e.runCb.call(e.target,n.data)})}return t},clearChanges:function(){this.__changes=[]},getChanges:function(){return this.__changes},getDependencies:function(){return this.__dependencies.slice(0)},renderDependecies:function(n){console.group("Dependencies "+n+":");var t=[],e=[],i={};r.forEach(this.__dependenciesBySrc,function(n,i){r.forEach(n,function(n,r){e.push({entity:i,dependsOn:r,types:n}),n.forEach(function(n){t.push({entity:i,dependsOn:r,type:n})})})}),r.forEach(this.__dependenciesBySrc,function(n,t){i[t]={deps:e.reduce(function(n,e){return n+(e.entity===t?1:0)},0),depsArray:e.reduce(function(n,e){return e.entity===t&&n.push(e.dependsOn+"("+e.types.join(", ")+")"),n},[]).join(", ")}}),console.log("All:"),console.table(t),console.log("Depends on:"),console.table(i),console.groupEnd()}}),n.exports=i},function(n,t,e){var r=e(1),i=e(3),o=e(5),u=e(2),a=function(n){n=r.extend({isSingleton:!1},n),this.__isSingleton=n.isSingleton,this.__eachChange=new i,this.__batchChange=new i,this.__entities=[],this.__entitiesById={},this.__changeTypesByEntityId={},this.__metaEntities=[]};a.ChangeTypes=u,a.__instance=void 0,a.getInstance=function(){return a.__instance||(a.__instance=new a({isSingleton:!0})),a.__instance},a.listen=function(n,t){var e=new o(n,t);return e.start(a.getInstance(),e.createMockObject()),e},a.addMetaEntity=function(n){var t=a.listen(n.id,n.listeners),e=a.getInstance();return e.setEntityChangeTypes(n.id,n.changeTypes),e.addMetaEntity(n),t},a.renderDependencies=function(){a.getInstance().renderDependencies()},a.checkDependencies=function(){a.getInstance().checkDependencies()},r.extend(a.prototype,{addEntities:function(n){n.forEach(function(n){var t=n.getEntityId();if(!t)return console.log("No entity id");if(this.__entitiesById[t])throw new Error('Entity "'+t+'" already exists.');this.__entities.push(n),this.__entitiesById[t]=n;var e=this.__onEntityChange.bind(this,t);n.on("change",e),this.setEntityChangeTypes(t,n.getChangeTypes())}.bind(this))},addMetaEntity:function(n){this.__metaEntities.push(n)},setEntityChangeTypes:function(n,t){this.__changeTypesByEntityId[n]=new u(t)},renderDependencies:function(){this.__eachChange.renderDependecies("each"),this.__batchChange.renderDependecies("batch"),console.group("Entities");var n=r.sortBy(this.__metaEntities,"id");n.forEach(function(n){console.log("%c"+n.id+": "+new u(n.changeTypes).getAll().join(", "),"color: green")}),console.groupEnd()},checkDependencies:function(){var n=this.__eachChange.getDependencies();n=n.map(function(n){return r.extend({},n,{depType:"each"})});var t=this.__batchChange.getDependencies();t=t.map(function(n){return r.extend({},n,{depType:"batch"})});var e=r.sortBy(n.concat(t),["callerSrc","targetSrc","type"]),i=[],o=[];e.forEach(function(n){var t=this.__changeTypesByEntityId[n.targetSrc],e='Dependency defined in "'+n.callerSrc+'" on "'+n.targetSrc+'" at type "'+n.targetType+'" is ',r=!0;t&&t.exists(n.targetType)||(r=!1);var u=" ["+n.depType+"]";r?o.push(e+"valid."+u):i.push(e+"not valid."+u)}.bind(this)),console.group("Errors"),i.forEach(function(n){console.log("%c"+n,"color: red")}),0===i.length&&console.log("%c No errors!","color: green"),console.groupEnd(),console.group("Valid"),o.forEach(function(n){console.log("%c"+n,"color: green")}),console.groupEnd()},onEach:function(n,t,e,r,i,o){this.__eachChange.on(n,t,e,r,i,o)},onBatch:function(n,t,e,r,i,o){this.__batchChange.on(n,t,e,r,i,o)},offEach:function(n,t,e,r,i,o){this.__eachChange.off(n,t,e,r,i,o)},offBatch:function(n,t,e,r,i,o){this.__batchChange.off(n,t,e,r,i,o)},__onEntityChange:function(n,t){if(!n||!t)throw new Error("entityId or changePayload is missing");var e={src:n,type:t.type,data:t.data};this.__eachChange.emitChangeToListeners(e)},injectChange:function(n,t,e){this.__onEntityChange(n,{type:t,data:e})},emitBatchChanges:function(){var n=this.__eachChange.getChanges();if(0!==n.length){this.__eachChange.clearChanges();var t={};n.forEach(function(n){var e=n.src,r=n.type;t[e]||(t[e]={}),t[e][r]||(t[e][r]=[]),t[e][r].push(n)});var e=0,i=[];r.forEach(t,function(n,t){r.forEach(n,function(n,r){var o={src:t,type:r,data:n},u=this.__batchChange.emitChangeToListeners(o);i.push({payload:o,listeners:u}),e++}.bind(this))}.bind(this))}}}),n.exports=a},function(n,t,e){var r=e(1),i=function(n,t){this.__entityId=n,this.__items=t};i.noop=function(){},r.extend(i.prototype,{start:function(n,t){this.__startOrEnd("start",n,t)},end:function(n,t){this.__startOrEnd("end",n,t)},createMockObject:function(){var n={};return this.__items.forEach(function(t){var e=t[3];n[e]=i.noop}),n},__startOrEnd:function(n,t,e){this.__items.forEach(function(r){var i,o=r[0],u=r[1],a=r[2],c=r[3];if("batch"===o)if("start"===n)i=t.onBatch;else{if("end"!==n)throw new Error("Type not available.");i=t.offBatch}else{if("each"!==o)throw new Error("ListenTtype not available.");if("start"===n)i=t.onEach;else{if("end"!==n)throw new Error("Type not available.");i=t.offEach}}if(!e[c])throw new Error('Cant find method "'+c+'" on entity "'+this.__entityId+'".');i.call(t,this.__entityId,u,a,e[c],c,e)}.bind(this))}}),n.exports=i},function(n){n.exports={mount:function(n){return this.Class?void this.Class.listen.start(n,this):console.log("This store is missing Class.")},getEntityId:function(){return this.Class?this.Class.meta.id:console.log("This store doesnt have this.Class")},getChangeTypes:function(){return this.Class?this.Class.meta.changeTypes:console.log("This store doesnt have this.Class")},emitChange:function(n,t){this.emit("change",{type:n,data:t})}}}]);
+33
-28

@@ -16,3 +16,17 @@ var gulp = require('gulp');

// var cb =
var createPlugins = function(){
return [
new webpack.optimize.OccurenceOrderPlugin({
preferEntry: true
}),
new webpack.optimize.DedupePlugin(),
new webpack.optimize.UglifyJsPlugin({
source_map : false,
compress : true,
drop_debugger : false,
comments : false,
no_copyright : true,
})
]
}

@@ -29,37 +43,27 @@ var externals = {

// Development
var devConfig = _.cloneDeep(defaultConfig);
configs.devConfig = devConfig;
devConfig.debug = true;
devConfig.output.filename = 'Fluxmax.js';
var devConfig = _.cloneDeep(defaultConfig);
configs.devConfig = devConfig;
devConfig.debug = true;
devConfig.output.filename = 'Fluxmax.js';
// Dev no lodash
var devNoLodashConfig = _.cloneDeep(devConfig);
configs.devNoLodashConfig = devNoLodashConfig;
devNoLodashConfig.output.filename = 'Fluxmax.nolodash.js';
devNoLodashConfig.externals = externals;
var devNoLodashConfig = _.cloneDeep(devConfig);
configs.devNoLodashConfig = devNoLodashConfig;
devNoLodashConfig.output.filename = 'Fluxmax.nolodash.js';
devNoLodashConfig.externals = externals;
// Production
var prodConfig = _.cloneDeep(defaultConfig);
configs.prodConfig = prodConfig;
var prodConfig = _.cloneDeep(defaultConfig);
configs.prodConfig = prodConfig;
prodConfig.output.filename = 'Fluxmax.min.js';
prodConfig.plugins = prodConfig.plugins || [];
prodConfig.plugins = prodConfig.plugins.concat(
new webpack.optimize.OccurenceOrderPlugin({
preferEntry: true
}),
new webpack.optimize.DedupePlugin(),
new webpack.optimize.UglifyJsPlugin({
source_map : false,
compress : true,
drop_debugger : false,
comments : false,
no_copyright : true,
})
);
prodConfig.plugins = prodConfig.plugins || [];
prodConfig.plugins = prodConfig.plugins.concat(createPlugins());
// Production no lodash
var prodNoLodashConfig = _.cloneDeep(prodConfig);
configs.prodNoLodashConfig = prodNoLodashConfig;
var prodNoLodashConfig = _.cloneDeep(defaultConfig);
configs.prodNoLodashConfig = prodNoLodashConfig;
prodNoLodashConfig.output.filename = 'Fluxmax.nolodash.min.js';
prodNoLodashConfig.externals = externals;
prodNoLodashConfig.externals = externals;
prodNoLodashConfig.plugins = prodNoLodashConfig.plugins || [];
prodNoLodashConfig.plugins = prodNoLodashConfig.plugins.concat(createPlugins());

@@ -69,2 +73,3 @@ async.series(

return function(cb){
console.log(name)
webpack(config, function(err, stats) {

@@ -71,0 +76,0 @@ console.log('=====')

{
"--": ["./src"],
"--title": "fluxomax API & Docs",
"--title": "fluxmax API & Docs",
"--output": "./docs/jsduck"
// "--guides": "./docs/guides/guides.json"
}
{
"name": "fluxmax",
"version": "0.0.1",
"version": "0.0.2",
"description": "2 phase events: update stores then views. 1 way flow. Static event deps checker.",

@@ -5,0 +5,0 @@ "main": "src/index.js",

@@ -26,3 +26,3 @@ ![fluxmax](./docs/repo-header.jpg)

Check the **[full API here](https://cdn.rawgit.com/hackhat/fluxmax/v0.0.1/docs/jsduck/index.html)**.
Check the **[full API here](https://cdn.rawgit.com/hackhat/fluxmax/v0.0.2/docs/jsduck/index.html)**.

@@ -29,0 +29,0 @@