From 0296b136169ff52410cd01fb080e792264c8e60a Mon Sep 17 00:00:00 2001 From: sanex3339 Date: Sun, 22 Jul 2018 14:09:16 +0300 Subject: [PATCH] More correct fix of https://github.com/javascript-obfuscator/javascript-obfuscator/issues/297 --- dist/index.browser.js | 2 +- dist/index.cli.js | 2 +- dist/index.js | 2 +- .../FunctionTransformer.ts | 21 +++++++++++++------ test/dev/dev.ts | 12 ++++++++--- .../FunctionTransformer.spec.ts | 15 ++++++++----- .../fixtures/object-pattern-as-parameter-3.js | 6 ++++-- 7 files changed, 41 insertions(+), 19 deletions(-) diff --git a/dist/index.browser.js b/dist/index.browser.js index 60e47305..d33bf5c1 100644 --- a/dist/index.browser.js +++ b/dist/index.browser.js @@ -35,7 +35,7 @@ var r=n(208),i=n(207),o=n(206);function a(){return u.TYPED_ARRAY_SUPPORT?2147483 * @author Feross Aboukhadijeh * @license MIT */ -e.exports=function(e){return null!=e&&(n(e)||function(e){return"function"==typeof e.readFloatLE&&"function"==typeof e.slice&&n(e.slice(0,0))}(e)||!!e._isBuffer)}},function(e,t){var n,r;n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",r={rotl:function(e,t){return e<>>32-t},rotr:function(e,t){return e<<32-t|e>>>t},endian:function(e){if(e.constructor==Number)return 16711935&r.rotl(e,8)|4278255360&r.rotl(e,24);for(var t=0;t0;e--)t.push(Math.floor(256*Math.random()));return t},bytesToWords:function(e){for(var t=[],n=0,r=0;n>>5]|=e[n]<<24-r%32;return t},wordsToBytes:function(e){for(var t=[],n=0;n<32*e.length;n+=8)t.push(e[n>>>5]>>>24-n%32&255);return t},bytesToHex:function(e){for(var t=[],n=0;n>>4).toString(16)),t.push((15&e[n]).toString(16));return t.join("")},hexToBytes:function(e){for(var t=[],n=0;n>>6*(3-o)&63)):t.push("=");return t.join("")},base64ToBytes:function(e){e=e.replace(/[^A-Z0-9+\/]/gi,"");for(var t=[],r=0,i=0;r>>6-2*i);return t}},e.exports=r},function(e,t,n){var r,i,o,a,s;r=n(212),i=n(131).utf8,o=n(211),a=n(131).bin,(s=function(e,t){e.constructor==String?e=t&&"binary"===t.encoding?a.stringToBytes(e):i.stringToBytes(e):o(e)?e=Array.prototype.slice.call(e,0):Array.isArray(e)||(e=e.toString());for(var n=r.bytesToWords(e),u=8*e.length,d=1732584193,l=-271733879,c=-1732584194,p=271733878,f=0;f>>24)|4278255360&(n[f]<<24|n[f]>>>8);n[u>>>5]|=128<>>9<<4)]=u;var h=s._ff,g=s._gg,m=s._hh,y=s._ii;for(f=0;f>>0,l=l+v>>>0,c=c+C>>>0,p=p+S>>>0}return r.endian([d,l,c,p])})._ff=function(e,t,n,r,i,o,a){var s=e+(t&n|~t&r)+(i>>>0)+a;return(s<>>32-o)+t},s._gg=function(e,t,n,r,i,o,a){var s=e+(t&r|n&~r)+(i>>>0)+a;return(s<>>32-o)+t},s._hh=function(e,t,n,r,i,o,a){var s=e+(t^n^r)+(i>>>0)+a;return(s<>>32-o)+t},s._ii=function(e,t,n,r,i,o,a){var s=e+(n^(t|~r))+(i>>>0)+a;return(s<>>32-o)+t},s._blocksize=16,s._digestsize=16,e.exports=function(e,t){if(void 0===e||null===e)throw new Error("Illegal argument "+e);var n=r.wordsToBytes(s(e,t));return t&&t.asBytes?n:t&&t.asString?a.bytesToString(n):r.bytesToHex(n)}},function(e,t,n){"use strict";var r=n(0),i=r(n(2)),o=r(n(3)),a=r(n(8)),s=r(n(7)),u=r(n(6)),d=r(n(5)),l=function(e,t,n,r){var i,o=arguments.length,a=o<3?t:null===r?r=(0,d.default)(t,n):r;if("object"===("undefined"==typeof Reflect?"undefined":(0,u.default)(Reflect))&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var l=e.length-1;l>=0;l--)(i=e[l])&&(a=(o<3?i(a):o>3?i(t,n,a):i(t,n))||a);return o>3&&a&&(0,s.default)(t,n,a),a},c=function(e,t){if("object"===("undefined"==typeof Reflect?"undefined":(0,u.default)(Reflect))&&"function"==typeof a.default)return(0,a.default)(e,t)},p=function(e,t){return function(n,r){t(n,r,e)}};Object.defineProperty(t,"__esModule",{value:!0});var f=n(1),h=n(4),g=n(132),m=n(64),y=function(){function e(t){(0,i.default)(this,e),this.randomGenerator=t}return(0,o.default)(e,[{key:"btoa",value:function(e){var t="";e=encodeURIComponent(e).replace(/%([0-9A-F]{2})/g,function(e,t){return String.fromCharCode(parseInt("".concat(m.Utils.hexadecimalPrefix).concat(t)))});for(var n,r,i=0,o="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";e.charAt(0|i)||(o="=",i%1);t+=o.charAt(63&n>>8-i%1*8)){if((r=e.charCodeAt(i+=.75))>255)throw new Error("'btoa' failed: The string to be encoded contains characters outside of the Latin1 range.");n=n<<8|r}return t}},{key:"hideString",value:function(e,t){var n=this,r=this.randomGenerator.getRandomGenerator().string({length:t,pool:g.RandomGenerator.randomGeneratorPool}).replace(new RegExp("[".concat(e.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&"),"]"),"g"),""),i=r.split("");return this.randomGenerator.getRandomGenerator().shuffle(i),[function(e,t){for(var r=-1,i=-1,o="";r=0;s--)(i=e[s])&&(a=(o<3?i(a):o>3?i(t,n,a):i(t,n))||a);return o>3&&a&&(0,u.default)(t,n,a),a},p=function(e,t){if("object"===("undefined"==typeof Reflect?"undefined":(0,d.default)(Reflect))&&"function"==typeof s.default)return(0,s.default)(e,t)},f=function(e,t){return function(n,r){t(n,r,e)}};Object.defineProperty(t,"__esModule",{value:!0});var h=n(1),g=n(4),m=function(){function e(t){(0,o.default)(this,e),this.randomGenerator=t}return(0,a.default)(e,[{key:"createWithRange",value:function(e){for(var t=[],n=0;n=0;s--)(i=e[s])&&(a=(o<3?i(a):o>3?i(t,n,a):i(t,n))||a);return o>3&&a&&(0,u.default)(t,n,a),a},p=function(e,t){if("object"===("undefined"==typeof Reflect?"undefined":(0,d.default)(Reflect))&&"function"==typeof s.default)return(0,s.default)(e,t)},f=function(e,t){return function(n,r){t(n,r,e)}};Object.defineProperty(t,"__esModule",{value:!0});var h=n(1),g=n(4),m=n(15),y=function(){function e(t,n){(0,o.default)(this,e),this.storageLength=0,this.randomGenerator=t,this.options=n}return(0,a.default)(e,[{key:"initialize",value:function(){this.storage=[],this.storageId=this.randomGenerator.getRandomString(6)}},{key:"get",value:function(e){var t=this.storage[e];if(!t)throw new Error("No value found in array storage with key `".concat(e,"`"));return t}},{key:"getKeyOf",value:function(e){var t=this.storage.indexOf(e);return t>=0?t:null}},{key:"getLength",value:function(){return this.storageLength}},{key:"getStorage",value:function(){return this.storage}},{key:"getStorageId",value:function(){return this.storageId}},{key:"mergeWith",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];this.storage=(0,i.default)(this.storage).concat((0,i.default)(e.getStorage())),t&&(this.storageId=e.getStorageId())}},{key:"set",value:function(e,t){e===this.storageLength?this.storage.push(t):this.storage.splice(e,0,t),this.storageLength++}}]),e}();c([m.initializable(),p("design:type",Array)],y.prototype,"storage",void 0),c([m.initializable(),p("design:type",String)],y.prototype,"storageId",void 0),c([h.postConstruct(),p("design:type",Function),p("design:paramtypes",[]),p("design:returntype",void 0)],y.prototype,"initialize",null),y=c([h.injectable(),f(0,h.inject(g.ServiceIdentifiers.IRandomGenerator)),f(1,h.inject(g.ServiceIdentifiers.IOptions)),p("design:paramtypes",[Object,Object])],y),t.ArrayStorage=y},function(e,t,n){"use strict";var r,i=n(0),o=i(n(2)),a=i(n(3)),s=i(n(11)),u=i(n(9)),d=i(n(81)),l=i(n(10)),c=i(n(8)),p=i(n(7)),f=i(n(6)),h=i(n(5)),g=function(e,t,n,r){var i,o=arguments.length,a=o<3?t:null===r?r=(0,h.default)(t,n):r;if("object"===("undefined"==typeof Reflect?"undefined":(0,f.default)(Reflect))&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(i=e[s])&&(a=(o<3?i(a):o>3?i(t,n,a):i(t,n))||a);return o>3&&a&&(0,p.default)(t,n,a),a},m=function(e,t){if("object"===("undefined"==typeof Reflect?"undefined":(0,f.default)(Reflect))&&"function"==typeof c.default)return(0,c.default)(e,t)},y=function(e,t){return function(n,r){t(n,r,e)}};Object.defineProperty(t,"__esModule",{value:!0});var b=n(1),v=n(4),C=n(217),S=r=function(e){function t(e,n,r,i){var a;return(0,o.default)(this,t),(a=(0,s.default)(this,(0,u.default)(t).call(this,r,i))).identifierNamesGenerator=e(i),a.arrayUtils=n,a}return(0,l.default)(t,e),(0,a.default)(t,[{key:"initialize",value:function(){(0,d.default)((0,u.default)(t.prototype),"initialize",this).call(this);var e=this.identifierNamesGenerator.generate().slice(0,r.stringArrayNameLength),n=this.identifierNamesGenerator.generate().slice(0,r.stringArrayNameLength),i="".concat(this.options.identifiersPrefix).concat(e),o="".concat(this.options.identifiersPrefix).concat(n);this.storageId="".concat(i,"|").concat(o)}},{key:"rotateArray",value:function(e){this.storage=this.arrayUtils.rotate(this.storage,e)}},{key:"toString",value:function(){return this.storage.map(function(e){return"'".concat(e,"'")}).toString()}}]),t}(C.ArrayStorage);S.stringArrayNameLength=7,g([b.postConstruct(),m("design:type",Function),m("design:paramtypes",[]),m("design:returntype",void 0)],S.prototype,"initialize",null),S=r=g([b.injectable(),y(0,b.inject(v.ServiceIdentifiers.Factory__IIdentifierNamesGenerator)),y(1,b.inject(v.ServiceIdentifiers.IArrayUtils)),y(2,b.inject(v.ServiceIdentifiers.IRandomGenerator)),y(3,b.inject(v.ServiceIdentifiers.IOptions)),m("design:paramtypes",[Function,Object,Object,Object])],S),t.StringArrayStorage=S},function(e,t,n){"use strict";var r,i=n(0),o=i(n(2)),a=i(n(3)),s=i(n(11)),u=i(n(9)),d=i(n(81)),l=i(n(10)),c=i(n(8)),p=i(n(7)),f=i(n(6)),h=i(n(5)),g=function(e,t,n,r){var i,o=arguments.length,a=o<3?t:null===r?r=(0,h.default)(t,n):r;if("object"===("undefined"==typeof Reflect?"undefined":(0,f.default)(Reflect))&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(i=e[s])&&(a=(o<3?i(a):o>3?i(t,n,a):i(t,n))||a);return o>3&&a&&(0,p.default)(t,n,a),a},m=function(e,t){if("object"===("undefined"==typeof Reflect?"undefined":(0,f.default)(Reflect))&&"function"==typeof c.default)return(0,c.default)(e,t)},y=function(e,t){return function(n,r){t(n,r,e)}};Object.defineProperty(t,"__esModule",{value:!0});var b=n(1),v=n(4),C=n(151),S=n(133),N=r=function(e){function t(e,n,r){var i;return(0,o.default)(this,t),(i=(0,s.default)(this,(0,u.default)(t).call(this,n,r))).customNodeGroupFactory=e,i}return(0,l.default)(t,e),(0,a.default)(t,[{key:"initialize",value:function(){var e=this;(0,d.default)((0,u.default)(t.prototype),"initialize",this).call(this),r.customNodeGroupsList.forEach(function(t){var n=e.customNodeGroupFactory(t);n&&e.storage.set(t,n)})}}]),t}(S.MapStorage);N.customNodeGroupsList=[C.CustomNodeGroup.ConsoleOutputCustomNodeGroup,C.CustomNodeGroup.DebugProtectionCustomNodeGroup,C.CustomNodeGroup.DomainLockCustomNodeGroup,C.CustomNodeGroup.SelfDefendingCustomNodeGroup,C.CustomNodeGroup.StringArrayCustomNodeGroup],g([b.postConstruct(),m("design:type",Function),m("design:paramtypes",[]),m("design:returntype",void 0)],N.prototype,"initialize",null),N=r=g([b.injectable(),y(0,b.inject(v.ServiceIdentifiers.Factory__ICustomNodeGroup)),y(1,b.inject(v.ServiceIdentifiers.IRandomGenerator)),y(2,b.inject(v.ServiceIdentifiers.IOptions)),m("design:paramtypes",[Function,Object,Object])],N),t.CustomNodeGroupStorage=N},function(e,t,n){"use strict";var r=n(0),i=r(n(2)),o=r(n(11)),a=r(n(9)),s=r(n(10)),u=r(n(8)),d=r(n(7)),l=r(n(6)),c=r(n(5)),p=function(e,t,n,r){var i,o=arguments.length,a=o<3?t:null===r?r=(0,c.default)(t,n):r;if("object"===("undefined"==typeof Reflect?"undefined":(0,l.default)(Reflect))&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(i=e[s])&&(a=(o<3?i(a):o>3?i(t,n,a):i(t,n))||a);return o>3&&a&&(0,d.default)(t,n,a),a},f=function(e,t){if("object"===("undefined"==typeof Reflect?"undefined":(0,l.default)(Reflect))&&"function"==typeof u.default)return(0,u.default)(e,t)},h=function(e,t){return function(n,r){t(n,r,e)}};Object.defineProperty(t,"__esModule",{value:!0});var g=n(1),m=n(4),y=function(e){function t(e,n){return(0,i.default)(this,t),(0,o.default)(this,(0,a.default)(t).call(this,e,n))}return(0,s.default)(t,e),t}(n(133).MapStorage);y=p([g.injectable(),h(0,g.inject(m.ServiceIdentifiers.IRandomGenerator)),h(1,g.inject(m.ServiceIdentifiers.IOptions)),f("design:paramtypes",[Object,Object])],y),t.ControlFlowStorage=y},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(1),i=n(4),o=n(220),a=n(219),s=n(218);t.storagesModule=new r.ContainerModule(function(e){e(i.ServiceIdentifiers.TCustomNodeGroupStorage).to(a.CustomNodeGroupStorage).inSingletonScope(),e(i.ServiceIdentifiers.TStringArrayStorage).to(s.StringArrayStorage).inSingletonScope(),e(i.ServiceIdentifiers.Newable__TControlFlowStorage).toConstructor(o.ControlFlowStorage),e(i.ServiceIdentifiers.Factory__TControlFlowStorage).toFactory(function(e){return function(){var t=new(e.container.get(i.ServiceIdentifiers.Newable__TControlFlowStorage))(e.container.get(i.ServiceIdentifiers.IRandomGenerator),e.container.get(i.ServiceIdentifiers.IOptions));return t.initialize(),t}})})},function(e,t,n){"use strict";var r=n(0),i=r(n(2)),o=r(n(3)),a=r(n(11)),s=r(n(9)),u=r(n(10)),d=r(n(8)),l=r(n(7)),c=r(n(6)),p=r(n(5)),f=function(e,t,n,r){var i,o=arguments.length,a=o<3?t:null===r?r=(0,p.default)(t,n):r;if("object"===("undefined"==typeof Reflect?"undefined":(0,c.default)(Reflect))&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(i=e[s])&&(a=(o<3?i(a):o>3?i(t,n,a):i(t,n))||a);return o>3&&a&&(0,l.default)(t,n,a),a},h=function(e,t){if("object"===("undefined"==typeof Reflect?"undefined":(0,c.default)(Reflect))&&"function"==typeof d.default)return(0,d.default)(e,t)},g=function(e,t){return function(n,r){t(n,r,e)}};Object.defineProperty(t,"__esModule",{value:!0});var m=n(1),y=n(4),b=n(18),v=n(19),C=n(14),S=function(e){function t(e,n){return(0,i.default)(this,t),(0,a.default)(this,(0,s.default)(t).call(this,e,n))}return(0,u.default)(t,e),(0,o.default)(t,[{key:"getVisitor",value:function(e){var t=this;switch(e){case b.TransformationStage.Preparing:return{enter:function(e,n){return t.transformNode(e,n)}};default:return null}}},{key:"transformNode",value:function(e,t){return C.NodeUtils.parentizeNode(e,t)}}]),t}(v.AbstractNodeTransformer);S=f([m.injectable(),g(0,m.inject(y.ServiceIdentifiers.IRandomGenerator)),g(1,m.inject(y.ServiceIdentifiers.IOptions)),h("design:paramtypes",[Object,Object])],S),t.ParentificationTransformer=S},function(e,t,n){"use strict";var r,i=n(0),o=i(n(2)),a=i(n(3)),s=i(n(11)),u=i(n(9)),d=i(n(10)),l=i(n(8)),c=i(n(7)),p=i(n(6)),f=i(n(5)),h=function(e,t,n,r){var i,o=arguments.length,a=o<3?t:null===r?r=(0,f.default)(t,n):r;if("object"===("undefined"==typeof Reflect?"undefined":(0,p.default)(Reflect))&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(i=e[s])&&(a=(o<3?i(a):o>3?i(t,n,a):i(t,n))||a);return o>3&&a&&(0,c.default)(t,n,a),a},g=function(e,t){if("object"===("undefined"==typeof Reflect?"undefined":(0,p.default)(Reflect))&&"function"==typeof l.default)return(0,l.default)(e,t)},m=function(e,t){return function(n,r){t(n,r,e)}};Object.defineProperty(t,"__esModule",{value:!0});var y=n(1),b=n(4),v=n(134),C=n(18),S=n(19),N=n(28),A=r=function(e){function t(e,n,i){var a;return(0,o.default)(this,t),(a=(0,s.default)(this,(0,u.default)(t).call(this,n,i))).obfuscatingGuards=r.obfuscatingGuardsList.map(e),a}return(0,d.default)(t,e),(0,a.default)(t,[{key:"getVisitor",value:function(e){var t=this;switch(e){case C.TransformationStage.Preparing:return{enter:function(e,n){return t.transformNode(e,n)}};default:return null}}},{key:"transformNode",value:function(e,t){var n=this.obfuscatingGuards.every(function(t){return t.check(e)});return N.NodeMetadata.set(e,{ignoredNode:!n}),e}}]),t}(S.AbstractNodeTransformer);A.obfuscatingGuardsList=[v.ObfuscatingGuard.BlackListNodeGuard,v.ObfuscatingGuard.ConditionalCommentNodeGuard],A=r=h([y.injectable(),m(0,y.inject(b.ServiceIdentifiers.Factory__INodeGuard)),m(1,y.inject(b.ServiceIdentifiers.IRandomGenerator)),m(2,y.inject(b.ServiceIdentifiers.IOptions)),g("design:paramtypes",[Function,Object,Object])],A),t.ObfuscatingGuardsTransformer=A},function(e,t,n){"use strict";var r=n(0),i=r(n(2)),o=r(n(3)),a=r(n(11)),s=r(n(9)),u=r(n(10)),d=r(n(8)),l=r(n(7)),c=r(n(6)),p=r(n(5)),f=function(e,t,n,r){var i,o=arguments.length,a=o<3?t:null===r?r=(0,p.default)(t,n):r;if("object"===("undefined"==typeof Reflect?"undefined":(0,c.default)(Reflect))&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(i=e[s])&&(a=(o<3?i(a):o>3?i(t,n,a):i(t,n))||a);return o>3&&a&&(0,l.default)(t,n,a),a},h=function(e,t){if("object"===("undefined"==typeof Reflect?"undefined":(0,c.default)(Reflect))&&"function"==typeof d.default)return(0,d.default)(e,t)},g=function(e,t){return function(n,r){t(n,r,e)}};Object.defineProperty(t,"__esModule",{value:!0});var m=n(1),y=n(4),b=n(18),v=n(19),C=n(13),S=n(28),N=function(e){function t(e,n){return(0,i.default)(this,t),(0,a.default)(this,(0,s.default)(t).call(this,e,n))}return(0,u.default)(t,e),(0,o.default)(t,[{key:"getVisitor",value:function(e){var t=this;switch(e){case b.TransformationStage.Preparing:return{enter:function(e,n){return t.transformNode(e,n)}};default:return null}}},{key:"transformNode",value:function(e,t){return S.NodeMetadata.set(e,{ignoredNode:!1}),C.NodeGuards.isIdentifierNode(e)&&S.NodeMetadata.set(e,{renamedIdentifier:!1}),C.NodeGuards.isLiteralNode(e)&&S.NodeMetadata.set(e,{replacedLiteral:!1}),e}}]),t}(v.AbstractNodeTransformer);N=f([m.injectable(),g(0,m.inject(y.ServiceIdentifiers.IRandomGenerator)),g(1,m.inject(y.ServiceIdentifiers.IOptions)),h("design:paramtypes",[Object,Object])],N),t.MetadataTransformer=N},function(e,t){e.exports=function(e){return(""+e).replace(/["'\\\n\r\u2028\u2029]/g,function(e){switch(e){case'"':case"'":case"\\":return"\\"+e;case"\n":return"\\n";case"\r":return"\\r";case"\u2028":return"\\u2028";case"\u2029":return"\\u2029"}})}},function(e,t,n){"use strict";var r,i=n(0),o=i(n(57)),a=i(n(2)),s=i(n(3)),u=i(n(11)),d=i(n(9)),l=i(n(10)),c=i(n(8)),p=i(n(7)),f=i(n(6)),h=i(n(5)),g=function(e,t,n,r){var i,o=arguments.length,a=o<3?t:null===r?r=(0,h.default)(t,n):r;if("object"===("undefined"==typeof Reflect?"undefined":(0,f.default)(Reflect))&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(i=e[s])&&(a=(o<3?i(a):o>3?i(t,n,a):i(t,n))||a);return o>3&&a&&(0,p.default)(t,n,a),a},m=function(e,t){if("object"===("undefined"==typeof Reflect?"undefined":(0,f.default)(Reflect))&&"function"==typeof c.default)return(0,c.default)(e,t)},y=function(e,t){return function(n,r){t(n,r,e)}},b=function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var v=n(1),C=n(4),S=b(n(225)),N=n(18),A=n(19),_=n(20),E=n(13),I=n(14),T=r=function(e){function t(e,n){var r;return(0,a.default)(this,t),(r=(0,u.default)(this,(0,d.default)(t).call(this,e,n))).evalRootAstHostNodeSet=new o.default,r}return(0,l.default)(t,e),(0,s.default)(t,[{key:"getVisitor",value:function(e){var t=this;switch(e){case N.TransformationStage.Preparing:return{enter:function(e,n){if(n&&E.NodeGuards.isCallExpressionNode(e)&&E.NodeGuards.isIdentifierNode(e.callee)&&"eval"===e.callee.name)return t.transformNode(e,n)}};case N.TransformationStage.Finalizing:return this.evalRootAstHostNodeSet.size?{leave:function(e,n){if(n&&t.isEvalRootAstHostNode(e))return t.restoreNode(e,n)}}:null;default:return null}}},{key:"transformNode",value:function(e,t){var n=e.arguments[0];if(!n)return e;var i,o=r.extractEvalStringFromCallExpressionArgument(n);if(!o)return e;try{i=I.NodeUtils.convertCodeToStructure(o)}catch(t){return e}var a=_.NodeFactory.functionExpressionNode([],_.NodeFactory.blockStatementNode(i));return this.evalRootAstHostNodeSet.add(a),a}},{key:"restoreNode",value:function(e,t){var n=e.body.body,r=I.NodeUtils.convertStructureToCode(n);return _.NodeFactory.callExpressionNode(_.NodeFactory.identifierNode("eval"),[_.NodeFactory.literalNode(S.default(r))])}},{key:"isEvalRootAstHostNode",value:function(e){return E.NodeGuards.isFunctionExpressionNode(e)&&this.evalRootAstHostNodeSet.has(e)}}],[{key:"extractEvalStringFromCallExpressionArgument",value:function(e){return E.NodeGuards.isLiteralNode(e)?r.extractEvalStringFromLiteralNode(e):E.NodeGuards.isTemplateLiteralNode(e)?r.extractEvalStringFromTemplateLiteralNode(e):null}},{key:"extractEvalStringFromLiteralNode",value:function(e){return"string"==typeof e.value?e.value:null}},{key:"extractEvalStringFromTemplateLiteralNode",value:function(e){var t=e.quasis;return 1!==t.length||e.expressions.length?null:t[0].value.cooked}}]),t}(A.AbstractNodeTransformer);T=r=g([v.injectable(),y(0,v.inject(C.ServiceIdentifiers.IRandomGenerator)),y(1,v.inject(C.ServiceIdentifiers.IOptions)),m("design:paramtypes",[Object,Object])],T),t.EvalCallExpressionTransformer=T},function(e,t,n){"use strict";var r=n(0),i=r(n(2)),o=r(n(3)),a=r(n(11)),s=r(n(9)),u=r(n(10)),d=r(n(8)),l=r(n(7)),c=r(n(6)),p=r(n(5)),f=function(e,t,n,r){var i,o=arguments.length,a=o<3?t:null===r?r=(0,p.default)(t,n):r;if("object"===("undefined"==typeof Reflect?"undefined":(0,c.default)(Reflect))&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(i=e[s])&&(a=(o<3?i(a):o>3?i(t,n,a):i(t,n))||a);return o>3&&a&&(0,l.default)(t,n,a),a},h=function(e,t){if("object"===("undefined"==typeof Reflect?"undefined":(0,c.default)(Reflect))&&"function"==typeof d.default)return(0,d.default)(e,t)},g=function(e,t){return function(n,r){t(n,r,e)}};Object.defineProperty(t,"__esModule",{value:!0});var m=n(1),y=n(4),b=n(46),v=n(18),C=n(19),S=n(13),N=function(e){function t(e,n,r,o,u){var d;return(0,i.default)(this,t),(d=(0,a.default)(this,(0,s.default)(t).call(this,o,u))).stackTraceData=[],d.stackTraceAnalyzer=e,d.obfuscationEventEmitter=n,d.customNodeGroupStorage=r,d}return(0,u.default)(t,e),(0,o.default)(t,[{key:"getVisitor",value:function(e){var t=this;switch(e){case v.TransformationStage.Preparing:return{leave:function(e,n){if(S.NodeGuards.isProgramNode(e))return t.analyzeNode(e,n),t.appendCustomNodesBeforeObfuscation(e,n),t.transformNode(e,n)}};case v.TransformationStage.Finalizing:return{leave:function(e,n){S.NodeGuards.isProgramNode(e)&&t.appendCustomNodesAfterObfuscation(e,n)}};default:return null}}},{key:"analyzeNode",value:function(e,t){this.stackTraceData=this.stackTraceAnalyzer.analyze(e)}},{key:"transformNode",value:function(e,t){return e}},{key:"appendCustomNodesBeforeObfuscation",value:function(e,t){var n=this;this.customNodeGroupStorage.getStorage().forEach(function(e){e.initialize(),n.obfuscationEventEmitter.once(e.getAppendEvent(),e.appendCustomNodes.bind(e))}),this.obfuscationEventEmitter.emit(b.ObfuscationEvent.BeforeObfuscation,e,this.stackTraceData)}},{key:"appendCustomNodesAfterObfuscation",value:function(e,t){this.obfuscationEventEmitter.emit(b.ObfuscationEvent.AfterObfuscation,e,this.stackTraceData)}}]),t}(C.AbstractNodeTransformer);N=f([m.injectable(),g(0,m.inject(y.ServiceIdentifiers.IStackTraceAnalyzer)),g(1,m.inject(y.ServiceIdentifiers.IObfuscationEventEmitter)),g(2,m.inject(y.ServiceIdentifiers.TCustomNodeGroupStorage)),g(3,m.inject(y.ServiceIdentifiers.IRandomGenerator)),g(4,m.inject(y.ServiceIdentifiers.IOptions)),h("design:paramtypes",[Object,Object,Object,Object,Object])],N),t.CustomNodesTransformer=N},function(e,t,n){"use strict";var r,i=n(0),o=i(n(2)),a=i(n(3)),s=i(n(7)),u=i(n(6)),d=i(n(5)),l=function(e,t,n,r){var i,o=arguments.length,a=o<3?t:null===r?r=(0,d.default)(t,n):r;if("object"===("undefined"==typeof Reflect?"undefined":(0,u.default)(Reflect))&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var l=e.length-1;l>=0;l--)(i=e[l])&&(a=(o<3?i(a):o>3?i(t,n,a):i(t,n))||a);return o>3&&a&&(0,s.default)(t,n,a),a};Object.defineProperty(t,"__esModule",{value:!0});var c=n(1),p=n(13),f=r=function(){function e(){(0,o.default)(this,e),this.obfuscationAllowedForCurrentNode=!0,this.obfuscationAllowedForNextNode=null}return(0,a.default)(e,[{key:"check",value:function(e){if(this.obfuscationAllowedForNextNode&&(this.obfuscationAllowedForCurrentNode=this.obfuscationAllowedForNextNode,this.obfuscationAllowedForNextNode=null),!p.NodeGuards.isNodeWithComments(e))return this.obfuscationAllowedForCurrentNode;var t=e.leadingComments,n=e.trailingComments;return t&&(this.obfuscationAllowedForCurrentNode=this.checkComments(t)),n&&(this.obfuscationAllowedForNextNode=this.checkComments(n)),this.obfuscationAllowedForCurrentNode}},{key:"checkComments",value:function(e){for(var t=e.length,n=this.obfuscationAllowedForCurrentNode,i=0;i=0;s--)(i=e[s])&&(a=(o<3?i(a):o>3?i(t,n,a):i(t,n))||a);return o>3&&a&&(0,c.default)(t,n,a),a},g=function(e,t){if("object"===("undefined"==typeof Reflect?"undefined":(0,p.default)(Reflect))&&"function"==typeof l.default)return(0,l.default)(e,t)},m=function(e,t){return function(n,r){t(n,r,e)}};Object.defineProperty(t,"__esModule",{value:!0});var y=n(1),b=n(4),v=n(18),C=n(19),S=n(13),N=r=function(e){function t(e,n){return(0,o.default)(this,t),(0,s.default)(this,(0,u.default)(t).call(this,e,n))}return(0,d.default)(t,e),(0,a.default)(t,[{key:"getVisitor",value:function(e){var t=this;switch(e){case v.TransformationStage.Preparing:return{leave:function(e,n){if(n&&S.NodeGuards.isNodeWithComments(e))return t.transformNode(e,n)}};default:return null}}},{key:"transformNode",value:function(e,t){return e.leadingComments&&(e.leadingComments=this.transformComments(e.leadingComments)),e.trailingComments&&(e.trailingComments=this.transformComments(e.trailingComments)),e}},{key:"transformComments",value:function(e){return e.filter(function(e){return r.preservedWords.some(function(t){return e.value.includes(t)})})}}]),t}(C.AbstractNodeTransformer);N.preservedWords=["@license","@preserve"],N=r=h([y.injectable(),m(0,y.inject(b.ServiceIdentifiers.IRandomGenerator)),m(1,y.inject(b.ServiceIdentifiers.IOptions)),g("design:paramtypes",[Object,Object])],N),t.CommentsTransformer=N},function(e,t,n){"use strict";var r,i=n(0),o=i(n(2)),a=i(n(3)),s=i(n(8)),u=i(n(7)),d=i(n(6)),l=i(n(5)),c=function(e,t,n,r){var i,o=arguments.length,a=o<3?t:null===r?r=(0,l.default)(t,n):r;if("object"===("undefined"==typeof Reflect?"undefined":(0,d.default)(Reflect))&&"function"==typeof Reflect.decorate)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(i=e[s])&&(a=(o<3?i(a):o>3?i(t,n,a):i(t,n))||a);return o>3&&a&&(0,u.default)(t,n,a),a},p=function(e,t){if("object"===("undefined"==typeof Reflect?"undefined":(0,d.default)(Reflect))&&"function"==typeof s.default)return(0,s.default)(e,t)};Object.defineProperty(t,"__esModule",{value:!0});var f=n(1),h=n(13),g=r=function(){function e(){(0,o.default)(this,e),this.blackListGuardsLength=r.blackListGuards.length}return(0,a.default)(e,[{key:"check",value:function(e){for(var t=0;t=0;s--)(i=e[s])&&(a=(o<3?i(a):o>3?i(t,n,a):i(t,n))||a);return o>3&&a&&(0,d.default)(t,n,a),a};Object.defineProperty(t,"__esModule",{value:!0});var f=n(1),h=n(242),g=n(241),m=n(240),y=n(239),b=n(238),v=n(237),C=n(236),S=n(235),N=n(234),A=n(233),_=n(232),E=r=function(){function e(){(0,s.default)(this,e)}return(0,u.default)(e,[{key:"normalize",value:function(e){var t=(0,a.default)({},e),n=!0,i=!1,s=void 0;try{for(var u,d=(0,o.default)(r.normalizerRules);!(n=(u=d.next()).done);n=!0){t=(0,u.value)(t)}}catch(e){i=!0,s=e}finally{try{n||null==d.return||d.return()}finally{if(i)throw s}}return t}}]),e}();E.normalizerRules=[h.ControlFlowFlatteningThresholdRule,g.DeadCodeInjectionRule,m.DeadCodeInjectionThresholdRule,y.DomainLockRule,b.InputFileNameRule,v.SelfDefendingRule,C.SourceMapBaseUrlRule,S.SourceMapFileNameRule,N.StringArrayRule,A.StringArrayEncodingRule,_.StringArrayThresholdRule],E=r=p([f.injectable()],E),t.OptionsNormalizer=E},function(e,t,n){"use strict";var r=n(0),i=r(n(105)),o=r(n(56)),a=r(n(2)),s=r(n(3));Object.defineProperty(t,"__esModule",{value:!0});var u=function(){function e(){(0,a.default)(this,e)}return(0,s.default)(e,null,[{key:"format",value:function(t){return t.reduce(function(t,n){return(0,o.default)(t).concat([e.formatWithNestedConstraints(n)])},[]).join("\n")}},{key:"formatWithNestedConstraints",value:function(e){var t=e.constraints,n="`".concat(e.property,"` errors:\n"),r=(0,i.default)(t).map(function(e){return" - ".concat(t[e],"\n")}).join();return"".concat(n).concat(r)}}]),e}();t.ValidationErrorsFormatter=u},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(63),i=n(136),o=n(99),a=n(53),s=n(52);t.registerDecorator=function(e){var t;if(e.validator instanceof Function)t=e.validator;else{var n=e.validator;t=function(){function e(){}return e.prototype.validate=function(e,t){return n.validate(e,t)},e.prototype.defaultMessage=function(e){return n.defaultMessage?n.defaultMessage(e):""},e}(),s.getFromContainer(r.MetadataStorage).addConstraintMetadata(new i.ConstraintMetadata(t,e.name,e.async))}var u={type:a.ValidationTypes.CUSTOM_VALIDATION,target:e.target,propertyName:e.propertyName,validationOptions:e.options,constraintCls:t,constraints:e.constraints};s.getFromContainer(r.MetadataStorage).addValidationMetadata(new o.ValidationMetadata(u))}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=n(53),i=n(99),o=n(136),a=n(52),s=n(63);t.ValidatorConstraint=function(e){return function(t){var n=!(!e||!e.async),r=e&&e.name?e.name:"";r||(r=t.name)||(r=r.replace(/\.?([A-Z]+)/g,function(e,t){return"_"+t.toLowerCase()}).replace(/^_/,""));var i=new o.ConstraintMetadata(t,r,n);a.getFromContainer(s.MetadataStorage).addConstraintMetadata(i)}},t.Validate=function(e,t,n){return function(o,u){var d={type:r.ValidationTypes.CUSTOM_VALIDATION,target:o.constructor,propertyName:u,constraintCls:e,constraints:t instanceof Array?t:void 0,validationOptions:t instanceof Array?n:t};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(d))}},t.ValidateNested=function(e){return function(t,n){var o={type:r.ValidationTypes.NESTED_VALIDATION,target:t.constructor,propertyName:n,validationOptions:e};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(o))}},t.Allow=function(e){return function(t,n){var o={type:r.ValidationTypes.WHITELIST,target:t.constructor,propertyName:n,validationOptions:e};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(o))}},t.ValidateIf=function(e,t){return function(n,o){var u={type:r.ValidationTypes.CONDITIONAL_VALIDATION,target:n.constructor,propertyName:o,constraints:[e],validationOptions:t};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(u))}},t.IsDefined=function(e){return function(t,n){var o={type:r.ValidationTypes.IS_DEFINED,target:t.constructor,propertyName:n,validationOptions:e};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(o))}},t.Equals=function(e,t){return function(n,o){var u={type:r.ValidationTypes.EQUALS,target:n.constructor,propertyName:o,constraints:[e],validationOptions:t};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(u))}},t.NotEquals=function(e,t){return function(n,o){var u={type:r.ValidationTypes.NOT_EQUALS,target:n.constructor,propertyName:o,constraints:[e],validationOptions:t};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(u))}},t.IsEmpty=function(e){return function(t,n){var o={type:r.ValidationTypes.IS_EMPTY,target:t.constructor,propertyName:n,validationOptions:e};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(o))}},t.IsNotEmpty=function(e){return function(t,n){var o={type:r.ValidationTypes.IS_NOT_EMPTY,target:t.constructor,propertyName:n,validationOptions:e};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(o))}},t.IsIn=function(e,t){return function(n,o){var u={type:r.ValidationTypes.IS_IN,target:n.constructor,propertyName:o,constraints:[e],validationOptions:t};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(u))}},t.IsNotIn=function(e,t){return function(n,o){var u={type:r.ValidationTypes.IS_NOT_IN,target:n.constructor,propertyName:o,constraints:[e],validationOptions:t};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(u))}},t.IsOptional=function(e){return function(t,n){var o={type:r.ValidationTypes.CONDITIONAL_VALIDATION,target:t.constructor,propertyName:n,constraints:[function(e,t){return null!==e[n]&&void 0!==e[n]}],validationOptions:e};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(o))}},t.IsBoolean=function(e){return function(t,n){var o={type:r.ValidationTypes.IS_BOOLEAN,target:t.constructor,propertyName:n,validationOptions:e};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(o))}},t.IsDate=function(e){return function(t,n){var o={type:r.ValidationTypes.IS_DATE,target:t.constructor,propertyName:n,validationOptions:e};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(o))}},t.IsNumber=function(e,t){return void 0===e&&(e={}),function(n,o){var u={type:r.ValidationTypes.IS_NUMBER,target:n.constructor,propertyName:o,constraints:[e],validationOptions:t};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(u))}},t.IsInt=function(e){return function(t,n){var o={type:r.ValidationTypes.IS_INT,target:t.constructor,propertyName:n,validationOptions:e};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(o))}},t.IsString=function(e){return function(t,n){var o={type:r.ValidationTypes.IS_STRING,target:t.constructor,propertyName:n,validationOptions:e};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(o))}},t.IsDateString=function(e){return function(t,n){var o={type:r.ValidationTypes.IS_DATE_STRING,target:t.constructor,propertyName:n,validationOptions:e};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(o))}},t.IsArray=function(e){return function(t,n){var o={type:r.ValidationTypes.IS_ARRAY,target:t.constructor,propertyName:n,validationOptions:e};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(o))}},t.IsEnum=function(e,t){return function(n,o){var u={type:r.ValidationTypes.IS_ENUM,target:n.constructor,propertyName:o,constraints:[e],validationOptions:t};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(u))}},t.IsDivisibleBy=function(e,t){return function(n,o){var u={type:r.ValidationTypes.IS_DIVISIBLE_BY,target:n.constructor,propertyName:o,constraints:[e],validationOptions:t};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(u))}},t.IsPositive=function(e){return function(t,n){var o={type:r.ValidationTypes.IS_POSITIVE,target:t.constructor,propertyName:n,validationOptions:e};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(o))}},t.IsNegative=function(e){return function(t,n){var o={type:r.ValidationTypes.IS_NEGATIVE,target:t.constructor,propertyName:n,validationOptions:e};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(o))}},t.Min=function(e,t){return function(n,o){var u={type:r.ValidationTypes.MIN,target:n.constructor,propertyName:o,constraints:[e],validationOptions:t};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(u))}},t.Max=function(e,t){return function(n,o){var u={type:r.ValidationTypes.MAX,target:n.constructor,propertyName:o,constraints:[e],validationOptions:t};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(u))}},t.MinDate=function(e,t){return function(n,o){var u={type:r.ValidationTypes.MIN_DATE,target:n.constructor,propertyName:o,constraints:[e],validationOptions:t};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(u))}},t.MaxDate=function(e,t){return function(n,o){var u={type:r.ValidationTypes.MAX_DATE,target:n.constructor,propertyName:o,constraints:[e],validationOptions:t};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(u))}},t.IsBooleanString=function(e){return function(t,n){var o={type:r.ValidationTypes.IS_BOOLEAN_STRING,target:t.constructor,propertyName:n,validationOptions:e};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(o))}},t.IsNumberString=function(e){return function(t,n){var o={type:r.ValidationTypes.IS_NUMBER_STRING,target:t.constructor,propertyName:n,validationOptions:e};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(o))}},t.Contains=function(e,t){return function(n,o){var u={type:r.ValidationTypes.CONTAINS,target:n.constructor,propertyName:o,constraints:[e],validationOptions:t};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(u))}},t.NotContains=function(e,t){return function(n,o){var u={type:r.ValidationTypes.NOT_CONTAINS,target:n.constructor,propertyName:o,constraints:[e],validationOptions:t};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(u))}},t.IsAlpha=function(e){return function(t,n){var o={type:r.ValidationTypes.IS_ALPHA,target:t.constructor,propertyName:n,validationOptions:e};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(o))}},t.IsAlphanumeric=function(e){return function(t,n){var o={type:r.ValidationTypes.IS_ALPHANUMERIC,target:t.constructor,propertyName:n,validationOptions:e};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(o))}},t.IsAscii=function(e){return function(t,n){var o={type:r.ValidationTypes.IS_ASCII,target:t.constructor,propertyName:n,validationOptions:e};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(o))}},t.IsBase64=function(e){return function(t,n){var o={type:r.ValidationTypes.IS_BASE64,target:t.constructor,propertyName:n,validationOptions:e};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(o))}},t.IsByteLength=function(e,t,n){return function(o,u){var d={type:r.ValidationTypes.IS_BYTE_LENGTH,target:o.constructor,propertyName:u,constraints:[e,t],validationOptions:n};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(d))}},t.IsCreditCard=function(e){return function(t,n){var o={type:r.ValidationTypes.IS_CREDIT_CARD,target:t.constructor,propertyName:n,validationOptions:e};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(o))}},t.IsCurrency=function(e,t){return function(n,o){var u={type:r.ValidationTypes.IS_CURRENCY,target:n.constructor,propertyName:o,constraints:[e],validationOptions:t};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(u))}},t.IsEmail=function(e,t){return function(n,o){var u={type:r.ValidationTypes.IS_EMAIL,target:n.constructor,propertyName:o,constraints:[e],validationOptions:t};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(u))}},t.IsFQDN=function(e,t){return function(n,o){var u={type:r.ValidationTypes.IS_FQDN,target:n.constructor,propertyName:o,constraints:[e],validationOptions:t};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(u))}},t.IsFullWidth=function(e){return function(t,n){var o={type:r.ValidationTypes.IS_FULL_WIDTH,target:t.constructor,propertyName:n,validationOptions:e};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(o))}},t.IsHalfWidth=function(e){return function(t,n){var o={type:r.ValidationTypes.IS_HALF_WIDTH,target:t.constructor,propertyName:n,validationOptions:e};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(o))}},t.IsVariableWidth=function(e){return function(t,n){var o={type:r.ValidationTypes.IS_VARIABLE_WIDTH,target:t.constructor,propertyName:n,validationOptions:e};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(o))}},t.IsHexColor=function(e){return function(t,n){var o={type:r.ValidationTypes.IS_HEX_COLOR,target:t.constructor,propertyName:n,validationOptions:e};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(o))}},t.IsHexadecimal=function(e){return function(t,n){var o={type:r.ValidationTypes.IS_HEXADECIMAL,target:t.constructor,propertyName:n,validationOptions:e};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(o))}},t.IsIP=function(e,t){return function(n,o){var u={type:r.ValidationTypes.IS_IP,target:n.constructor,propertyName:o,constraints:[e],validationOptions:t};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(u))}},t.IsISBN=function(e,t){return function(n,o){var u={type:r.ValidationTypes.IS_ISBN,target:n.constructor,propertyName:o,constraints:[e],validationOptions:t};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(u))}},t.IsISIN=function(e){return function(t,n){var o={type:r.ValidationTypes.IS_ISIN,target:t.constructor,propertyName:n,validationOptions:e};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(o))}},t.IsISO8601=function(e){return function(t,n){var o={type:r.ValidationTypes.IS_ISO8601,target:t.constructor,propertyName:n,validationOptions:e};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(o))}},t.IsJSON=function(e){return function(t,n){var o={type:r.ValidationTypes.IS_JSON,target:t.constructor,propertyName:n,validationOptions:e};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(o))}},t.IsLowercase=function(e){return function(t,n){var o={type:r.ValidationTypes.IS_LOWERCASE,target:t.constructor,propertyName:n,validationOptions:e};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(o))}},t.IsMobilePhone=function(e,t){return function(n,o){var u={type:r.ValidationTypes.IS_MOBILE_PHONE,target:n.constructor,propertyName:o,constraints:[e],validationOptions:t};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(u))}},t.IsPhoneNumber=function(e,t){return function(n,o){var u={type:r.ValidationTypes.IS_PHONE_NUMBER,target:n.constructor,propertyName:o,constraints:[e],validationOptions:t};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(u))}},t.IsMongoId=function(e){return function(t,n){var o={type:r.ValidationTypes.IS_MONGO_ID,target:t.constructor,propertyName:n,validationOptions:e};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(o))}},t.IsMultibyte=function(e){return function(t,n){var o={type:r.ValidationTypes.IS_MULTIBYTE,target:t.constructor,propertyName:n,validationOptions:e};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(o))}},t.IsSurrogatePair=function(e){return function(t,n){var o={type:r.ValidationTypes.IS_SURROGATE_PAIR,target:t.constructor,propertyName:n,validationOptions:e};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(o))}},t.IsUrl=function(e,t){return function(n,o){var u={type:r.ValidationTypes.IS_URL,target:n.constructor,propertyName:o,constraints:[e],validationOptions:t};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(u))}},t.IsUUID=function(e,t){return function(n,o){var u={type:r.ValidationTypes.IS_UUID,target:n.constructor,propertyName:o,constraints:[e],validationOptions:t};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(u))}},t.IsUppercase=function(e){return function(t,n){var o={type:r.ValidationTypes.IS_UPPERCASE,target:t.constructor,propertyName:n,validationOptions:e};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(o))}},t.Length=function(e,t,n){return function(o,u){var d={type:r.ValidationTypes.LENGTH,target:o.constructor,propertyName:u,constraints:[e,t],validationOptions:n};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(d))}},t.MinLength=function(e,t){return function(n,o){var u={type:r.ValidationTypes.MIN_LENGTH,target:n.constructor,propertyName:o,constraints:[e],validationOptions:t};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(u))}},t.MaxLength=function(e,t){return function(n,o){var u={type:r.ValidationTypes.MAX_LENGTH,target:n.constructor,propertyName:o,constraints:[e],validationOptions:t};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(u))}},t.Matches=function(e,t,n){var o;return t&&t instanceof Object&&!n?n=t:o=t,function(t,u){var d={type:r.ValidationTypes.MATCHES,target:t.constructor,propertyName:u,constraints:[e,o],validationOptions:n};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(d))}},t.IsMilitaryTime=function(e){return function(t,n){var o={type:r.ValidationTypes.IS_MILITARY_TIME,target:t.constructor,propertyName:n,validationOptions:e};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(o))}},t.ArrayContains=function(e,t){return function(n,o){var u={type:r.ValidationTypes.ARRAY_CONTAINS,target:n.constructor,propertyName:o,constraints:[e],validationOptions:t};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(u))}},t.ArrayNotContains=function(e,t){return function(n,o){var u={type:r.ValidationTypes.ARRAY_NOT_CONTAINS,target:n.constructor,propertyName:o,constraints:[e],validationOptions:t};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(u))}},t.ArrayNotEmpty=function(e){return function(t,n){var o={type:r.ValidationTypes.ARRAY_NOT_EMPTY,target:t.constructor,propertyName:n,validationOptions:e};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(o))}},t.ArrayMinSize=function(e,t){return function(n,o){var u={type:r.ValidationTypes.ARRAY_MIN_SIZE,target:n.constructor,propertyName:o,constraints:[e],validationOptions:t};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(u))}},t.ArrayMaxSize=function(e,t){return function(n,o){var u={type:r.ValidationTypes.ARRAY_MAX_SIZE,target:n.constructor,propertyName:o,constraints:[e],validationOptions:t};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(u))}},t.ArrayUnique=function(e){return function(t,n){var o={type:r.ValidationTypes.ARRAY_UNIQUE,target:t.constructor,propertyName:n,validationOptions:e};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(o))}},t.IsInstance=function(e,t){return function(n,o){var u={type:r.ValidationTypes.IS_INSTANCE,target:n.constructor,propertyName:o,constraints:[e],validationOptions:t};a.getFromContainer(s.MetadataStorage).addValidationMetadata(new i.ValidationMetadata(u))}}},function(module,exports,__webpack_require__){var require,require;module.exports=function(){var define,module,exports;return function e(t,n,r){function i(a,s){if(!n[a]){if(!t[a]){var u="function"==typeof require&&require;if(!s&&u)return require(a,!0);if(o)return o(a,!0);var d=new Error("Cannot find module '"+a+"'");throw d.code="MODULE_NOT_FOUND",d}var l=n[a]={exports:{}};t[a][0].call(l.exports,function(e){var n=t[a][1][e];return i(n||e)},l,l.exports,e,t,n,r)}return n[a].exports}for(var o="function"==typeof require&&require,a=0;a>>0),goog.uidCounter_=0,goog.getHashCode=goog.getUid,goog.removeHashCode=goog.removeUid,goog.cloneObject=function(e){var t=goog.typeOf(e);if("object"==t||"array"==t){if("function"==typeof e.clone)return e.clone();for(var n in t="array"==t?[]:{},e)t[n]=goog.cloneObject(e[n]);return t}return e},goog.bindNative_=function(e,t,n){return e.call.apply(e.bind,arguments)},goog.bindJs_=function(e,t,n){if(!e)throw Error();if(2Number(t[1]))&&b('(()=>{"use strict";class X{constructor(){if(new.target!=String)throw 1;this.x=42}}let q=Reflect.construct(X,[],String);if(q.x!=42||!(q instanceof String))throw 1;for(const a of[2,3]){if(a==2)continue;function f(z={a}){let a=0;return z.a}{function f(){return 0;}}return f()==3}})()')}),a("es6-impl",function(){return!0}),a("es7",function(){return b("2 ** 2 == 4")}),a("es8",function(){return b("async () => 1, true")}),a("es9",function(){return b("({...rest} = {}), true")}),a("es_next",function(){return!1}),c},goog.Transpiler.prototype.needsTranspile=function(e,t){if("always"==goog.TRANSPILE)return!0;if("never"==goog.TRANSPILE)return!1;if(this.requiresTranspilation_||(this.requiresTranspilation_=this.createRequiresTranspilation_()),e in this.requiresTranspilation_)return!!this.requiresTranspilation_[e]||!(!goog.inHtmlDocument_()||"es6"!=t||"noModule"in goog.global.document.createElement("script"));throw Error("Unknown language mode: "+e)},goog.Transpiler.prototype.transpile=function(e,t){return goog.transpile_(e,t)},goog.transpiler_=new goog.Transpiler,goog.protectScriptTag_=function(e){return e.replace(/<\/(SCRIPT)/gi,"\\x3c/$1")},goog.DebugLoader_=function(){this.dependencies_={},this.idToPath_={},this.written_={},this.loadingDeps_=[],this.depsToLoad_=[],this.paused_=!1,this.factory_=new goog.DependencyFactory(goog.transpiler_),this.deferredCallbacks_={},this.deferredQueue_=[]},goog.DebugLoader_.prototype.bootstrap=function(e,t){function n(){r&&(goog.global.setTimeout(r,0),r=null)}var r=t;if(e.length){for(var i=[],o=0;o<\/script>")}else{var i=t.createElement("script");i.defer=goog.Dependency.defer_,i.async=!1,i.type="text/javascript",(r=goog.getScriptNonce())&&i.setAttribute("nonce",r),goog.DebugLoader_.IS_OLD_IE_?(e.pause(),i.onreadystatechange=function(){"loaded"!=i.readyState&&"complete"!=i.readyState||(e.loaded(),e.resume())}):i.onload=function(){i.onload=null,e.loaded()},i.src=this.path,t.head.appendChild(i)}}else goog.logToConsole_("Cannot use default debug loader outside of HTML documents."),"deps.js"==this.relativePath?(goog.logToConsole_("Consider setting CLOSURE_IMPORT_SCRIPT before loading base.js, or seting CLOSURE_NO_DEPS to true."),e.loaded()):e.pause()},goog.Es6ModuleDependency=function(e,t,n,r,i){goog.Dependency.call(this,e,t,n,r,i)},goog.inherits(goog.Es6ModuleDependency,goog.Dependency),goog.Es6ModuleDependency.prototype.load=function(e){if(goog.global.CLOSURE_IMPORT_SCRIPT)goog.global.CLOSURE_IMPORT_SCRIPT(this.path)?e.loaded():e.pause();else if(goog.inHtmlDocument_()){var t=goog.global.document,n=this;if(goog.isDocumentLoading_()){var r=function(e,n){n?t.write('