UNPKG

san-composition

Version:
3 lines (2 loc) 6.92 kB
"use strict";function t(e){return t="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},t(e)}function e(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function n(t,e){for(var n=0;n<e.length;n++){var o=e[n];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(t,o.key,o)}}function o(t,e,o){return e&&n(t.prototype,e),o&&n(t,o),t}Object.defineProperty(exports,"__esModule",{value:!0});var s,i=[];function a(){return this.__scContext.initData}var r=["construct","compiled","inited","created","attached","detached","disposed","updated","error"];function c(){var t=this;r.forEach((function(e){var n=t.__scContext[e];if(n){var o=n.length;t[e]=function(){for(var t=arguments.length,e=new Array(t),s=0;s<t;s++)e[s]=arguments[s];for(var i=0;i<o;i++)n[i].apply(this,e)}}}))}function p(){var t=this.__scContext.computed;if(t)for(var e=Object.keys(t),n=0;n<e.length;n++){var o=e[n],s=t[o],i=[];this.__scContext.computedDatas=i;var a=m(o,s);a.call(this);for(var r=0;r<i.length;r++)this.watch(i[r],a);this.__scContext.computedDatas=null}}function u(){var t=this.__scContext&&this.__scContext.watches;if(t)for(var e=this.__scContext.component,n=Object.keys(t),o=0;o<n.length;o++){var s=n[o];this.watch(s,t[s].bind(e))}}function h(){this.__scContext&&(this.__scContext.publicContext.dispose(),this.__scContext=null)}function m(t,e){return function(){var n=e.call(this);this.data.set(t,n)}}var l=function(){function t(n,o){e(this,t),this.name=n,this.component=o}return o(t,[{key:"get",value:function(t){var e=t?this._resolveName(t):this.name,n=this.component.__scContext,o=n&&n.computedDatas;return o&&o.push(e),this.component.data.get(e)}},{key:"set",value:function(t,e){void 0===e?this.component.data.set(this.name,t):this.component.data.set(this._resolveName(t),e)}},{key:"merge",value:function(t,e){e?this.component.data.merge(this._resolveName(t),e):this.component.data.merge(this.name,t)}},{key:"apply",value:function(t,e){e?this.component.data.apply(this._resolveName(t),e):this.component.data.apply(this.name,t)}},{key:"push",value:function(t,e){return void 0===e?this.component.data.push(this.name,t):this.component.data.push(this._resolveName(t),e)}},{key:"pop",value:function(t){return"string"==typeof t?this.component.data.pop(this._resolveName(t)):this.component.data.pop(this.name)}},{key:"shift",value:function(t){return"string"==typeof t?this.component.data.shift(this._resolveName(t)):this.component.data.shift(this.name)}},{key:"unshift",value:function(t,e){return void 0===e?this.component.data.unshift(this.name,t):this.component.data.unshift(this._resolveName(t),e)}},{key:"remove",value:function(t,e){return void 0===e?this.component.data.remove(this.name,t):this.component.data.remove(this._resolveName(t),e)}},{key:"removeAt",value:function(t,e){return void 0===e?this.component.data.removeAt(this.name,t):this.component.data.removeAt(this._resolveName(t),e)}},{key:"splice",value:function(t,e){return void 0===e?this.component.data.splice(this.name,t):this.component.data.splice(this._resolveName(t),e)}},{key:"_resolveName",value:function(t){return this.name+(/^[\[.]/.test(t)?t:"."+t)}}]),t}();var f=function(){function t(n,o){e(this,t),this.name=n,this.component=o}return o(t,[{key:"get",value:function(){var t=this.component.__scContext,e=t&&t.computedDatas;return e&&e.push(this.name),this.component.data.get(this.name)}}]),t}();function d(e){return function(n,o){if(s.creator)switch(s[e]=s[e]||{},t(n)){case"string":s[e][n]=o;break;case"object":Object.assign(s[e],n)}}}var v=d("filters"),y=d("components");function _(t){return function(e){s.creator||(s[t]=s[t]||[],s[t].push(e))}}var x=_("construct"),g=_("compiled"),b=_("inited"),C=_("created"),k=_("attached"),w=_("detached"),D=_("disposed"),j=_("updated"),N=_("error");var A=function(){function t(n){e(this,t),this.component=n,this._dataDefs={}}return o(t,[{key:"data",value:function(t){var e=this._dataDefs[t];return e||(e=this._dataDefs[t]=new l(t,this.component)),e}},{key:"dispatch",value:function(t,e){this.component&&this.component.dispatch(t,e)}},{key:"fire",value:function(t,e){this.component&&this.component.fire(t,e)}},{key:"ref",value:function(t){if(this.component)return this.component.ref(t)}},{key:"nextTick",value:function(t,e){this.component&&this.component.nextTick(t,e)}},{key:"dispose",value:function(){this.component=null}}]),t}();exports.components=y,exports.computed=function(t,e){if(!s.creator&&"string"==typeof t)return s.computed||(s.computed={}),s.computed[t]=e,new f(t,s.component)},exports.data=function(t,e){if(!s.creator&&"string"==typeof t){s.initData||(s.initData={}),s.initData[t]=e;var n=s.publicContext._dataDefs;return n[t]?n[t]:n[t]=new l(t,s.component)}},exports.defineComponent=function(t,e){var n={creator:t};s=n,i.push(s),t(),i.pop(),s=i[i.length-1];var o=function(t){this.__scContext={component:this,publicContext:new A(this),inited:[p],attached:[u]},s=this.__scContext,i.push(s),(0,n.creator)(s.publicContext),i.pop(),s=i[i.length-1],this.__scContext.disposed?this.__scContext.disposed.push(h):this.__scContext.disposed=[h],this.__scInitLifeCycle(),e.Component.call(this,t)};function r(){}return r.prototype=e.Component.prototype,(o.prototype=new r).constructor=o,o.prototype.initData=a,o.prototype.__scInitLifeCycle=c,n.template&&(o.prototype.template=n.template),n.filters&&(o.prototype.filters=n.filters),n.components&&(o.prototype.components=n.components),null!=n.trimWhitespace&&(o.prototype.trimWhitespace=n.trimWhitespace),null!=n.delimiters&&(o.prototype.delimiters=n.delimiters),null!=n.autoFillStyleAndId&&(o.prototype.autoFillStyleAndId=n.autoFillStyleAndId),o},exports.filters=v,exports.messages=function(e,n){if(!s.creator){var o=s.component;switch(t(e)){case"string":o.messages||(o.messages={}),o.messages[e]=n;break;case"object":o.messages?Object.assign(o.messages,e):o.messages=e}}},exports.method=function(e,n){if(!s.creator)switch(t(e)){case"string":s.component[e]=n;break;case"object":Object.assign(s.component,e)}return n||e},exports.onAttached=k,exports.onCompiled=g,exports.onConstruct=x,exports.onCreated=C,exports.onDetached=w,exports.onDisposed=D,exports.onError=N,exports.onInited=b,exports.onUpdated=j,exports.template=function(t){if(s.creator)if(t instanceof Array){for(var e=t[0],n=1,o=t.length;n<o;n++)e+=arguments[n]+t[n];s.template=e}else s.template=t},exports.templateOptions=function(t){var e=t.trimWhitespace,n=t.delimiters,o=t.autoFillStyleAndId;s.creator&&(s.trimWhitespace=e,s.delimiters=n,s.autoFillStyleAndId=o)},exports.version="1.3.0",exports.watch=function(e,n){if(!s.creator)switch(s.watches||(s.watches={}),t(e)){case"string":s.watches[e]=n;break;case"object":Object.assign(s.watches,e)}}; //# sourceMappingURL=index.common.js.map