@danielkalen/simplybind
Version:
Magically simple, framework-less one-way/two-way data binding for frontend/backend in ~5kb.
2 lines (1 loc) • 18.4 kB
JavaScript
!function(){var x,U=0,C="push pop shift unshift splice reverse sort".split(" "),V={},p={},K=["{{","}}"],r=Object.create({silent:!1},{placeholder:{get:function(){return K},set:function(a){g.iA(a)&&2===a.length&&(K=a,L())}}}),y={delay:!1,throttle:!1,simpleSelector:!1,promiseTransforms:!1,dispatchEvents:!1,sendArrayCopies:!1,updateEvenIfSame:!1,updateOnBind:!0},t=Object.defineProperty,D=Object.getOwnPropertyDescriptor,E=null,F=function(){if(!E){var a=E=document.createEvent("Event");a.initEvent("change",!0,!1),a._sb=!0}return E},W=!("className"in Element.prototype&&D(Element.prototype,"className").get),X="innerWidth innerHeight outerWidth outerHeight scrollX scrollY pageXOffset pageYOffset screenX screenY screenLeft screenTop".split(" "),Y=function(a,b){return this.uAS(b||this)},Z=function(){return""+ ++U},n=function(){return Object.create(null)},u=function(a,b){return function(c,d,e){return m(c,d,e,a,b)}},aa=function(a,b){return a.sU||(a.sU=new v(function(){return b?a.sV(a.fDV(),a,!0):a.uAS(a)},"Func",{}))},h=function(a,b){return a&&-1!==a.indexOf(b)},g={iD:function(a){return void 0!==a},iA:function(a){return a instanceof Array},iO:function(a){return"object"==typeof a&&a},iS:function(a){return"string"==typeof a},iN:function(a){return"number"==typeof a},iF:function(a){return"function"==typeof a},iBI:function(a){return a instanceof z},iB:function(a){return a instanceof v},isI:function(a){return g.iO(a)&&g.iN(a.length)},DM:function(a){return a.nodeName&&1===a.nodeType},dI:function(a){return a=a.nodeName,"INPUT"===a||"TEXTAREA"===a||"SELECT"===a},dR:function(a){return"radio"===a.type},dC:function(a){return"checkbox"===a.type},eC:function(a){return a instanceof NodeList||a instanceof HTMLCollection||window.jQuery&&a instanceof jQuery},eAS:function(a){var b=a[0].type;return[].filter.call(a,function(a){return a.type===b}).length===a.length},dN:function(a){return g.DM(a)||a===window||a===document}},M=function(a,b,c){var d;return(d=D(a,b))?(c&&(d.configurable=!0),d):(a=Object.getPrototypeOf(a))?M(a,b,!0):void 0},A=function(a,b,c){var d;if(a.OD||(a.OD=M(b,a.pr)),c)C.forEach(function(c){return t(b,c,{configurable:!0,value:function(){var d=Array.prototype[c].apply(b,arguments);return a.uAS(a),d}})});else if("Proxy"===a.type){var e=a.oR=a.value;if(a.value={result:null,args:null},g.iF(e)){var f=[].slice,k=d=function(){var c=f.call(arguments);return a.value.args=c=a.tfS?a.tfS(c):c,a.value.result=c=e.apply(b,c),a.uAS(a),c};t(b,a.pr,{configurable:a.isL=!0,get:function(){return k},set:function(b){g.iF(b)?b!==e&&(b!==d&&(e=a.oR=b),k!==d&&(k=d)):k=b}})}}else if(!(h(a.type,"DOM")||a.object===window&&h(X,a.pr))){c=a.OD||V,c.get&&(a.OG=c.get.bind(b)),c.set&&(a.OS=c.set.bind(b));var l=(l=c.configurable)&&b.constructor!==CSSStyleDeclaration;if(W&&a.DM&&a.pr in b.cloneNode(!1)&&(a.OD=l=!1,a.isL=!0,a.OG=function(){return a.object[a.pr]},a.OS=function(b){return a.object[a.pr]=b}),l){l="Array"===a.type;var q=!a.OS&&!l;t(b,a.pr,{configurable:a.isL=!0,enumerable:c.enumerable,get:a.OG||function(){return a.value},set:function(b){a.sV(b,a,q)}}),l&&A(a,b[a.pr],!0)}}},G=function(a,b,c){if(c){var d=[];for(a=0,c=C.length;a<c;a++){var e=C[a];d.push(delete b[e])}return d}return c=a.OD,c.set||c.get||(c.value=a.oR||a.value),t(b,a.pr,c)},ba=function(a){var b,c=n();for(b in a)c[b]=a[b];return c},H=function(a,b){var c,d=Object.keys(b),e=0;for(c=d.length;e<c;e++){var f=d[e];a[f]=b[f]}},N={get:function(a,b,c,d){return b?p[a._sb_ID]:d&&a[0]._sb_map&&(b=p[a[0]._sb_map[c]],b.gB)?b.gB:a._sb_map&&a._sb_map[c]?p[a._sb_map[c]]:void 0},set:function(a,b){if(b)t(a.object,"_sb_ID",{configurable:!0,value:a.ID});else{var c=a.se;if(a.object._sb_map)a.object._sb_map[c]=a.ID;else{var d={};d[c]=a.ID,t(a.object,"_sb_map",{configurable:!0,value:d})}}}},O=/[.*+?^${}()|[\]\\]/g,I=x=null,L=function(){var a=r.placeholder[0].replace(O,"\\$&"),b=r.placeholder[1].replace(O,"\\$&"),c="[^"+b+"]+";I=new RegExp(a+"("+c+")"+b,"g"),x=new RegExp(""+a+c+b,"g")};L();var ca=function(a,b,c){var d,e,f="",k=d=0;for(e=a.length;d<e;k=++d){var g=a[k];f+=g,c[k]&&(f+=b[c[k]])}return f},P=function(a,b,c){null==a[c]&&(a[c]=[]),a[c].push(b)},Q=function(a,b){var c,d,e,f=Array.prototype.slice.call(a.childNodes),k=0;for(d=f.length;k<d;k++){var g=f[k];if(3!==g.nodeType)Q(g,b);else if(g.textContent.match(x)){var q=g.textContent.split(I);if(3===q.length&&""===q[0]+q[2])P(b,g,q[1]);else{var h=document.createDocumentFragment(),m=c=0;for(e=q.length;c<e;m=++c){var n=q[m],p=h.appendChild(document.createTextNode(n));m%2&&P(b,p,n)}g.parentNode.replaceChild(h,g)}}}},B=function(a){throw Error("SimplyBind: "+(R[a]||a))},w=function(a,b){if(!r.silent){var c=da(b),d=R[a];console.warn("SimplyBind: "+(d+("\n\n"+c)))}},ea=function(a){B("Invalid argument/s ("+a+")",!0)},da=function(a){return(Error().stack||"").split("\n").slice(a+3).join("\n")},R={erIP:"SimplyBind() and .to() only accept a function, an array, a bound object, a string, or a number.",erFN:"Only functions are allowed for .transform/.condition/All()",erEV:"Invalid argument number in .ofEvent()",emptyList:"Empty collection provided",erOD:"You can only pass a single DOM element to a binding",erMX:"'checked' of Mixed list of element cannot be bound"},m=function(a,b,c,d,e){return(a||0===a)&&(g.iS(a)||g.iN(a)||g.iF(a)||a instanceof Array)||g.iBI(a)||B("erIP"),!g.iO(a)||a instanceof Array?(b=new z(b),b.so=c,b.IS=d,b.cC=e,a=g.iF(a)?b.sS(a,!0):b.sP(a)):a=e?e(a):a.sC(),a};m.version="1.15.5",m.settings=r,m.defaultOptions=y,m.unBindAll=function(a,b){var c;if(a&&(g.iO(a)||g.iF(a))){g.isI(a)&&!a._sb_ID&&a[0]&&g.DM(a[0])&&(a=a[0]);var d=a._sb_map;if(a._sb_ID&&p[a._sb_ID].rAS(b),d)for(c in d){var e=d[c];p[e].rAS(b)}}};var v=function(a,b,c){return H(this,c),this.oD=this.so?this.options:y,this.type=b,this.object=a,this.ID=Z(),this.subs=[],this.sM=n(),this.pM=n(),this.atEV=[],"Proxy"===this.type&&(this.sV=Y),this.mC&&(this.cH=n(),this.object.forEach(function(a){return function(b){var c=a.cH[b.value]=m("checked").of(b)._;c.aS(a),c.sM[a.ID].tF=function(){return c},c.gB=a}}(this))),"Event"===this.type||"Func"===this.type&&this.IS||("Pholder"===this.type?(b=this.de&&!h(this.de,"multi")?this.de+":"+this.pr:this.pr,a=this.pB=m(b).of(a)._,a.sPH(),this.value=a.pVL[this.Ph],a.txN&&(this.txN=a.txN[this.Ph])):(this.value=a=this.fDV(),"ObjectProp"!==this.type||g.iD(a)||D(this.object,this.pr)||(this.object[this.pr]=a),A(this,this.object))),this.aEV(),p[this.ID]=this};v.prototype={aS:function(a,b,c,d){var e;if(a.isMulti){var f=a.bindings;for(a=0,e=f.length;a<e;a++){var g=f[a];this.aS(g,b,c,d)}}else if(this.sM[a.ID])var l=!0;else a.pM[this.ID]=this,this.subs.unshift(a),e=this.sM[a.ID]=n(),e.uO=c,e.opts=ba(b),(d||"Event"===this.type||"Proxy"===this.type||"Array"===this.type)&&(e.opts.updateEvenIfSame=!0),e.VR="Func"===a.type?"ps":"value";return l},rS:function(a,b){var c;if(a.isMulti){var d=a.bindings,e=0;for(c=d.length;e<c;e++){var f=d[e];this.rS(f,b)}}else this.sM[a.ID]&&(this.subs.splice(this.subs.indexOf(a),1),delete this.sM[a.ID],delete a.pM[this.ID]),b&&(a.rS(this),delete this.pM[a.ID]);0===this.subs.length&&0===Object.keys(this.pM).length&&this.DES()},rAS:function(a){var b,c=this.subs.slice(),d=0;for(b=c.length;d<b;d++){var e=c[d];this.rS(e,a)}},DES:function(){var a;if(delete p[this.ID],this.rPI(),"Event"===this.type){var b=this.atEV,c=0;for(a=b.length;c<a;c++){var d=b[c];this.urEVE(d)}}else"Func"===this.type&&delete this.object._sb_ID;this.isL&&this.OD&&G(this,this.object),"Array"===this.type&&G(this,this.value,!0),this.object._sb_map&&(delete this.object._sb_map[this.se],0===Object.keys(this.object._sb_map).length&&delete this.object._sb_map)},fDV:function(){var a,b=this.type;switch(!1){case"Func"!==b:return this.object();case"DOMAttr"!==b:return this.object.getAttribute(this.pr)||"";case!this.mC:var c=[],d=this.cH;for(a in d){var e=d[a];if(e.object.checked){if("DOMRadio"===b)return a;c.push(a)}}return c;default:return this.object[this.pr]}},sV:function(a,b,c,d){if(b||(b=this),this.tfS&&(a=this.tfS(a)),!c)switch(this.type){case"ObjectProp":if(this.isL)if(this.dI)if(d){if(a!==this.OG()){var e=this.object.selectionStart;this.OS(a),e&&this.object.setSelectionRange(e,e)}}else this.OS(a),r.dispatchEvents&&this.object.dispatchEvent(F());else this.OS&&this.OS(a);else a!==this.value&&(this.object[this.pr]=a);break;case"Pholder":if(d=this.pB,d.pVL[this.Ph]=a,e=ca(d.pCT,d.pVL,d.pIM),this.txN&&a!==this.value){var f=this.txN,k=0;for(c=f.length;k<c;k++){var l=f[k];l.textContent=a}}"textContent"!==this.pr&&d.sV(e,b);break;case"Array":a!==this.value&&(g.iA(a)||(a=Array.prototype.concat(a)),G(this,this.value,!0),A(this,a=a.slice(),!0),this.OS&&this.OS(a));break;case"Func":e=this.ps,this.ps=a,a=this.object(a,e);break;case"Event":this.iE=!0,this.eE(a),this.iE=!1;break;case"DOMRadio":if(this.mC)if(d=g.iB(a)?a:this.cH[a])for(k in a=d.object.value,e=this.cH)c=e[k],c.sV(c.ID===d.ID,b);else a=this.value;else{if(a=!!a,a===this.value)return;this.object.checked!==a&&(this.object.checked=a),a&&r.dispatchEvents&&this.object.dispatchEvent(F())}break;case"DOMCheckbox":if(this.mC){for(k=!g.iB(a),a=[].concat(a),c=d=0,f=a.length;d<f;c=++d)l=a[c],a[c]=g.iB(l)?l:this.cH[l];f=[],l=this.cH;for(e in l)c=l[e],d=k?h(a,c):c.value,c.sV(d,b),d&&f.push(e);a=f}else{if(a=!!a,a===this.value)return;this.object.checked!==a&&(this.object.checked=a,r.dispatchEvents&&this.object.dispatchEvent(F()))}break;case"DOMAttr":this.object.setAttribute(this.pr,a)}this.value=a,this.uAS(b)},uAS:function(a){var b,c;if(c=(b=this.subs).length)for(;c--;)this.uS(b[c],a)},uS:function(a,b,c){var d;if(!(b===a||b!==this&&b.sM[a.ID])){var e=this.sM[a.ID];if(!e.dL||!e.dL[b.ID]){if(e.opts.throttle){c=+new Date;var f=c-e.lU;if(f<e.opts.throttle)return clearTimeout(e.uT),e.uT=setTimeout(function(c){return function(){if(c.sM[a.ID])return c.uS(a,b)}}(this),e.opts.throttle-f);e.lU=c}else if(e.opts.delay&&!c)return setTimeout(function(c){return function(){if(c.sM[a.ID])return c.uS(a,b,!0)}}(this),e.opts.delay);c="Array"===this.type&&e.opts.sendArrayCopies?this.value.slice():this.value,f=a[e.VR],c=(d=e.tF)?d(c,f,a.object):c,c===f&&!e.opts.updateEvenIfSame||e.cN&&!e.cN(c,f,a.object)||(e.opts.promiseTransforms&&c&&g.iF(c.then)?c.then(function(c){a.sV(c,b)}):a.sV(c,b),e.uO&&this.rS(a))}}},aM:function(a,b,c,d){var e,f;if(g.iF(c)){var k=0;for(f=b.length;k<f;k++){var l=b[k],h=l._||l;h.isMulti?this.aM(a,h.bindings,c,d):(l=this.sM[h.ID],l[a]=c,d=d&&!l.uO,this.pM[h.ID]&&((e=h.sM[this.ID])[a]||(e[a]=c)),!d&&"Func"!==this.type||"tF"!==a||this.uS(h,this))}return!0}return w("erFN",2)},ss:function(a,b){this.tfS=a,b&&this.sV(this.value)},aD:function(a,b){var c;(null!=(c=this.sM[a.ID]).dL?c.dL:c.dL=n())[b.ID]=1},sPH:function(){if(!this.pVL){if(this.pVL=n(),this.pIM=n(),this.pCT=[],g.iS(this.value)){this.pCT=this.value.split(x);var a=0;this.value=this.value.replace(I,function(b){return function(c,d){return b.pIM[a++]=d,b.pVL[d]=d}}(this))}this.DM&&"textContent"===this.pr&&Q(this.object,this.txN=n())}},aPI:function(a){if("Event"!==this.type)return this.rPI(),this.PI=setInterval(function(a){return function(){var b=a.fDV();return a.sV(b)}}(this),a)},rPI:function(){return clearInterval(this.PI),this.PI=null},aUV:function(a,b){this.object.addEventListener(a,function(a){return function(c){c._sb||(c=a.tfS&&a.dI,a.sV(a.object[b],null,!c,!0))}}(this),!1)},aEV:function(){this.evN?this.rEVE(this.evN):this.dI?(this.aUV("input","value"),this.aUV("change","value")):this.mC||"DOMRadio"!==this.type&&"DOMCheckbox"!==this.type||this.aUV("change","checked")},rEVE:function(a){this.atEV.push(a),this.evH||(this.evH=fa.bind(this)),this.object[this.eM.listen](a,this.evH)},urEVE:function(a){this.atEV.splice(this.atEV.indexOf(a),1),this.object[this.eM.remove](a,this.evH)},eE:function(a){var b=this.evN;"dispatchEvent"===this.eM.emit&&(this.evO||(this.evO=document.createEvent("Event"),this.evO.initEvent(this.evN,!0,!0)),this.evO.bindingData=a,b=this.evO),this.object[this.eM.emit](b,a)}};var fa=function(){this.iE||this.sV(arguments[this.pr],null,!0)},z=function(a,b){var c;if(b)H(this,b),this.sG=1;else for(c in this.sG=0,this.subs=[],this.oP=a||(a={}),this.options={},y)this.options[c]=null!=a[c]?a[c]:y[c];return this},S={sC:function(){return new z(null,this)},dM:function(a){return this._=a,Object.defineProperties(this,{value:{get:function(){return a.value}},original:{get:function(){return a.objects||a.object}},subscribers:{get:function(){return a.subs.slice().map(function(a){return a.object})}}})},createBP:function(a,b,c,d){var e;return this.object=a,(e=N.get(a,d,this.se,this.mC))?this.patchCachedBP(e):(a=new v(a,b,c),N.set(a,d),a)},patchCachedBP:function(a){var b;if("ObjectProp"!==a.type||this.pr in this.object||A(a,this.object),this.so){var c=this.oP;for(e in c){var d=c[e];a.oD[e]=d}}var e=a.oD;for(b in e)d=e[b],this.options[b]=g.iD(this.oP[b])?this.oP[b]:d;return a},sP:function(a){if(g.iN(a)&&(a=a.toString()),this.se=this.pr=a,!this.options.simpleSelector){if(h(a,":")){var b=a.split(":");this.de=b.slice(0,-1).join(":"),this.pr=b[b.length-1]}h(a,".")&&(b=this.pr.split("."),this.pr=b[0],this.Ph=b.slice(1).join(".")),h(this.de,"event")&&(h(a,"#")?(b=this.pr.split("#"),this.evN=b[0],this.pr=b[1]):(this.evN=this.pr,this.pr=0),isNaN(parseInt(this.pr))&&w("erEV",1))}return this},sS:function(a,b){var c;this.sG=1;var d=(c=a!==window&&g.isI(a)&&!a.nodeType)?a[0]:a;if(d){if(this.DM=g.DM(d)){if("checked"===this.pr)var e=d&&g.dR(d),f=!e&&d&&g.dC(d);else"value"===this.pr&&(this.dI=g.dI(d));if(c&&!h(this.de,"multi"))if(1===a.length)a=a[0];else{if((e||f)&&!g.eAS(a))return w("erMX",3);e||f?(this.mC=!0,a=[].slice.call(a)):(a=a[0],w("erOD",3))}}}else c&&g.eC(a)&&B("emptyList");switch(!1){case!b:f="Func";break;case!this.Ph:f="Pholder";break;case!(h(this.de,"array")&&g.iA(a[this.pr])):f="Array";break;case!h(this.de,"event"):f="Event",this.eM={listen:this.oP.listenMethod,remove:this.oP.removeMethod,emit:this.oP.emitMethod},a[this.eM.listen]||(this.eM.listen=g.dN(a)?"addEventListener":"on"),a[this.eM.remove]||(this.eM.remove=g.dN(a)?"removeEventListener":"removeListener"),a[this.eM.emit]||(this.eM.emit=g.dN(a)?"dispatchEvent":"emit");break;case!h(this.de,"func"):f="Proxy";break;case!e:f="DOMRadio";break;case!f:f="DOMCheckbox";break;case!h(this.de,"attr"):f="DOMAttr";break;default:f="ObjectProp"}return h(this.de,"multi")?(a.length||B("emptyList"),this.dM(new J(this,a,f))):this.dM(this.createBP(a,f,this,b)),h(this._.type,"Event")||h(this._.type,"Proxy")?this.options.updateOnBind=!1:h(this._.type,"Func")&&(this.options.updateOnBind=!0),this.cC?this.cC(this):this},aP:function(a){var b;a.sG=2,a.subs.push(this);var c=a._.aS(this._,a.options,a.uO);if(a.uO)delete a.uO;else if(a.options.updateOnBind&&!c)if(this._.isMulti){var d=this._.bindings,e=0;for(b=d.length;e<b;e++)c=d[e],a._.uS(c,a._)}else a._.uS(this._,a._)}};z.prototype=Object.create(S,{of:{get:function(){if(!this.sG)return ga}},set:{get:function(){if(this.sG)return ha}},chainTo:{get:function(){if(2===this.sG)return ia}},transformSelf:{get:function(){if(1===this.sG)return ja}},transform:{get:function(){if(2===this.sG)return ka}},transformAll:{get:function(){if(2===this.sG)return la}},condition:{get:function(){if(2===this.sG)return ma}},conditionAll:{get:function(){if(2===this.sG)return na}},bothWays:{get:function(){if(2===this.sG)return oa}},unBind:{get:function(){if(2===this.sG)return pa}},pollEvery:{get:function(){if(this.sG)return qa}},stopPolling:{get:function(){if(this.sG)return ra}},setOption:{get:function(){if(2===this.sG)return sa}},disallowFrom:{get:function(){var a;if(2===this.sG&&(a=this))return u(!1,function(b){return a._.aD(a.subs[a.subs.length-1]._,b._),a})}},updateOn:{get:function(){var a;if(this.sG&&(a=this))return u(!1,function(b){return b._!==a._&&(a._.pM[b._.ID]=b._,b._.aS(aa(a._,!0),b.options,!1,!0)),a})}},removeUpdater:{get:function(){var a,b;if(this.sG&&(b=this)&&(a=this._.sU))return u(!1,function(c){c._.sM[a.ID]&&(delete b._.pM[c._.ID],c._.rS(a))})}},to:{get:function(){var a;if(1===this.sG&&(a=this))return u(!0,function(b){return b._!==a._&&b.aP(a),a})}},and:{get:function(){var a=this.sC();if(2===this.sG)return a;if(1===this.sG){if(!a._.isMulti){var b=a._;a._=a._=new J(a),a._.addBP(b)}return u(!1,function(b){return a._.addBP(b._),a})}}},once:{get:function(){if(1===this.sG){var a=this.sC();return a.uO=!0,a}}},update:{get:function(){return this.set}},twoWay:{get:function(){return this.bothWays}},pipe:{get:function(){return this.chainTo}}});var ga=function(a){return g.iO(a)||g.iF(a)||ea(a),g.iBI(a)&&(a=a.object),this.sG=1,this.sS(a)},ia=function(a,b,c){return m(this.subs[this.subs.length-1]).to(a,b,c)},ha=function(a){return this._.sV(a),this},ja=function(a){return g.iF(a)?this._.ss(a,this.options.updateOnBind):w("erFN",1),this},ka=function(a){return this._.aM("tF",this.subs.slice(-1),a,this.options.updateOnBind),this},la=function(a){return this._.aM("tF",this.subs,a,this.options.updateOnBind),this},ma=function(a){return this._.aM("cN",this.subs.slice(-1),a),this},na=function(a){return this._.aM("cN",this.subs,a),this},oa=function(a){var b,c=this.subs[this.subs.length-1],d=c._,e=this._.isMulti?this._.bindings:[this._];for(d.aS(this._,c.options),c=0,b=e.length;c<b;c++){var f=e[c],k=f.sM[d.ID].tF;f=f.sM[d.ID].cN,(k||a)&&(k=g.iF(a)?a:k)&&!1!==a&&(d.sM[this._.ID].tF=k),f&&(d.sM[this._.ID].cN=f)}return this},pa=function(a){var b,c=this.subs,d=0;for(b=c.length;d<b;d++){var e=c[d];this._.rS(e._,a)}return this},qa=function(a){return this._.aPI(a),this},ra=function(){return this._.rPI(),this},sa=function(a,b){return this._.sM[this.subs[this.subs.length-1]._.ID].opts[a]=b,this},J=function(a,b,c){var d,e;if(a.se=a.se.slice(6),H(this,this.In=a),this.isMulti=!0,this.bindings=d=[],b)for(a=0,e=b.length;a<e;a++){var f=b[a];this.addBP(f,c)}return Object.defineProperties(this,{type:{get:function(){return d.map(function(a){return a.type})}},value:{get:function(){return d.map(function(a){return a.value})}}})},T=J.prototype=Object.create(S);return Object.keys(v.prototype).forEach(function(a){return T[a]=function(b,c,d,e){var f,g=this.bindings,h=0;for(f=g.length;h<f;h++){var m=g[h];"uS"===a&&(c=m),m[a](b,c,d,e)}}}),T.addBP=function(a,b){this.bindings.push(b?this.createBP(a,b,this.In):a)},null!=("undefined"!=typeof module&&null!==module?module.exports:void 0)?module.exports=m:"function"==typeof define&&define.amd?define(["simplybind"],function(){return m}):this.SimplyBind=m}();