-
Notifications
You must be signed in to change notification settings - Fork 0
/
cls.min.js
6 lines (6 loc) · 922 Bytes
/
cls.min.js
1
2
3
4
5
6
/*!
* Cls: Lightweight class abstraction in JavaScript
* https://github.com/alessioalex/Cls
* License MIT (c) Alexandru Vladutu
*/
(function(a){function b(a){var c,d,e,f,g;return a=a||{},a.uber?e=function(){return c.uber.constructor.apply(this,arguments)}:e=function(){},f=a.methods||{},g=a.statics||{},c=f.hasOwnProperty("constructor")?f.constructor:e,b.extendz(c,a.uber),b.mixin(c.prototype,f),b.mixin(c,g),c.prototype.inherited=function(a,b){var d;return d=c.uber&&c.uber[a],d?c.uber[a].apply(this,b):null},c}"use strict",b.mixin=function(a,b){var c;for(c in b)b.hasOwnProperty(c)&&(a[c]=b[c]);return a},b.extendz=function(a,c){function d(){this.constructor=a}return typeof c=="undefined"?a:(b.mixin(a,c),d.prototype=c.prototype,a.prototype=new d,a.uber=c.prototype,a)},b.prevCls=a.Cls,typeof module!="undefined"&&module.exports?module.exports=b:a.Cls=b,b.noConflict=function(){return a.Cls=b.prevCls,b}})(this)