helper.js 1.75 KB
"use strict";function _toConsumableArray(r){return _arrayWithoutHoles(r)||_iterableToArray(r)||_nonIterableSpread()}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance")}function _iterableToArray(r){if(Symbol.iterator in Object(r)||"[object Arguments]"===Object.prototype.toString.call(r))return Array.from(r)}function _arrayWithoutHoles(r){if(Array.isArray(r)){for(var e=0,n=new Array(r.length);e<r.length;e++)n[e]=r[e];return n}}function extractComponentId(){return((0<arguments.length&&void 0!==arguments[0]?arguments[0]:{}).currentTarget||{}).dataset.componentId}var LIFE_CYCLE=["onLoad","onReady","onShow","onHide","onUnload","onPullDownRefresh","onReachBottom","onShareAppMessage","onPageScroll"],extendCreator=function(){var r=0<arguments.length&&void 0!==arguments[0]?arguments[0]:{},e=r.life,n=void 0===e?LIFE_CYCLE:e,t=r.exclude,o=void 0===t?[]:t,i=o.concat(LIFE_CYCLE.map(getFuncArrayName));if(!Array.isArray(n)||!Array.isArray(o))throw new Error("Invalid Extend Config");var c=n.filter(function(r){return 0<=LIFE_CYCLE.indexOf(r)});return function(a){for(var r=arguments.length,e=new Array(1<r?r-1:0),n=1;n<r;n++)e[n-1]=arguments[n];return e.forEach(function(t){t&&Object.keys(t).forEach(function(r){var e=t[r];if(!(0<=i.indexOf(r)))if(0<=c.indexOf(r)&&"function"==typeof e){var n,o=getFuncArrayName(r);if(a[o]||(a[o]=[],a[r]&&a[o].push(a[r]),a[r]=function(){for(var e=this,r=arguments.length,n=new Array(r),t=0;t<r;t++)n[t]=arguments[t];a[o].forEach(function(r){return r.apply(e,n)})}),t[o])(n=a[o]).push.apply(n,_toConsumableArray(t[o]));else a[o].push(e)}else a[r]=e})}),a}},getFuncArrayName=function(r){return"__$".concat(r)};module.exports={extractComponentId:extractComponentId,extend:Object.assign,extendCreator:extendCreator};