{"version":3,"sources":["webpack:///./node_modules/aurelia-templating-binding/dist/native-modules/aurelia-templating-binding.js"],"names":["_class","_temp","_class2","_class3","_class4","_temp2","_class5","_temp3","AttributeMap","svg","this","elements","Object","create","allElements","registerUniversal","register","prototype","elementName","attributeName","propertyName","toLowerCase","map","isStandardSvgAttribute","element","undefined","test","inject","InterpolationBindingExpression","observerLocator","targetProperty","parts","mode","lookupFunctions","attribute","attrToRemove","discrete","createBinding","target","length","ChildInterpolationBinding","InterpolationBinding","validateTarget","info","parentElement","nodeName","Error","targetAccessor","getAccessor","interpolate","isBound","value","i","ii","setValue","updateOneTimeBindings","child","oneTime","call","bind","source","unbind","binding","_dec","sourceExpression","left","right","parent","updateTarget","toString","rawValue","evaluate","_version","connect","Array","observeArray","unobserve","oneWay","LetExpression","toBindingContext","LetBinding","_dec2","context","bindingContext","overrideContext","LetInterpolationBindingExpression","LetInterpolationBinding","interpolationBinding","createInterpolationBinding","SyntaxInterpreter","parser","eventManager","attributeMap","interpret","resources","existingInstruction","command","handleUnknownCommand","warn","determineDefaultBindingMode","attrName","tagName","type","contentEditable","twoWay","attributes","defaultBindingMode","instruction","parse","attrValue","trigger","none","capture","capturing","delegate","bubbling","options","language","name","current","inString","inEscape","foundName","trim","_getPrimaryPropertyName","inspectAttribute","createAttributeInstruction","getAttribute","primaryProperty","isDestructuring","keyValue","match","split","replace","key","local","items","toView","fromView","TemplatingBindingLanguage","_BindingLanguage","syntaxInterpreter","_this","self","ReferenceError","_possibleConstructorReturn","emptyStringExpression","toBindingContextAttr","subClass","superClass","TypeError","constructor","enumerable","writable","configurable","setPrototypeOf","__proto__","_inherits","expression","interpolationParts","parseInterpolation","theInfo","createLetExpressions","letElement","expressions","attr","hasAttribute","nodeValue","push","inspectTextContent","indexOf","char","pos","open","quote","interpolationStart","partIndex","substring","substr","configure","config","container","registerSingleton","registerAlias"],"mappings":"oHAAA,4CAAIA,EAAQC,EAAaC,EAAgBC,EAASC,EAASC,EAAQC,EAASC,EAA5E,sBAYO,IAAIC,GAAgBP,EAAQD,EAAS,WAC1C,SAASQ,EAAaC,GAGpBC,KAAKC,SAAWC,OAAOC,OAAO,MAC9BH,KAAKI,YAAcF,OAAOC,OAAO,MAEjCH,KAAKD,IAAMA,EAEXC,KAAKK,kBAAkB,YAAa,aACpCL,KAAKK,kBAAkB,kBAAmB,mBAC1CL,KAAKK,kBAAkB,WAAY,YACnCL,KAAKK,kBAAkB,cAAe,eACtCL,KAAKK,kBAAkB,YAAa,aACpCL,KAAKK,kBAAkB,YAAa,aACpCL,KAAKK,kBAAkB,aAAc,cACrCL,KAAKK,kBAAkB,WAAY,YAEnCL,KAAKM,SAAS,QAAS,MAAO,WAE9BN,KAAKM,SAAS,MAAO,SAAU,UAE/BN,KAAKM,SAAS,QAAS,YAAa,aACpCN,KAAKM,SAAS,QAAS,YAAa,aACpCN,KAAKM,SAAS,QAAS,aAAc,cACrCN,KAAKM,SAAS,QAAS,cAAe,eACtCN,KAAKM,SAAS,QAAS,aAAc,cACrCN,KAAKM,SAAS,QAAS,iBAAkB,kBACzCN,KAAKM,SAAS,QAAS,aAAc,cAErCN,KAAKM,SAAS,WAAY,YAAa,aAEvCN,KAAKM,SAAS,KAAM,UAAW,WAC/BN,KAAKM,SAAS,KAAM,UAAW,WAC/BN,KAAKM,SAAS,KAAM,UAAW,WAC/BN,KAAKM,SAAS,KAAM,UAAW,WAmCjC,OAhCAR,EAAaS,UAAUD,SAAW,SAAkBE,EAAaC,EAAeC,GAC9EF,EAAcA,EAAYG,cAC1BF,EAAgBA,EAAcE,eAChBX,KAAKC,SAASO,GAAeR,KAAKC,SAASO,IAAgBN,OAAOC,OAAO,OAC/EM,GAAiBC,GAG3BZ,EAAaS,UAAUF,kBAAoB,SAA2BI,EAAeC,GACnFD,EAAgBA,EAAcE,cAC9BX,KAAKI,YAAYK,GAAiBC,GAGpCZ,EAAaS,UAAUK,IAAM,SAAaJ,EAAaC,GACrD,GAAIT,KAAKD,IAAIc,uBAAuBL,EAAaC,GAC/C,OAAOA,EAETD,EAAcA,EAAYG,cAC1BF,EAAgBA,EAAcE,cAC9B,IAAIG,EAAUd,KAAKC,SAASO,GAC5B,YAAgBO,IAAZD,GAAyBL,KAAiBK,EACrCA,EAAQL,GAEbA,KAAiBT,KAAKI,YACjBJ,KAAKI,YAAYK,GAGtB,0BAA0BO,KAAKP,GAC1BA,EAEF,aAAUA,IAGZX,EAtEmC,GAuEvCR,EAAO2B,OAAS,CAAC,KAAc1B,GAEzB2B,EAAiC,WAC1C,SAASA,EAA+BC,EAAiBC,EAAgBC,EAAOC,EAAMC,EAAiBC,GAGrGxB,KAAKmB,gBAAkBA,EACvBnB,KAAKoB,eAAiBA,EACtBpB,KAAKqB,MAAQA,EACbrB,KAAKsB,KAAOA,EACZtB,KAAKuB,gBAAkBA,EACvBvB,KAAKwB,UAAYxB,KAAKyB,aAAeD,EACrCxB,KAAK0B,UAAW,EAUlB,OAPAR,EAA+BX,UAAUoB,cAAgB,SAAuBC,GAC9E,OAA0B,IAAtB5B,KAAKqB,MAAMQ,OACN,IAAIC,EAA0BF,EAAQ5B,KAAKmB,gBAAiBnB,KAAKqB,MAAM,GAAIrB,KAAKsB,KAAMtB,KAAKuB,gBAAiBvB,KAAKoB,eAAgBpB,KAAKqB,MAAM,GAAIrB,KAAKqB,MAAM,IAE7J,IAAIU,EAAqB/B,KAAKmB,gBAAiBnB,KAAKqB,MAAOO,EAAQ5B,KAAKoB,eAAgBpB,KAAKsB,KAAMtB,KAAKuB,kBAG1GL,EApBmC,GAuB5C,SAASc,EAAeJ,EAAQlB,GAC9B,GAAqB,UAAjBA,EACF,YAAqB,sBAAsBuB,KAAK,kIAC3C,GAAIL,EAAOM,eAAmD,aAAlCN,EAAOM,cAAcC,UAA4C,gBAAjBzB,EACjF,MAAM,IAAI0B,MAAM,0IAIb,IAAIL,EAAuB,WAChC,SAASA,EAAqBZ,EAAiBE,EAAOO,EAAQR,EAAgBE,EAAMC,GAGlFS,EAAeJ,EAAQR,GACvBpB,KAAKmB,gBAAkBA,EACvBnB,KAAKqB,MAAQA,EACbrB,KAAK4B,OAASA,EACd5B,KAAKoB,eAAiBA,EACtBpB,KAAKqC,eAAiBlB,EAAgBmB,YAAYV,EAAQR,GAC1DpB,KAAKsB,KAAOA,EACZtB,KAAKuB,gBAAkBA,EAwDzB,OArDAQ,EAAqBxB,UAAUgC,YAAc,WAC3C,GAAIvC,KAAKwC,QAAS,CAGhB,IAFA,IAAIC,EAAQ,GACRpB,EAAQrB,KAAKqB,MACRqB,EAAI,EAAGC,EAAKtB,EAAMQ,OAAQa,EAAIC,EAAID,IACzCD,GAASC,EAAI,GAAM,EAAIrB,EAAMqB,GAAK1C,KAAK,eAAiB0C,GAAGD,MAE7DzC,KAAKqC,eAAeO,SAASH,EAAOzC,KAAK4B,OAAQ5B,KAAKoB,kBAI1DW,EAAqBxB,UAAUsC,sBAAwB,WACrD,IAAK,IAAIH,EAAI,EAAGC,EAAK3C,KAAKqB,MAAMQ,OAAQa,EAAIC,EAAID,GAAK,EAAG,CACtD,IAAII,EAAQ9C,KAAK,eAAiB0C,GAC9BI,EAAMxB,OAAS,KAAYyB,SAC7BD,EAAME,SAKZjB,EAAqBxB,UAAU0C,KAAO,SAAcC,GAClD,GAAIlD,KAAKwC,QAAS,CAChB,GAAIxC,KAAKkD,SAAWA,EAClB,OAEFlD,KAAKmD,SAEPnD,KAAKkD,OAASA,EAGd,IADA,IAAI7B,EAAQrB,KAAKqB,MACRqB,EAAI,EAAGC,EAAKtB,EAAMQ,OAAQa,EAAIC,EAAID,GAAK,EAAG,CACjD,IAAIU,EAAU,IAAItB,EAA0B9B,KAAMA,KAAKmB,gBAAiBE,EAAMqB,GAAI1C,KAAKsB,KAAMtB,KAAKuB,iBAClG6B,EAAQH,KAAKC,GACblD,KAAK,eAAiB0C,GAAKU,EAG7BpD,KAAKwC,SAAU,EACfxC,KAAKuC,eAGPR,EAAqBxB,UAAU4C,OAAS,WACtC,GAAKnD,KAAKwC,QAAV,CAGAxC,KAAKwC,SAAU,EACfxC,KAAKkD,OAAS,KAEd,IADA,IACSR,EAAI,EAAGC,EADJ3C,KAAKqB,MACUQ,OAAQa,EAAIC,EAAID,GAAK,EAAG,CAEjD1C,KADW,eAAiB0C,GACjBS,YAIRpB,EAnEyB,GAsEvBD,EAAoC,cAAeuB,CAAK7D,EAAU,WAC3E,SAASsC,EAA0BF,EAAQT,EAAiBmC,EAAkBhC,EAAMC,EAAiBH,EAAgBmC,EAAMC,GAGrH5B,aAAkBG,EACpB/B,KAAKyD,OAAS7B,GAEdI,EAAeJ,EAAQR,GACvBpB,KAAK4B,OAASA,EACd5B,KAAKoB,eAAiBA,EACtBpB,KAAKqC,eAAiBlB,EAAgBmB,YAAYV,EAAQR,IAE5DpB,KAAKmB,gBAAkBA,EACvBnB,KAAKsD,iBAAmBA,EACxBtD,KAAKsB,KAAOA,EACZtB,KAAKuB,gBAAkBA,EACvBvB,KAAKuD,KAAOA,EACZvD,KAAKwD,MAAQA,EAqFf,OAlFA1B,EAA0BvB,UAAUmD,aAAe,SAAsBjB,IACvEA,EAAQA,QAAwC,GAAKA,EAAMkB,cAC7C3D,KAAKyC,QACjBzC,KAAKyC,MAAQA,EACTzC,KAAKyD,OACPzD,KAAKyD,OAAOlB,cAEZvC,KAAKqC,eAAeO,SAAS5C,KAAKuD,KAAOd,EAAQzC,KAAKwD,MAAOxD,KAAK4B,OAAQ5B,KAAKoB,kBAKrFU,EAA0BvB,UAAUyC,KAAO,WACpChD,KAAKwC,UAIVxC,KAAK4D,SAAW5D,KAAKsD,iBAAiBO,SAAS7D,KAAKkD,OAAQlD,KAAKuB,iBACjEvB,KAAK0D,aAAa1D,KAAK4D,UAEnB5D,KAAKsB,OAAS,KAAYyB,UAC5B/C,KAAK8D,WACL9D,KAAKsD,iBAAiBS,QAAQ/D,KAAMA,KAAKkD,QACrClD,KAAK4D,oBAAoBI,OAC3BhE,KAAKiE,aAAajE,KAAK4D,UAEzB5D,KAAKkE,WAAU,MAInBpC,EAA0BvB,UAAU0C,KAAO,SAAcC,GACvD,GAAIlD,KAAKwC,QAAS,CAChB,GAAIxC,KAAKkD,SAAWA,EAClB,OAEFlD,KAAKmD,SAEPnD,KAAKwC,SAAU,EACfxC,KAAKkD,OAASA,EAEd,IAAII,EAAmBtD,KAAKsD,iBACxBA,EAAiBL,MACnBK,EAAiBL,KAAKjD,KAAMkD,EAAQlD,KAAKuB,iBAG3CvB,KAAK4D,SAAWN,EAAiBO,SAASX,EAAQlD,KAAKuB,iBACvDvB,KAAK0D,aAAa1D,KAAK4D,UAEnB5D,KAAKsB,OAAS,KAAY6C,QAC5B,aAAsBnE,OAI1B8B,EAA0BvB,UAAU4C,OAAS,WAC3C,GAAKnD,KAAKwC,QAAV,CAGAxC,KAAKwC,SAAU,EACf,IAAIc,EAAmBtD,KAAKsD,iBACxBA,EAAiBH,QACnBG,EAAiBH,OAAOnD,KAAMA,KAAKkD,QAErClD,KAAKkD,OAAS,KACdlD,KAAKyC,MAAQ,KACbzC,KAAK4D,SAAW,KAChB5D,KAAKkE,WAAU,KAGjBpC,EAA0BvB,UAAUwD,QAAU,SAAiBF,GACxD7D,KAAKwC,UAGNqB,IACF7D,KAAK4D,SAAW5D,KAAKsD,iBAAiBO,SAAS7D,KAAKkD,OAAQlD,KAAKuB,iBACjEvB,KAAK0D,aAAa1D,KAAK4D,WAEzB5D,KAAKsD,iBAAiBS,QAAQ/D,KAAMA,KAAKkD,QACrClD,KAAK4D,oBAAoBI,OAC3BhE,KAAKiE,aAAajE,KAAK4D,YAIpB9B,EAtGoE,KAuGrEtC,EAEG4E,EAAgB,WACzB,SAASA,EAAcjD,EAAiBC,EAAgBkC,EAAkB/B,EAAiB8C,GAGzFrE,KAAKmB,gBAAkBA,EACvBnB,KAAKsD,iBAAmBA,EACxBtD,KAAKoB,eAAiBA,EACtBpB,KAAKuB,gBAAkBA,EACvBvB,KAAKqE,iBAAmBA,EAO1B,OAJAD,EAAc7D,UAAUoB,cAAgB,WACtC,OAAO,IAAI2C,EAAWtE,KAAKmB,gBAAiBnB,KAAKsD,iBAAkBtD,KAAKoB,eAAgBpB,KAAKuB,gBAAiBvB,KAAKqE,mBAG9GD,EAfkB,GAkBhBE,EAAsB,cAAeC,CAAM9E,EAAU,WAC9D,SAAS6E,EAAWnD,EAAiBmC,EAAkBlC,EAAgBG,EAAiB8C,GAGtFrE,KAAKmB,gBAAkBA,EACvBnB,KAAKsD,iBAAmBA,EACxBtD,KAAKoB,eAAiBA,EACtBpB,KAAKuB,gBAAkBA,EACvBvB,KAAKkD,OAAS,KACdlD,KAAK4B,OAAS,KACd5B,KAAKqE,iBAAmBA,EA2D1B,OAxDAC,EAAW/D,UAAUmD,aAAe,WAClC,IAAIjB,EAAQzC,KAAKsD,iBAAiBO,SAAS7D,KAAKkD,OAAQlD,KAAKuB,iBAC7DvB,KAAK4B,OAAO5B,KAAKoB,gBAAkBqB,GAGrC6B,EAAW/D,UAAUyC,KAAO,SAAcwB,GACxC,GAAKxE,KAAKwC,QAAV,CAGA,GAAIgC,IAAY,KAIhB,MAAM,IAAIpC,MAAM,2BAA6BoC,GAH3CxE,KAAK0D,iBAMTY,EAAW/D,UAAU0C,KAAO,SAAcC,GACxC,GAAIlD,KAAKwC,QAAS,CAChB,GAAIxC,KAAKkD,SAAWA,EAClB,OAEFlD,KAAKmD,SAGPnD,KAAKwC,SAAU,EACfxC,KAAKkD,OAASA,EACdlD,KAAK4B,OAAS5B,KAAKqE,iBAAmBnB,EAAOuB,eAAiBvB,EAAOwB,gBAEjE1E,KAAKsD,iBAAiBL,MACxBjD,KAAKsD,iBAAiBL,KAAKjD,KAAMkD,EAAQlD,KAAKuB,iBAGhD,aAAsBvB,OAGxBsE,EAAW/D,UAAU4C,OAAS,WACvBnD,KAAKwC,UAGVxC,KAAKwC,SAAU,EACXxC,KAAKsD,iBAAiBH,QACxBnD,KAAKsD,iBAAiBH,OAAOnD,KAAMA,KAAKkD,QAE1ClD,KAAKkD,OAAS,KACdlD,KAAK4B,OAAS,KACd5B,KAAKkE,WAAU,KAGjBI,EAAW/D,UAAUwD,QAAU,WACxB/D,KAAKwC,UAGVxC,KAAK0D,eACL1D,KAAKsD,iBAAiBS,QAAQ/D,KAAMA,KAAKkD,UAGpCoB,EArEuD,KAsExD7E,EAEGkF,EAAoC,WAC7C,SAASA,EAAkCxD,EAAiBC,EAAgBC,EAAOE,EAAiB8C,GAGlGrE,KAAKmB,gBAAkBA,EACvBnB,KAAKoB,eAAiBA,EACtBpB,KAAKqB,MAAQA,EACbrB,KAAKuB,gBAAkBA,EACvBvB,KAAKqE,iBAAmBA,EAO1B,OAJAM,EAAkCpE,UAAUoB,cAAgB,WAC1D,OAAO,IAAIiD,EAAwB5E,KAAKmB,gBAAiBnB,KAAKoB,eAAgBpB,KAAKqB,MAAOrB,KAAKuB,gBAAiBvB,KAAKqE,mBAGhHM,EAfsC,GAkBpCC,EAA0B,WACnC,SAASA,EAAwBzD,EAAiBC,EAAgBC,EAAOE,EAAiB8C,GAGxFrE,KAAKmB,gBAAkBA,EACvBnB,KAAKqB,MAAQA,EACbrB,KAAKoB,eAAiBA,EACtBpB,KAAKuB,gBAAkBA,EACvBvB,KAAKqE,iBAAmBA,EACxBrE,KAAK4B,OAAS,KAqChB,OAlCAgD,EAAwBrE,UAAU0C,KAAO,SAAcC,GACrD,GAAIlD,KAAKwC,QAAS,CAChB,GAAIxC,KAAKkD,SAAWA,EAClB,OAEFlD,KAAKmD,SAGPnD,KAAKwC,SAAU,EACfxC,KAAKkD,OAASA,EACdlD,KAAK4B,OAAS5B,KAAKqE,iBAAmBnB,EAAOuB,eAAiBvB,EAAOwB,gBAErE1E,KAAK6E,qBAAuB7E,KAAK8E,6BACjC9E,KAAK6E,qBAAqB5B,KAAKC,IAGjC0B,EAAwBrE,UAAU4C,OAAS,WACpCnD,KAAKwC,UAGVxC,KAAKwC,SAAU,EACfxC,KAAKkD,OAAS,KACdlD,KAAK4B,OAAS,KACd5B,KAAK6E,qBAAqB1B,SAC1BnD,KAAK6E,qBAAuB,OAG9BD,EAAwBrE,UAAUuE,2BAA6B,WAC7D,OAA0B,IAAtB9E,KAAKqB,MAAMQ,OACN,IAAIC,EAA0B9B,KAAK4B,OAAQ5B,KAAKmB,gBAAiBnB,KAAKqB,MAAM,GAAI,KAAY8C,OAAQnE,KAAKuB,gBAAiBvB,KAAKoB,eAAgBpB,KAAKqB,MAAM,GAAIrB,KAAKqB,MAAM,IAE3K,IAAIU,EAAqB/B,KAAKmB,gBAAiBnB,KAAKqB,MAAOrB,KAAK4B,OAAQ5B,KAAKoB,eAAgB,KAAY+C,OAAQnE,KAAKuB,kBAGxHqD,EA9C4B,GAiD1BG,GAAqBpF,EAASD,EAAU,WACjD,SAASqF,EAAkBC,EAAQ7D,EAAiB8D,EAAcC,GAGhElF,KAAKgF,OAASA,EACdhF,KAAKmB,gBAAkBA,EACvBnB,KAAKiF,aAAeA,EACpBjF,KAAKkF,aAAeA,EAgMtB,OA7LAH,EAAkBxE,UAAU4E,UAAY,SAAmBC,EAAWtE,EAASmB,EAAMoD,EAAqBb,GACxG,OAAIvC,EAAKqD,WAAWtF,KACXA,KAAKiC,EAAKqD,SAASF,EAAWtE,EAASmB,EAAMoD,EAAqBb,GAGpExE,KAAKuF,qBAAqBH,EAAWtE,EAASmB,EAAMoD,EAAqBb,IAGlFO,EAAkBxE,UAAUgF,qBAAuB,SAA8BH,EAAWtE,EAASmB,EAAMoD,EAAqBb,GAE9H,OADA,YAAqB,sBAAsBgB,KAAK,2BAA4BvD,GACrEoD,GAGTN,EAAkBxE,UAAUkF,4BAA8B,SAAqC3E,EAAS4E,EAAUlB,GAChH,IAAImB,EAAU7E,EAAQ6E,QAAQhF,cAE9B,MAAgB,UAAZgF,IAAqC,UAAbD,GAAqC,UAAbA,IAA0C,aAAjB5E,EAAQ8E,MAAwC,UAAjB9E,EAAQ8E,MAAgC,UAAZD,GAAoC,YAAbD,IAA4C,aAAjB5E,EAAQ8E,MAAwC,UAAjB9E,EAAQ8E,QAAkC,aAAZD,GAAsC,WAAZA,IAAsC,UAAbD,IAAsC,gBAAbA,GAA2C,cAAbA,IAAyD,SAA5B5E,EAAQ+E,iBAA2C,cAAbH,GAAyC,eAAbA,EACvb,KAAYI,OAGjBtB,GAAWkB,KAAYlB,EAAQuB,YAAcvB,EAAQuB,WAAWL,IAAalB,EAAQuB,WAAWL,GAAUM,oBAAsB,KAAYjD,QACvIyB,EAAQuB,WAAWL,GAAUM,mBAG/B,KAAY7B,QAGrBY,EAAkBxE,UAAU0C,KAAO,SAAcmC,EAAWtE,EAASmB,EAAMoD,EAAqBb,GAC9F,IAAIyB,EAAcZ,GAAuB,IAAoB7D,UAAUS,EAAKyD,UAI5E,OAFAO,EAAYF,WAAW9D,EAAKyD,UAAY,IAAI,IAAkB1F,KAAKmB,gBAAiBnB,KAAKkF,aAAatE,IAAIE,EAAQ6E,QAAS1D,EAAKyD,UAAW1F,KAAKgF,OAAOkB,MAAMjE,EAAKkE,gBAAwCpF,IAA5BkB,EAAK+D,oBAAgE,OAA5B/D,EAAK+D,mBAA8BhG,KAAKyF,4BAA4B3E,EAASmB,EAAKyD,SAAUlB,GAAWvC,EAAK+D,mBAAoBZ,EAAU7D,iBAE1V0E,GAGTlB,EAAkBxE,UAAU6F,QAAU,SAAiBhB,EAAWtE,EAASmB,GACzE,OAAO,IAAI,IAAmBjC,KAAKiF,aAAchD,EAAKyD,SAAU1F,KAAKgF,OAAOkB,MAAMjE,EAAKkE,WAAY,KAAmBE,MAAM,EAAMjB,EAAU7D,kBAG9IwD,EAAkBxE,UAAU+F,QAAU,SAAiBlB,EAAWtE,EAASmB,GACzE,OAAO,IAAI,IAAmBjC,KAAKiF,aAAchD,EAAKyD,SAAU1F,KAAKgF,OAAOkB,MAAMjE,EAAKkE,WAAY,KAAmBI,WAAW,EAAMnB,EAAU7D,kBAGnJwD,EAAkBxE,UAAUiG,SAAW,SAAkBpB,EAAWtE,EAASmB,GAC3E,OAAO,IAAI,IAAmBjC,KAAKiF,aAAchD,EAAKyD,SAAU1F,KAAKgF,OAAOkB,MAAMjE,EAAKkE,WAAY,KAAmBM,UAAU,EAAMrB,EAAU7D,kBAGlJwD,EAAkBxE,UAAUyC,KAAO,SAAcoC,EAAWtE,EAASmB,EAAMoD,GACzE,IAAIY,EAAcZ,GAAuB,IAAoB7D,UAAUS,EAAKyD,UAI5E,OAFAO,EAAYF,WAAW9D,EAAKyD,UAAY,IAAI,IAAe1F,KAAKmB,gBAAiBc,EAAKyD,SAAU1F,KAAKgF,OAAOkB,MAAMjE,EAAKkE,WAAYf,EAAU7D,iBAEtI0E,GAGTlB,EAAkBxE,UAAUmG,QAAU,SAAiBtB,EAAWtE,EAASmB,EAAMoD,EAAqBb,GACpG,IAOI7B,EAPAsD,EAAcZ,GAAuB,IAAoB7D,UAAUS,EAAKyD,UACxES,EAAYlE,EAAKkE,UACjBQ,EAAW3G,KAAK2G,SAChBC,EAAO,KACPhF,EAAS,GACTiF,OAAU,EACVnE,OAAI,EAEJoE,GAAW,EACXC,GAAW,EACXC,GAAY,EAEhB,IAAKtE,EAAI,EAAGC,EAAKwD,EAAUtE,OAAQa,EAAIC,IAAMD,EAAG,CAG9C,GAAgB,OAFhBmE,EAAUV,EAAUzD,KAEIoE,EAajB,GAAgB,MAAZD,GAA4B,OAATD,EAC5BI,GAAY,EACZJ,EAAOhF,EAAOqF,OACdrF,EAAS,OACJ,IAAgB,OAAZiF,EAAkB,CAC3BjF,GAAUiF,EACVE,GAAW,EACX,SAEAnF,GAAUiF,EAEG,OAATD,IAA8B,IAAbG,GAAkC,MAAZF,IACzCC,GAAYA,QAxBTE,IACHJ,EAAO5G,KAAKkH,wBAAwB9B,EAAWZ,IAEjDvC,EAAO0E,EAASQ,iBAAiB/B,EAAW,IAAKwB,EAAMhF,EAAOqF,QAC9DN,EAASS,2BAA2BhC,EAAWtE,EAASmB,EAAMgE,EAAazB,GAEtEyB,EAAYF,WAAW9D,EAAKyD,YAC/BO,EAAYF,WAAW9D,EAAKyD,UAAYzD,EAAKkE,WAG/CvE,EAAS,GACTgF,EAAO,KAiBTG,GAAW,EAgBb,OAbKC,IACHJ,EAAO5G,KAAKkH,wBAAwB9B,EAAWZ,IAGpC,OAAToC,IACF3E,EAAO0E,EAASQ,iBAAiB/B,EAAW,IAAKwB,EAAMhF,EAAOqF,QAC9DN,EAASS,2BAA2BhC,EAAWtE,EAASmB,EAAMgE,EAAazB,GAEtEyB,EAAYF,WAAW9D,EAAKyD,YAC/BO,EAAYF,WAAW9D,EAAKyD,UAAYzD,EAAKkE,YAI1CF,GAGTlB,EAAkBxE,UAAU2G,wBAA0B,SAAiC9B,EAAWZ,GAChG,IAAIoB,EAAOR,EAAUiC,aAAa7C,EAAQ/D,eAC1C,OAAImF,GAAQA,EAAK0B,gBACR1B,EAAK0B,gBAAgB9F,UAEvB,MAGTuD,EAAkBxE,UAAe,IAAI,SAAc6E,EAAWtE,EAASmB,EAAMoD,GAC3E,IAIIkC,EAJAlG,OAAQ,EACRmG,OAAW,EACXvB,OAAc,EACdE,OAAY,EAOhB,GAAqB,KAFrB9E,GADAkG,GADApB,EAAYlE,EAAKkE,WACWsB,MAAM,iBACRtB,EAAUuB,MAAM,OAASvB,EAAUuB,MAAM,SAEzD7F,OACR,MAAM,IAAIO,MAAM,8FAelB,OAZA6D,EAAcZ,GAAuB,IAAoB7D,UAAUS,EAAKyD,UAEpE6B,GACFC,EAAWnG,EAAM,GAAGsG,QAAQ,SAAU,IAAIA,QAAQ,KAAM,KAAKA,QAAQ,OAAQ,KAAKV,OAAOS,MAAM,KAC/FzB,EAAYF,WAAW6B,IAAMJ,EAAS,GACtCvB,EAAYF,WAAWtD,MAAQ+E,EAAS,IAExCvB,EAAYF,WAAW8B,MAAQxG,EAAM,GAGvC4E,EAAYF,WAAW+B,MAAQ,IAAI,IAAkB9H,KAAKmB,gBAAiB,QAASnB,KAAKgF,OAAOkB,MAAM7E,EAAM,IAAK,KAAY8C,OAAQiB,EAAU7D,iBAExI0E,GAGTlB,EAAkBxE,UAAU,WAAa,SAAgB6E,EAAWtE,EAASmB,EAAMoD,GACjF,IAAIY,EAAcZ,GAAuB,IAAoB7D,UAAUS,EAAKyD,UAI5E,OAFAO,EAAYF,WAAW9D,EAAKyD,UAAY,IAAI,IAAkB1F,KAAKmB,gBAAiBnB,KAAKkF,aAAatE,IAAIE,EAAQ6E,QAAS1D,EAAKyD,UAAW1F,KAAKgF,OAAOkB,MAAMjE,EAAKkE,WAAY,KAAYL,OAAQV,EAAU7D,iBAErM0E,GAGTlB,EAAkBxE,UAAU,WAAa,SAAgB6E,EAAWtE,EAASmB,EAAMoD,GACjF,IAAIY,EAAcZ,GAAuB,IAAoB7D,UAAUS,EAAKyD,UAI5E,OAFAO,EAAYF,WAAW9D,EAAKyD,UAAY,IAAI,IAAkB1F,KAAKmB,gBAAiBnB,KAAKkF,aAAatE,IAAIE,EAAQ6E,QAAS1D,EAAKyD,UAAW1F,KAAKgF,OAAOkB,MAAMjE,EAAKkE,WAAY,KAAY4B,OAAQ3C,EAAU7D,iBAErM0E,GAGTlB,EAAkBxE,UAAU,aAAe,SAAkB6E,EAAWtE,EAASmB,EAAMoD,GACrF,IAAIY,EAAcZ,GAAuB,IAAoB7D,UAAUS,EAAKyD,UAI5E,OAFAO,EAAYF,WAAW9D,EAAKyD,UAAY,IAAI,IAAkB1F,KAAKmB,gBAAiBnB,KAAKkF,aAAatE,IAAIE,EAAQ6E,QAAS1D,EAAKyD,UAAW1F,KAAKgF,OAAOkB,MAAMjE,EAAKkE,WAAY,KAAY6B,SAAU5C,EAAU7D,iBAEvM0E,GAGTlB,EAAkBxE,UAAU,YAAc,SAAiB6E,EAAWtE,EAASmB,EAAMoD,GACnF,IAAIY,EAAcZ,GAAuB,IAAoB7D,UAAUS,EAAKyD,UAI5E,OAFAO,EAAYF,WAAW9D,EAAKyD,UAAY,IAAI,IAAkB1F,KAAKmB,gBAAiBnB,KAAKkF,aAAatE,IAAIE,EAAQ6E,QAAS1D,EAAKyD,UAAW1F,KAAKgF,OAAOkB,MAAMjE,EAAKkE,WAAY,KAAYpD,QAASqC,EAAU7D,iBAEtM0E,GAGFlB,EAvM0C,GAwM9CrF,EAAQuB,OAAS,CAAC,IAAQ,IAAiB,IAAcnB,GAAeH,GAE7EoF,EAAkBxE,UAAU,WAAawE,EAAkBxE,UAAU,WAErE,IAAI0B,EAAO,GAEAgG,GAA6BpI,EAASD,EAAU,SAAUsI,GAGnE,SAASD,EAA0BjD,EAAQ7D,EAAiBgH,EAAmBjD,GAG7E,IAAIkD,EAlpBR,SAAoCC,EAAMrF,GAAQ,IAAKqF,EAAQ,MAAM,IAAIC,eAAe,6DAAgE,OAAOtF,GAAyB,iBAATA,GAAqC,mBAATA,EAA8BqF,EAAPrF,EAkpBlNuF,CAA2BvI,KAAMkI,EAAiBlF,KAAKhD,OASnE,OAPAoI,EAAMpD,OAASA,EACfoD,EAAMjH,gBAAkBA,EACxBiH,EAAMD,kBAAoBA,EAC1BC,EAAMI,sBAAwBJ,EAAMpD,OAAOkB,MAAM,MACjDiC,EAAkBxB,SAAWyB,EAC7BA,EAAMlD,aAAeA,EACrBkD,EAAMK,qBAAuB,qBACtBL,EAuLT,OAh1BF,SAAmBM,EAAUC,GAAc,GAA0B,mBAAfA,GAA4C,OAAfA,EAAuB,MAAM,IAAIC,UAAU,kEAAoED,GAAeD,EAASnI,UAAYL,OAAOC,OAAOwI,GAAcA,EAAWpI,UAAW,CAAEsI,YAAa,CAAEpG,MAAOiG,EAAUI,YAAY,EAAOC,UAAU,EAAMC,cAAc,KAAeL,IAAYzI,OAAO+I,eAAiB/I,OAAO+I,eAAeP,EAAUC,GAAcD,EAASQ,UAAYP,GA2oB/dQ,CAAUlB,EAA2BC,GAiBrCD,EAA0B1H,UAAU4G,iBAAmB,SAA0B/B,EAAW5E,EAAakF,EAAUS,GACjH,IAAI9E,EAAQqE,EAASgC,MAAM,KAI3B,GAFAzF,EAAK+D,mBAAqB,KAEL,IAAjB3E,EAAMQ,OACRI,EAAKyD,SAAWrE,EAAM,GAAG4F,OACzBhF,EAAKkE,UAAYA,EACjBlE,EAAKqD,QAAUjE,EAAM,GAAG4F,OAEH,QAAjBhF,EAAKqD,SACPrD,EAAKmH,WAAa,IAAI,IAAepJ,KAAKgF,OAAOkB,MAAMC,GAAYlE,EAAKyD,SAAUN,EAAU7D,iBAC5FU,EAAKqD,QAAU,KACfrD,EAAKyD,SAAW,OAEhBzD,EAAKmH,WAAa,UAEf,GAAiB,QAAb1D,EACTzD,EAAKyD,SAAWA,EAChBzD,EAAKkE,UAAYA,EACjBlE,EAAKqD,QAAU,KACfrD,EAAKmH,WAAa,IAAI,IAAepJ,KAAKgF,OAAOkB,MAAMC,GAAY,UAAWf,EAAU7D,qBACnF,CACLU,EAAKyD,SAAWA,EAChBzD,EAAKkE,UAAYA,EACjBlE,EAAKqD,QAAU,KACf,IAAI+D,EAAqBrJ,KAAKsJ,mBAAmBlE,EAAWe,GAE1DlE,EAAKmH,WADoB,OAAvBC,EACgB,KAEA,IAAInI,EAA+BlB,KAAKmB,gBAAiBnB,KAAKkF,aAAatE,IAAIJ,EAAakF,GAAW2D,EAAoB,KAAYlF,OAAQiB,EAAU7D,gBAAiBmE,GAIhM,OAAOzD,GAGTgG,EAA0B1H,UAAU6G,2BAA6B,SAAoChC,EAAWtE,EAASyI,EAASlE,EAAqBb,GACrJ,IAAIyB,OAAc,EAElB,GAAIsD,EAAQH,WAAY,CACtB,GAAyB,QAArBG,EAAQ7D,SACV,OAAO6D,EAAQH,YAGjBnD,EAAcZ,GAAuB,IAAoB7D,UAAU+H,EAAQ7D,WAC/DK,WAAWwD,EAAQ7D,UAAY6D,EAAQH,gBAC1CG,EAAQjE,UACjBW,EAAcjG,KAAKmI,kBAAkBhD,UAAUC,EAAWtE,EAASyI,EAASlE,EAAqBb,IAGnG,OAAOyB,GAGTgC,EAA0B1H,UAAUiJ,qBAAuB,SAA8BpE,EAAWqE,GAYlG,IAXA,IAAIC,EAAc,GACd3D,EAAa0D,EAAW1D,WAExB4D,OAAO,EAEPtI,OAAQ,EACRqE,OAAW,EACXS,OAAY,EAEZsC,EAAuBzI,KAAKyI,qBAC5BpE,EAAmBoF,EAAWG,aAAanB,GACtC/F,EAAI,EAAGC,EAAKoD,EAAWlE,OAAQc,EAAKD,IAAKA,EAMhD,GAJAgD,GADAiE,EAAO5D,EAAWrD,IACFkE,KAChBT,EAAYwD,EAAKE,UACjBxI,EAAQqE,EAASgC,MAAM,KAEnBhC,IAAa+C,EAIjB,GAAqB,IAAjBpH,EAAMQ,OAAc,CAEtB,GAAgB,SADNR,EAAM,GACQ,CACtB,YAAqB,+BAA+BmE,KAAK,2CAA6CnE,EAAM,GAAK,kBAAoBqE,EAAW,KAChJ,SAEFgE,EAAYI,KAAK,IAAI1F,EAAcpE,KAAKmB,gBAAiB,aAAUE,EAAM,IAAKrB,KAAKgF,OAAOkB,MAAMC,GAAYf,EAAU7D,gBAAiB8C,SAEvIqB,EAAW,aAAUA,GAEP,QADdrE,EAAQrB,KAAKsJ,mBAAmBlE,EAAWe,KAEzC,YAAqB,+BAA+BX,KAAK,0DAA4DE,EAAW,SAAWS,EAAY,SAAWT,EAAW,MAAQS,EAAY,QAE/L9E,EACFqI,EAAYI,KAAK,IAAInF,EAAkC3E,KAAKmB,gBAAiBuE,EAAUrE,EAAO+D,EAAU7D,gBAAiB8C,IAEzHqF,EAAYI,KAAK,IAAI1F,EAAcpE,KAAKmB,gBAAiBuE,EAAU,IAAI,IAAcS,GAAYf,EAAU7D,gBAAiB8C,IAIlI,OAAOqF,GAGTzB,EAA0B1H,UAAUwJ,mBAAqB,SAA4B3E,EAAW3C,GAC9F,IAAIpB,EAAQrB,KAAKsJ,mBAAmBlE,EAAW3C,GAC/C,OAAc,OAAVpB,EACK,KAEF,IAAIH,EAA+BlB,KAAKmB,gBAAiB,cAAeE,EAAO,KAAY8C,OAAQiB,EAAU7D,gBAAiB,gBAGvI0G,EAA0B1H,UAAU+I,mBAAqB,SAA4BlE,EAAW3C,GAW9F,IAVA,IAAIC,EAAID,EAAMuH,QAAQ,KAAM,GACxBrH,EAAKF,EAAMZ,OACXoI,OAAO,EACPC,EAAM,EACNC,EAAO,EACPC,EAAQ,KACRC,OAAqB,EACrBhJ,OAAQ,EACRiJ,EAAY,EAET5H,GAAK,GAAKA,EAAIC,EAAK,GAAG,CAC3BwH,EAAO,EACPE,EAAqB3H,EACrBA,GAAK,EAEL,GACEuH,EAAOxH,EAAMC,GACbA,IAEa,MAATuH,GAAyB,MAATA,EASP,OAATA,EAKU,OAAVG,IAIS,MAATH,EACFE,IACkB,MAATF,GACTE,KAXAzH,IATc,OAAV0H,EACFA,EAAQH,EACCG,IAAUH,IACnBG,EAAQ,YAmBLD,EAAO,GAAKzH,EAAIC,GAEzB,GAAa,IAATwH,EAgBF,MAfA9I,EAAQA,GAAS,GACqB,OAAlCoB,EAAM4H,EAAqB,IAAiD,OAAlC5H,EAAM4H,EAAqB,IACvEhJ,EAAMiJ,GAAa7H,EAAM8H,UAAUL,EAAKG,EAAqB,GAAK5H,EAAM8H,UAAUF,EAAoB3H,GAEtGrB,IADAiJ,GACmBtK,KAAKwI,sBACxB8B,MAEAjJ,EAAMiJ,GAAa7H,EAAM8H,UAAUL,EAAKG,GAExChJ,IADAiJ,GACmBtK,KAAKgF,OAAOkB,MAAMzD,EAAM8H,UAAUF,EAAqB,EAAG3H,EAAI,IACjF4H,KAEFJ,EAAMxH,EACNA,EAAID,EAAMuH,QAAQ,KAAMtH,GAM5B,OAAkB,IAAd4H,EACK,MAGTjJ,EAAMiJ,GAAa7H,EAAM+H,OAAON,GACzB7I,IAGF4G,EAtMkD,CAuMzD,KAAkBrI,EAAQqB,OAAS,CAAC,IAAQ,IAAiB8D,EAAmBjF,GAAeD,GAE1F,SAAS4K,EAAUC,GACxBA,EAAOC,UAAUC,kBAAkB,IAAiB3C,GACpDyC,EAAOC,UAAUE,cAAc,IAAiB5C","file":"npm.aurelia-templating-binding.944271f7667b30dacaa3.js","sourcesContent":["var _class, _temp, _dec, _class2, _dec2, _class3, _class4, _temp2, _class5, _temp3;\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\n\n\nimport * as LogManager from 'aurelia-logging';\nimport { camelCase, SVGAnalyzer, bindingMode, connectable, enqueueBindingConnect, sourceContext, Parser, ObserverLocator, EventManager, ListenerExpression, BindingExpression, CallExpression, delegationStrategy, NameExpression, LiteralString } from 'aurelia-binding';\nimport { BehaviorInstruction, BindingLanguage } from 'aurelia-templating';\n\nexport var AttributeMap = (_temp = _class = function () {\n function AttributeMap(svg) {\n \n\n this.elements = Object.create(null);\n this.allElements = Object.create(null);\n\n this.svg = svg;\n\n this.registerUniversal('accesskey', 'accessKey');\n this.registerUniversal('contenteditable', 'contentEditable');\n this.registerUniversal('tabindex', 'tabIndex');\n this.registerUniversal('textcontent', 'textContent');\n this.registerUniversal('innerhtml', 'innerHTML');\n this.registerUniversal('scrolltop', 'scrollTop');\n this.registerUniversal('scrollleft', 'scrollLeft');\n this.registerUniversal('readonly', 'readOnly');\n\n this.register('label', 'for', 'htmlFor');\n\n this.register('img', 'usemap', 'useMap');\n\n this.register('input', 'maxlength', 'maxLength');\n this.register('input', 'minlength', 'minLength');\n this.register('input', 'formaction', 'formAction');\n this.register('input', 'formenctype', 'formEncType');\n this.register('input', 'formmethod', 'formMethod');\n this.register('input', 'formnovalidate', 'formNoValidate');\n this.register('input', 'formtarget', 'formTarget');\n\n this.register('textarea', 'maxlength', 'maxLength');\n\n this.register('td', 'rowspan', 'rowSpan');\n this.register('td', 'colspan', 'colSpan');\n this.register('th', 'rowspan', 'rowSpan');\n this.register('th', 'colspan', 'colSpan');\n }\n\n AttributeMap.prototype.register = function register(elementName, attributeName, propertyName) {\n elementName = elementName.toLowerCase();\n attributeName = attributeName.toLowerCase();\n var element = this.elements[elementName] = this.elements[elementName] || Object.create(null);\n element[attributeName] = propertyName;\n };\n\n AttributeMap.prototype.registerUniversal = function registerUniversal(attributeName, propertyName) {\n attributeName = attributeName.toLowerCase();\n this.allElements[attributeName] = propertyName;\n };\n\n AttributeMap.prototype.map = function map(elementName, attributeName) {\n if (this.svg.isStandardSvgAttribute(elementName, attributeName)) {\n return attributeName;\n }\n elementName = elementName.toLowerCase();\n attributeName = attributeName.toLowerCase();\n var element = this.elements[elementName];\n if (element !== undefined && attributeName in element) {\n return element[attributeName];\n }\n if (attributeName in this.allElements) {\n return this.allElements[attributeName];\n }\n\n if (/(?:^data-)|(?:^aria-)|:/.test(attributeName)) {\n return attributeName;\n }\n return camelCase(attributeName);\n };\n\n return AttributeMap;\n}(), _class.inject = [SVGAnalyzer], _temp);\n\nexport var InterpolationBindingExpression = function () {\n function InterpolationBindingExpression(observerLocator, targetProperty, parts, mode, lookupFunctions, attribute) {\n \n\n this.observerLocator = observerLocator;\n this.targetProperty = targetProperty;\n this.parts = parts;\n this.mode = mode;\n this.lookupFunctions = lookupFunctions;\n this.attribute = this.attrToRemove = attribute;\n this.discrete = false;\n }\n\n InterpolationBindingExpression.prototype.createBinding = function createBinding(target) {\n if (this.parts.length === 3) {\n return new ChildInterpolationBinding(target, this.observerLocator, this.parts[1], this.mode, this.lookupFunctions, this.targetProperty, this.parts[0], this.parts[2]);\n }\n return new InterpolationBinding(this.observerLocator, this.parts, target, this.targetProperty, this.mode, this.lookupFunctions);\n };\n\n return InterpolationBindingExpression;\n}();\n\nfunction validateTarget(target, propertyName) {\n if (propertyName === 'style') {\n LogManager.getLogger('templating-binding').info('Internet Explorer does not support interpolation in \"style\" attributes. Use the style attribute\\'s alias, \"css\" instead.');\n } else if (target.parentElement && target.parentElement.nodeName === 'TEXTAREA' && propertyName === 'textContent') {\n throw new Error('Interpolation binding cannot be used in the content of a textarea element. Use instead.');\n }\n}\n\nexport var InterpolationBinding = function () {\n function InterpolationBinding(observerLocator, parts, target, targetProperty, mode, lookupFunctions) {\n \n\n validateTarget(target, targetProperty);\n this.observerLocator = observerLocator;\n this.parts = parts;\n this.target = target;\n this.targetProperty = targetProperty;\n this.targetAccessor = observerLocator.getAccessor(target, targetProperty);\n this.mode = mode;\n this.lookupFunctions = lookupFunctions;\n }\n\n InterpolationBinding.prototype.interpolate = function interpolate() {\n if (this.isBound) {\n var value = '';\n var parts = this.parts;\n for (var i = 0, ii = parts.length; i < ii; i++) {\n value += i % 2 === 0 ? parts[i] : this['childBinding' + i].value;\n }\n this.targetAccessor.setValue(value, this.target, this.targetProperty);\n }\n };\n\n InterpolationBinding.prototype.updateOneTimeBindings = function updateOneTimeBindings() {\n for (var i = 1, ii = this.parts.length; i < ii; i += 2) {\n var child = this['childBinding' + i];\n if (child.mode === bindingMode.oneTime) {\n child.call();\n }\n }\n };\n\n InterpolationBinding.prototype.bind = function bind(source) {\n if (this.isBound) {\n if (this.source === source) {\n return;\n }\n this.unbind();\n }\n this.source = source;\n\n var parts = this.parts;\n for (var i = 1, ii = parts.length; i < ii; i += 2) {\n var binding = new ChildInterpolationBinding(this, this.observerLocator, parts[i], this.mode, this.lookupFunctions);\n binding.bind(source);\n this['childBinding' + i] = binding;\n }\n\n this.isBound = true;\n this.interpolate();\n };\n\n InterpolationBinding.prototype.unbind = function unbind() {\n if (!this.isBound) {\n return;\n }\n this.isBound = false;\n this.source = null;\n var parts = this.parts;\n for (var i = 1, ii = parts.length; i < ii; i += 2) {\n var name = 'childBinding' + i;\n this[name].unbind();\n }\n };\n\n return InterpolationBinding;\n}();\n\nexport var ChildInterpolationBinding = (_dec = connectable(), _dec(_class2 = function () {\n function ChildInterpolationBinding(target, observerLocator, sourceExpression, mode, lookupFunctions, targetProperty, left, right) {\n \n\n if (target instanceof InterpolationBinding) {\n this.parent = target;\n } else {\n validateTarget(target, targetProperty);\n this.target = target;\n this.targetProperty = targetProperty;\n this.targetAccessor = observerLocator.getAccessor(target, targetProperty);\n }\n this.observerLocator = observerLocator;\n this.sourceExpression = sourceExpression;\n this.mode = mode;\n this.lookupFunctions = lookupFunctions;\n this.left = left;\n this.right = right;\n }\n\n ChildInterpolationBinding.prototype.updateTarget = function updateTarget(value) {\n value = value === null || value === undefined ? '' : value.toString();\n if (value !== this.value) {\n this.value = value;\n if (this.parent) {\n this.parent.interpolate();\n } else {\n this.targetAccessor.setValue(this.left + value + this.right, this.target, this.targetProperty);\n }\n }\n };\n\n ChildInterpolationBinding.prototype.call = function call() {\n if (!this.isBound) {\n return;\n }\n\n this.rawValue = this.sourceExpression.evaluate(this.source, this.lookupFunctions);\n this.updateTarget(this.rawValue);\n\n if (this.mode !== bindingMode.oneTime) {\n this._version++;\n this.sourceExpression.connect(this, this.source);\n if (this.rawValue instanceof Array) {\n this.observeArray(this.rawValue);\n }\n this.unobserve(false);\n }\n };\n\n ChildInterpolationBinding.prototype.bind = function bind(source) {\n if (this.isBound) {\n if (this.source === source) {\n return;\n }\n this.unbind();\n }\n this.isBound = true;\n this.source = source;\n\n var sourceExpression = this.sourceExpression;\n if (sourceExpression.bind) {\n sourceExpression.bind(this, source, this.lookupFunctions);\n }\n\n this.rawValue = sourceExpression.evaluate(source, this.lookupFunctions);\n this.updateTarget(this.rawValue);\n\n if (this.mode === bindingMode.oneWay) {\n enqueueBindingConnect(this);\n }\n };\n\n ChildInterpolationBinding.prototype.unbind = function unbind() {\n if (!this.isBound) {\n return;\n }\n this.isBound = false;\n var sourceExpression = this.sourceExpression;\n if (sourceExpression.unbind) {\n sourceExpression.unbind(this, this.source);\n }\n this.source = null;\n this.value = null;\n this.rawValue = null;\n this.unobserve(true);\n };\n\n ChildInterpolationBinding.prototype.connect = function connect(evaluate) {\n if (!this.isBound) {\n return;\n }\n if (evaluate) {\n this.rawValue = this.sourceExpression.evaluate(this.source, this.lookupFunctions);\n this.updateTarget(this.rawValue);\n }\n this.sourceExpression.connect(this, this.source);\n if (this.rawValue instanceof Array) {\n this.observeArray(this.rawValue);\n }\n };\n\n return ChildInterpolationBinding;\n}()) || _class2);\n\nexport var LetExpression = function () {\n function LetExpression(observerLocator, targetProperty, sourceExpression, lookupFunctions, toBindingContext) {\n \n\n this.observerLocator = observerLocator;\n this.sourceExpression = sourceExpression;\n this.targetProperty = targetProperty;\n this.lookupFunctions = lookupFunctions;\n this.toBindingContext = toBindingContext;\n }\n\n LetExpression.prototype.createBinding = function createBinding() {\n return new LetBinding(this.observerLocator, this.sourceExpression, this.targetProperty, this.lookupFunctions, this.toBindingContext);\n };\n\n return LetExpression;\n}();\n\nexport var LetBinding = (_dec2 = connectable(), _dec2(_class3 = function () {\n function LetBinding(observerLocator, sourceExpression, targetProperty, lookupFunctions, toBindingContext) {\n \n\n this.observerLocator = observerLocator;\n this.sourceExpression = sourceExpression;\n this.targetProperty = targetProperty;\n this.lookupFunctions = lookupFunctions;\n this.source = null;\n this.target = null;\n this.toBindingContext = toBindingContext;\n }\n\n LetBinding.prototype.updateTarget = function updateTarget() {\n var value = this.sourceExpression.evaluate(this.source, this.lookupFunctions);\n this.target[this.targetProperty] = value;\n };\n\n LetBinding.prototype.call = function call(context) {\n if (!this.isBound) {\n return;\n }\n if (context === sourceContext) {\n this.updateTarget();\n return;\n }\n throw new Error('Unexpected call context ' + context);\n };\n\n LetBinding.prototype.bind = function bind(source) {\n if (this.isBound) {\n if (this.source === source) {\n return;\n }\n this.unbind();\n }\n\n this.isBound = true;\n this.source = source;\n this.target = this.toBindingContext ? source.bindingContext : source.overrideContext;\n\n if (this.sourceExpression.bind) {\n this.sourceExpression.bind(this, source, this.lookupFunctions);\n }\n\n enqueueBindingConnect(this);\n };\n\n LetBinding.prototype.unbind = function unbind() {\n if (!this.isBound) {\n return;\n }\n this.isBound = false;\n if (this.sourceExpression.unbind) {\n this.sourceExpression.unbind(this, this.source);\n }\n this.source = null;\n this.target = null;\n this.unobserve(true);\n };\n\n LetBinding.prototype.connect = function connect() {\n if (!this.isBound) {\n return;\n }\n this.updateTarget();\n this.sourceExpression.connect(this, this.source);\n };\n\n return LetBinding;\n}()) || _class3);\n\nexport var LetInterpolationBindingExpression = function () {\n function LetInterpolationBindingExpression(observerLocator, targetProperty, parts, lookupFunctions, toBindingContext) {\n \n\n this.observerLocator = observerLocator;\n this.targetProperty = targetProperty;\n this.parts = parts;\n this.lookupFunctions = lookupFunctions;\n this.toBindingContext = toBindingContext;\n }\n\n LetInterpolationBindingExpression.prototype.createBinding = function createBinding() {\n return new LetInterpolationBinding(this.observerLocator, this.targetProperty, this.parts, this.lookupFunctions, this.toBindingContext);\n };\n\n return LetInterpolationBindingExpression;\n}();\n\nexport var LetInterpolationBinding = function () {\n function LetInterpolationBinding(observerLocator, targetProperty, parts, lookupFunctions, toBindingContext) {\n \n\n this.observerLocator = observerLocator;\n this.parts = parts;\n this.targetProperty = targetProperty;\n this.lookupFunctions = lookupFunctions;\n this.toBindingContext = toBindingContext;\n this.target = null;\n }\n\n LetInterpolationBinding.prototype.bind = function bind(source) {\n if (this.isBound) {\n if (this.source === source) {\n return;\n }\n this.unbind();\n }\n\n this.isBound = true;\n this.source = source;\n this.target = this.toBindingContext ? source.bindingContext : source.overrideContext;\n\n this.interpolationBinding = this.createInterpolationBinding();\n this.interpolationBinding.bind(source);\n };\n\n LetInterpolationBinding.prototype.unbind = function unbind() {\n if (!this.isBound) {\n return;\n }\n this.isBound = false;\n this.source = null;\n this.target = null;\n this.interpolationBinding.unbind();\n this.interpolationBinding = null;\n };\n\n LetInterpolationBinding.prototype.createInterpolationBinding = function createInterpolationBinding() {\n if (this.parts.length === 3) {\n return new ChildInterpolationBinding(this.target, this.observerLocator, this.parts[1], bindingMode.oneWay, this.lookupFunctions, this.targetProperty, this.parts[0], this.parts[2]);\n }\n return new InterpolationBinding(this.observerLocator, this.parts, this.target, this.targetProperty, bindingMode.oneWay, this.lookupFunctions);\n };\n\n return LetInterpolationBinding;\n}();\n\nexport var SyntaxInterpreter = (_temp2 = _class4 = function () {\n function SyntaxInterpreter(parser, observerLocator, eventManager, attributeMap) {\n \n\n this.parser = parser;\n this.observerLocator = observerLocator;\n this.eventManager = eventManager;\n this.attributeMap = attributeMap;\n }\n\n SyntaxInterpreter.prototype.interpret = function interpret(resources, element, info, existingInstruction, context) {\n if (info.command in this) {\n return this[info.command](resources, element, info, existingInstruction, context);\n }\n\n return this.handleUnknownCommand(resources, element, info, existingInstruction, context);\n };\n\n SyntaxInterpreter.prototype.handleUnknownCommand = function handleUnknownCommand(resources, element, info, existingInstruction, context) {\n LogManager.getLogger('templating-binding').warn('Unknown binding command.', info);\n return existingInstruction;\n };\n\n SyntaxInterpreter.prototype.determineDefaultBindingMode = function determineDefaultBindingMode(element, attrName, context) {\n var tagName = element.tagName.toLowerCase();\n\n if (tagName === 'input' && (attrName === 'value' || attrName === 'files') && element.type !== 'checkbox' && element.type !== 'radio' || tagName === 'input' && attrName === 'checked' && (element.type === 'checkbox' || element.type === 'radio') || (tagName === 'textarea' || tagName === 'select') && attrName === 'value' || (attrName === 'textcontent' || attrName === 'innerhtml') && element.contentEditable === 'true' || attrName === 'scrolltop' || attrName === 'scrollleft') {\n return bindingMode.twoWay;\n }\n\n if (context && attrName in context.attributes && context.attributes[attrName] && context.attributes[attrName].defaultBindingMode >= bindingMode.oneTime) {\n return context.attributes[attrName].defaultBindingMode;\n }\n\n return bindingMode.oneWay;\n };\n\n SyntaxInterpreter.prototype.bind = function bind(resources, element, info, existingInstruction, context) {\n var instruction = existingInstruction || BehaviorInstruction.attribute(info.attrName);\n\n instruction.attributes[info.attrName] = new BindingExpression(this.observerLocator, this.attributeMap.map(element.tagName, info.attrName), this.parser.parse(info.attrValue), info.defaultBindingMode === undefined || info.defaultBindingMode === null ? this.determineDefaultBindingMode(element, info.attrName, context) : info.defaultBindingMode, resources.lookupFunctions);\n\n return instruction;\n };\n\n SyntaxInterpreter.prototype.trigger = function trigger(resources, element, info) {\n return new ListenerExpression(this.eventManager, info.attrName, this.parser.parse(info.attrValue), delegationStrategy.none, true, resources.lookupFunctions);\n };\n\n SyntaxInterpreter.prototype.capture = function capture(resources, element, info) {\n return new ListenerExpression(this.eventManager, info.attrName, this.parser.parse(info.attrValue), delegationStrategy.capturing, true, resources.lookupFunctions);\n };\n\n SyntaxInterpreter.prototype.delegate = function delegate(resources, element, info) {\n return new ListenerExpression(this.eventManager, info.attrName, this.parser.parse(info.attrValue), delegationStrategy.bubbling, true, resources.lookupFunctions);\n };\n\n SyntaxInterpreter.prototype.call = function call(resources, element, info, existingInstruction) {\n var instruction = existingInstruction || BehaviorInstruction.attribute(info.attrName);\n\n instruction.attributes[info.attrName] = new CallExpression(this.observerLocator, info.attrName, this.parser.parse(info.attrValue), resources.lookupFunctions);\n\n return instruction;\n };\n\n SyntaxInterpreter.prototype.options = function options(resources, element, info, existingInstruction, context) {\n var instruction = existingInstruction || BehaviorInstruction.attribute(info.attrName);\n var attrValue = info.attrValue;\n var language = this.language;\n var name = null;\n var target = '';\n var current = void 0;\n var i = void 0;\n var ii = void 0;\n var inString = false;\n var inEscape = false;\n var foundName = false;\n\n for (i = 0, ii = attrValue.length; i < ii; ++i) {\n current = attrValue[i];\n\n if (current === ';' && !inString) {\n if (!foundName) {\n name = this._getPrimaryPropertyName(resources, context);\n }\n info = language.inspectAttribute(resources, '?', name, target.trim());\n language.createAttributeInstruction(resources, element, info, instruction, context);\n\n if (!instruction.attributes[info.attrName]) {\n instruction.attributes[info.attrName] = info.attrValue;\n }\n\n target = '';\n name = null;\n } else if (current === ':' && name === null) {\n foundName = true;\n name = target.trim();\n target = '';\n } else if (current === '\\\\') {\n target += current;\n inEscape = true;\n continue;\n } else {\n target += current;\n\n if (name !== null && inEscape === false && current === '\\'') {\n inString = !inString;\n }\n }\n\n inEscape = false;\n }\n\n if (!foundName) {\n name = this._getPrimaryPropertyName(resources, context);\n }\n\n if (name !== null) {\n info = language.inspectAttribute(resources, '?', name, target.trim());\n language.createAttributeInstruction(resources, element, info, instruction, context);\n\n if (!instruction.attributes[info.attrName]) {\n instruction.attributes[info.attrName] = info.attrValue;\n }\n }\n\n return instruction;\n };\n\n SyntaxInterpreter.prototype._getPrimaryPropertyName = function _getPrimaryPropertyName(resources, context) {\n var type = resources.getAttribute(context.attributeName);\n if (type && type.primaryProperty) {\n return type.primaryProperty.attribute;\n }\n return null;\n };\n\n SyntaxInterpreter.prototype['for'] = function _for(resources, element, info, existingInstruction) {\n var parts = void 0;\n var keyValue = void 0;\n var instruction = void 0;\n var attrValue = void 0;\n var isDestructuring = void 0;\n\n attrValue = info.attrValue;\n isDestructuring = attrValue.match(/^ *[[].+[\\]]/);\n parts = isDestructuring ? attrValue.split('of ') : attrValue.split(' of ');\n\n if (parts.length !== 2) {\n throw new Error('Incorrect syntax for \"for\". The form is: \"$local of $items\" or \"[$key, $value] of $items\".');\n }\n\n instruction = existingInstruction || BehaviorInstruction.attribute(info.attrName);\n\n if (isDestructuring) {\n keyValue = parts[0].replace(/[[\\]]/g, '').replace(/,/g, ' ').replace(/\\s+/g, ' ').trim().split(' ');\n instruction.attributes.key = keyValue[0];\n instruction.attributes.value = keyValue[1];\n } else {\n instruction.attributes.local = parts[0];\n }\n\n instruction.attributes.items = new BindingExpression(this.observerLocator, 'items', this.parser.parse(parts[1]), bindingMode.oneWay, resources.lookupFunctions);\n\n return instruction;\n };\n\n SyntaxInterpreter.prototype['two-way'] = function twoWay(resources, element, info, existingInstruction) {\n var instruction = existingInstruction || BehaviorInstruction.attribute(info.attrName);\n\n instruction.attributes[info.attrName] = new BindingExpression(this.observerLocator, this.attributeMap.map(element.tagName, info.attrName), this.parser.parse(info.attrValue), bindingMode.twoWay, resources.lookupFunctions);\n\n return instruction;\n };\n\n SyntaxInterpreter.prototype['to-view'] = function toView(resources, element, info, existingInstruction) {\n var instruction = existingInstruction || BehaviorInstruction.attribute(info.attrName);\n\n instruction.attributes[info.attrName] = new BindingExpression(this.observerLocator, this.attributeMap.map(element.tagName, info.attrName), this.parser.parse(info.attrValue), bindingMode.toView, resources.lookupFunctions);\n\n return instruction;\n };\n\n SyntaxInterpreter.prototype['from-view'] = function fromView(resources, element, info, existingInstruction) {\n var instruction = existingInstruction || BehaviorInstruction.attribute(info.attrName);\n\n instruction.attributes[info.attrName] = new BindingExpression(this.observerLocator, this.attributeMap.map(element.tagName, info.attrName), this.parser.parse(info.attrValue), bindingMode.fromView, resources.lookupFunctions);\n\n return instruction;\n };\n\n SyntaxInterpreter.prototype['one-time'] = function oneTime(resources, element, info, existingInstruction) {\n var instruction = existingInstruction || BehaviorInstruction.attribute(info.attrName);\n\n instruction.attributes[info.attrName] = new BindingExpression(this.observerLocator, this.attributeMap.map(element.tagName, info.attrName), this.parser.parse(info.attrValue), bindingMode.oneTime, resources.lookupFunctions);\n\n return instruction;\n };\n\n return SyntaxInterpreter;\n}(), _class4.inject = [Parser, ObserverLocator, EventManager, AttributeMap], _temp2);\n\nSyntaxInterpreter.prototype['one-way'] = SyntaxInterpreter.prototype['to-view'];\n\nvar info = {};\n\nexport var TemplatingBindingLanguage = (_temp3 = _class5 = function (_BindingLanguage) {\n _inherits(TemplatingBindingLanguage, _BindingLanguage);\n\n function TemplatingBindingLanguage(parser, observerLocator, syntaxInterpreter, attributeMap) {\n \n\n var _this = _possibleConstructorReturn(this, _BindingLanguage.call(this));\n\n _this.parser = parser;\n _this.observerLocator = observerLocator;\n _this.syntaxInterpreter = syntaxInterpreter;\n _this.emptyStringExpression = _this.parser.parse('\\'\\'');\n syntaxInterpreter.language = _this;\n _this.attributeMap = attributeMap;\n _this.toBindingContextAttr = 'to-binding-context';\n return _this;\n }\n\n TemplatingBindingLanguage.prototype.inspectAttribute = function inspectAttribute(resources, elementName, attrName, attrValue) {\n var parts = attrName.split('.');\n\n info.defaultBindingMode = null;\n\n if (parts.length === 2) {\n info.attrName = parts[0].trim();\n info.attrValue = attrValue;\n info.command = parts[1].trim();\n\n if (info.command === 'ref') {\n info.expression = new NameExpression(this.parser.parse(attrValue), info.attrName, resources.lookupFunctions);\n info.command = null;\n info.attrName = 'ref';\n } else {\n info.expression = null;\n }\n } else if (attrName === 'ref') {\n info.attrName = attrName;\n info.attrValue = attrValue;\n info.command = null;\n info.expression = new NameExpression(this.parser.parse(attrValue), 'element', resources.lookupFunctions);\n } else {\n info.attrName = attrName;\n info.attrValue = attrValue;\n info.command = null;\n var interpolationParts = this.parseInterpolation(resources, attrValue);\n if (interpolationParts === null) {\n info.expression = null;\n } else {\n info.expression = new InterpolationBindingExpression(this.observerLocator, this.attributeMap.map(elementName, attrName), interpolationParts, bindingMode.oneWay, resources.lookupFunctions, attrName);\n }\n }\n\n return info;\n };\n\n TemplatingBindingLanguage.prototype.createAttributeInstruction = function createAttributeInstruction(resources, element, theInfo, existingInstruction, context) {\n var instruction = void 0;\n\n if (theInfo.expression) {\n if (theInfo.attrName === 'ref') {\n return theInfo.expression;\n }\n\n instruction = existingInstruction || BehaviorInstruction.attribute(theInfo.attrName);\n instruction.attributes[theInfo.attrName] = theInfo.expression;\n } else if (theInfo.command) {\n instruction = this.syntaxInterpreter.interpret(resources, element, theInfo, existingInstruction, context);\n }\n\n return instruction;\n };\n\n TemplatingBindingLanguage.prototype.createLetExpressions = function createLetExpressions(resources, letElement) {\n var expressions = [];\n var attributes = letElement.attributes;\n\n var attr = void 0;\n\n var parts = void 0;\n var attrName = void 0;\n var attrValue = void 0;\n var command = void 0;\n var toBindingContextAttr = this.toBindingContextAttr;\n var toBindingContext = letElement.hasAttribute(toBindingContextAttr);\n for (var i = 0, ii = attributes.length; ii > i; ++i) {\n attr = attributes[i];\n attrName = attr.name;\n attrValue = attr.nodeValue;\n parts = attrName.split('.');\n\n if (attrName === toBindingContextAttr) {\n continue;\n }\n\n if (parts.length === 2) {\n command = parts[1];\n if (command !== 'bind') {\n LogManager.getLogger('templating-binding-language').warn('Detected invalid let command. Expected \"' + parts[0] + '.bind\", given \"' + attrName + '\"');\n continue;\n }\n expressions.push(new LetExpression(this.observerLocator, camelCase(parts[0]), this.parser.parse(attrValue), resources.lookupFunctions, toBindingContext));\n } else {\n attrName = camelCase(attrName);\n parts = this.parseInterpolation(resources, attrValue);\n if (parts === null) {\n LogManager.getLogger('templating-binding-language').warn('Detected string literal in let bindings. Did you mean \"' + attrName + '.bind=' + attrValue + '\" or \"' + attrName + '=${' + attrValue + '}\" ?');\n }\n if (parts) {\n expressions.push(new LetInterpolationBindingExpression(this.observerLocator, attrName, parts, resources.lookupFunctions, toBindingContext));\n } else {\n expressions.push(new LetExpression(this.observerLocator, attrName, new LiteralString(attrValue), resources.lookupFunctions, toBindingContext));\n }\n }\n }\n return expressions;\n };\n\n TemplatingBindingLanguage.prototype.inspectTextContent = function inspectTextContent(resources, value) {\n var parts = this.parseInterpolation(resources, value);\n if (parts === null) {\n return null;\n }\n return new InterpolationBindingExpression(this.observerLocator, 'textContent', parts, bindingMode.oneWay, resources.lookupFunctions, 'textContent');\n };\n\n TemplatingBindingLanguage.prototype.parseInterpolation = function parseInterpolation(resources, value) {\n var i = value.indexOf('${', 0);\n var ii = value.length;\n var char = void 0;\n var pos = 0;\n var open = 0;\n var quote = null;\n var interpolationStart = void 0;\n var parts = void 0;\n var partIndex = 0;\n\n while (i >= 0 && i < ii - 2) {\n open = 1;\n interpolationStart = i;\n i += 2;\n\n do {\n char = value[i];\n i++;\n\n if (char === \"'\" || char === '\"') {\n if (quote === null) {\n quote = char;\n } else if (quote === char) {\n quote = null;\n }\n continue;\n }\n\n if (char === '\\\\') {\n i++;\n continue;\n }\n\n if (quote !== null) {\n continue;\n }\n\n if (char === '{') {\n open++;\n } else if (char === '}') {\n open--;\n }\n } while (open > 0 && i < ii);\n\n if (open === 0) {\n parts = parts || [];\n if (value[interpolationStart - 1] === '\\\\' && value[interpolationStart - 2] !== '\\\\') {\n parts[partIndex] = value.substring(pos, interpolationStart - 1) + value.substring(interpolationStart, i);\n partIndex++;\n parts[partIndex] = this.emptyStringExpression;\n partIndex++;\n } else {\n parts[partIndex] = value.substring(pos, interpolationStart);\n partIndex++;\n parts[partIndex] = this.parser.parse(value.substring(interpolationStart + 2, i - 1));\n partIndex++;\n }\n pos = i;\n i = value.indexOf('${', i);\n } else {\n break;\n }\n }\n\n if (partIndex === 0) {\n return null;\n }\n\n parts[partIndex] = value.substr(pos);\n return parts;\n };\n\n return TemplatingBindingLanguage;\n}(BindingLanguage), _class5.inject = [Parser, ObserverLocator, SyntaxInterpreter, AttributeMap], _temp3);\n\nexport function configure(config) {\n config.container.registerSingleton(BindingLanguage, TemplatingBindingLanguage);\n config.container.registerAlias(BindingLanguage, TemplatingBindingLanguage);\n}"],"sourceRoot":""}