UNPKG

angular2

Version:

Angular 2 - a web framework for modern web apps

1 lines 6.59 kB
{"version":3,"sources":["reflection_capabilities.es6"],"names":[],"mappings":"AAAA;AAAA,KAAK,iBAAiB,AAAC,CAAC,MAAK,QAAQ;wBAArC,EAAC,GAAE,YAAqB;AAAE,mCAAwB;IAAE,AAA9B,CAAC;AAAvB,WAAS,CAAT,EAAC,KAAI,CAAO,KAAG,AAAS,CAAC;CAAgC,CAAC;;;;SAA1D,EAAC,wCAAoB,CAAA,OAAM,AAAC,4BAAkB,CACtC,CAAA,yCAAqB,kDAA2B,CAAA,yCAAqB,GAAK,EAAC,OAAM,wCAAmB,CAAC,AAD/D,CACgE;AADtG,OAAG;AAAG,YAAQ;SAAtB,EAAC,8CAAoB,CAAA,OAAM,AAAC,kCAAkB,CACtC,CAAA,+CAAqB,wDAA2B,CAAA,+CAAqB,GAAK,EAAC,OAAM,8CAAmB,CAAC,AAD/D,CACgE;AAAtG,OAAG;AAAG,cAAU;SADxB,EAAC,YAAoB,CAAA,OAAM,AAAC,WAAkB,CACtC,CAAA,aAAqB,sBAA2B,CAAA,aAAqB,GAAK,EAAC,OAAM,YAAmB,CAAC,AAD/D,CACgE;AACtG,WAAO;AAAG,WAAO;AAAG,WAAO;AAFnC,AAAI,EAAA,yBAIG,SAAM,uBAAqB;;AAsDlC,AA1DwC,CAAA;AAAxC,AAAC,eAAc,YAAY,CAAC,AAAC;AAK3B,QAAM,CAAN,UAAQ,IAAG,AAAK,CAAY;AAC1B,WAAQ,IAAG,OAAO;AAChB,SAAK,EAAA;AACH,aAAO,UAAS,AAAD,CAAE;AAAC,eAAO,IAAI,KAAG,AAAC,EAAC,CAAC;QAAC,CAAC;AAAA,AACvC,SAAK,EAAA;AACH,aAAO,UAAS,EAAC,CAAE;AAAC,eAAO,IAAI,KAAG,AAAC,CAAC,EAAC,CAAC,CAAC;QAAC,CAAC;AAAA,AAC3C,SAAK,EAAA;AACH,aAAO,UAAS,EAAC,CAAG,CAAA,EAAC,CAAE;AAAC,eAAO,IAAI,KAAG,AAAC,CAAC,EAAC,CAAG,GAAC,CAAC,CAAC;QAAC,CAAC;AAAA,AACnD,SAAK,EAAA;AACH,aAAO,UAAS,EAAC,CAAG,CAAA,EAAC,CAAG,CAAA,EAAC,CAAE;AAAC,eAAO,IAAI,KAAG,AAAC,CAAC,EAAC,CAAG,GAAC,CAAG,GAAC,CAAC,CAAC;QAAC,CAAC;AAAA,AAC3D,SAAK,EAAA;AACH,aAAO,UAAS,EAAC,CAAG,CAAA,EAAC,CAAG,CAAA,EAAC,CAAG,CAAA,EAAC,CAAE;AAAC,eAAO,IAAI,KAAG,AAAC,CAAC,EAAC,CAAG,GAAC,CAAG,GAAC,CAAG,GAAC,CAAC,CAAC;QAAC,CAAC;AAAA,AACnE,SAAK,EAAA;AACH,aAAO,UAAS,EAAC,CAAG,CAAA,EAAC,CAAG,CAAA,EAAC,CAAG,CAAA,EAAC,CAAG,CAAA,EAAC,CAAE;AAAC,eAAO,IAAI,KAAG,AAAC,CAAC,EAAC,CAAG,GAAC,CAAG,GAAC,CAAG,GAAC,CAAG,GAAC,CAAC,CAAC;QAAC,CAAC;AAAA,AAC3E,SAAK,EAAA;AACH,aAAO,UAAS,EAAC,CAAG,CAAA,EAAC,CAAG,CAAA,EAAC,CAAG,CAAA,EAAC,CAAG,CAAA,EAAC,CAAG,CAAA,EAAC,CAAE;AAAC,eAAO,IAAI,KAAG,AAAC,CAAC,EAAC,CAAG,GAAC,CAAG,GAAC,CAAG,GAAC,CAAG,GAAC,CAAG,GAAC,CAAC,CAAC;QAAC,CAAC;AAAA,AACnF,SAAK,EAAA;AACH,aAAO,UAAS,EAAC,CAAG,CAAA,EAAC,CAAG,CAAA,EAAC,CAAG,CAAA,EAAC,CAAG,CAAA,EAAC,CAAG,CAAA,EAAC,CAAG,CAAA,EAAC,CAAE;AAAC,eAAO,IAAI,KAAG,AAAC,CAAC,EAAC,CAAG,GAAC,CAAG,GAAC,CAAG,GAAC,CAAG,GAAC,CAAG,GAAC,CAAG,GAAC,CAAC,CAAC;QAAC,CAAC;AAAA,AAC3F,SAAK,EAAA;AACH,aAAO,UAAS,EAAC,CAAG,CAAA,EAAC,CAAG,CAAA,EAAC,CAAG,CAAA,EAAC,CAAG,CAAA,EAAC,CAAG,CAAA,EAAC,CAAG,CAAA,EAAC,CAAG,CAAA,EAAC,CAAE;AAAC,eAAO,IAAI,KAAG,AAAC,CAAC,EAAC,CAAG,GAAC,CAAG,GAAC,CAAG,GAAC,CAAG,GAAC,CAAG,GAAC,CAAG,GAAC,CAAG,GAAC,CAAC,CAAC;QAAC,CAAC;AAAA,AACnG,SAAK,EAAA;AACH,aAAO,UAAS,EAAC,CAAG,CAAA,EAAC,CAAG,CAAA,EAAC,CAAG,CAAA,EAAC,CAAG,CAAA,EAAC,CAAG,CAAA,EAAC,CAAG,CAAA,EAAC,CAAG,CAAA,EAAC,CAAG,CAAA,EAAC,CAAE;AAAC,eAAO,IAAI,KAAG,AAAC,CAAC,EAAC,CAAG,GAAC,CAAG,GAAC,CAAG,GAAC,CAAG,GAAC,CAAG,GAAC,CAAG,GAAC,CAAG,GAAC,CAAG,GAAC,CAAC,CAAC;QAAC,CAAC;AAAA,AAC3G,SAAK,GAAC;AACJ,aAAO,UAAS,EAAC,CAAG,CAAA,EAAC,CAAG,CAAA,EAAC,CAAG,CAAA,EAAC,CAAG,CAAA,EAAC,CAAG,CAAA,EAAC,CAAG,CAAA,EAAC,CAAG,CAAA,EAAC,CAAG,CAAA,EAAC,CAAG,CAAA,GAAE,CAAE;AAAC,eAAO,IAAI,KAAG,AAAC,CAAC,EAAC,CAAG,GAAC,CAAG,GAAC,CAAG,GAAC,CAAG,GAAC,CAAG,GAAC,CAAG,GAAC,CAAG,GAAC,CAAG,GAAC,CAAG,IAAE,CAAC,CAAC;QAAC,CAAC;AAAA,IACvH;AAAC,IAAA;AAED,QAAM,IAAI,MAAI,AAAC,CAAC,4CAA2C,CAAC,CAAC;EAC/D;AAEA,WAAS,CAAT,UAAW,UAAS,CAAc;AAChC,SAAO,CAAA,SAAQ,AAAC,CAAC,UAAS,WAAW,CAAC,CAAA,CACpC,CAAA,UAAS,WAAW,EACpB,CAAA,WAAU,gBAAgB,AAAC,CAAC,UAAS,OAAO,CAAC,CAAC;EAClD;AAEA,YAAU,CAAV,UAAY,UAAS,CAAQ;AAC3B,SAAO,CAAA,SAAQ,AAAC,CAAC,UAAS,YAAY,CAAC,CAAA,CAAI,CAAA,UAAS,YAAY,EAAI,GAAC,CAAC;EACxE;AAEA,OAAK,CAAL,UAAO,IAAG,AAAO,CAAY;AAC3B,SAAO,IAAI,SAAO,AAAC,CAAC,GAAE,CAAG,CAAA,WAAU,EAAI,KAAG,CAAA,CAAI,IAAE,CAAC,CAAC;EACpD;AAEA,OAAK,CAAL,UAAO,IAAG,AAAO,CAAY;AAC3B,SAAO,IAAI,SAAO,AAAC,CAAC,GAAE,CAAG,IAAE,CAAG,CAAA,WAAU,EAAI,KAAG,CAAA,CAAI,QAAM,CAAC,CAAC;EAC7D;AAEA,OAAK,CAAL,UAAO,IAAG,AAAO,CAAY;AAC3B,AAAI,MAAA,CAAA,MAAK,IAAI,IAAI,EAAC,KAAG,CAAE,CAAC;AACxB,SAAO,IAAI,SAAO,AAAC,CAAC,GAAE,CAAG,OAAK,CAC5B,EAAA,OAAO,EAAC,OAAK,EAAC,wBAAsB,EAAC,KAAG,EAAC,qBAAkB,KAC3D,SAAS,EAAC,OAAK,EAAC,mBAAiB,CAAA,CAAC,CAAC;EACvC;AAAA,KAzDmF;AAArF,KAAK,eAAe,AAAC,wDACb,EAAC,GAAE,CAAG,UAAS,AAAD,CAAG;AAAC,YAIX,IAAG,GAJ+B;EAAC,CAAC,CAAC,CAAC;AADrD,KAAK,eAAe,AAAC,uDACb,EAAC,GAAE,CAAG,UAAS,AAAD,CAAG;AAAC,YAD1B,eAAc,KAAO,UAC4B;EAAC,CAAC,CAAC,CAAC;AADrD,KAAK,eAAe,AAAC,uDACb,EAAC,GAAE,CAAG,UAAS,AAAD,CAAG;AAAC,YAD1B,eAAc,KAAO,UAC4B;EAAC,CAAC,CAAC,CAAC;AADrD,KAAK,eAAe,AAAC,uDACb,EAAC,GAAE,CAAG,UAAS,AAAD,CAAG;AAAC,YAD1B,eAAc,KAAO,UAC4B;EAAC,CAAC,CAAC,CAAC;AAyDrD","file":"angular2/src/reflection/reflection_capabilities.js","sourcesContent":["import {Type, isPresent} from 'angular2/src/facade/lang';\nimport {List, ListWrapper} from 'angular2/src/facade/collection';\nimport {GetterFn, SetterFn, MethodFn} from './types';\n\nexport class ReflectionCapabilities {\n factory(type:Type):Function {\n switch (type.length) {\n case 0:\n return function(){return new type();};\n case 1:\n return function(a1){return new type(a1);};\n case 2:\n return function(a1, a2){return new type(a1, a2);};\n case 3:\n return function(a1, a2, a3){return new type(a1, a2, a3);};\n case 4:\n return function(a1, a2, a3, a4){return new type(a1, a2, a3, a4);};\n case 5:\n return function(a1, a2, a3, a4, a5){return new type(a1, a2, a3, a4, a5);};\n case 6:\n return function(a1, a2, a3, a4, a5, a6){return new type(a1, a2, a3, a4, a5, a6);};\n case 7:\n return function(a1, a2, a3, a4, a5, a6, a7){return new type(a1, a2, a3, a4, a5, a6, a7);};\n case 8:\n return function(a1, a2, a3, a4, a5, a6, a7, a8){return new type(a1, a2, a3, a4, a5, a6, a7, a8);};\n case 9:\n return function(a1, a2, a3, a4, a5, a6, a7, a8, a9){return new type(a1, a2, a3, a4, a5, a6, a7, a8, a9);};\n case 10:\n return function(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10){return new type(a1, a2, a3, a4, a5, a6, a7, a8, a9, a10);};\n };\n\n throw new Error(\"Factory cannot take more than 10 arguments\");\n }\n\n parameters(typeOfFunc):List<List> {\n return isPresent(typeOfFunc.parameters) ?\n typeOfFunc.parameters :\n ListWrapper.createFixedSize(typeOfFunc.length);\n }\n\n annotations(typeOfFunc):List {\n return isPresent(typeOfFunc.annotations) ? typeOfFunc.annotations : [];\n }\n\n getter(name:string):GetterFn {\n return new Function('o', 'return o.' + name + ';');\n }\n\n setter(name:string):SetterFn {\n return new Function('o', 'v', 'return o.' + name + ' = v;');\n }\n\n method(name:string):MethodFn {\n var method = `o.${name}`;\n return new Function('o', 'args',\n `if (!${method}) throw new Error('\"${name}\" is undefined');` +\n `return ${method}.apply(o, args);`);\n }\n}"]}