nimble-ui
Version:
1 lines • 15.1 kB
JavaScript
module.exports=function(t){var i={};function n(e){if(i[e])return i[e].exports;var s=i[e]={i:e,l:!1,exports:{}};return t[e].call(s.exports,s,s.exports,n),s.l=!0,s.exports}return n.m=t,n.c=i,n.d=function(t,i,e){n.o(t,i)||Object.defineProperty(t,i,{configurable:!1,enumerable:!0,get:e})},n.n=function(t){var i=t&&t.__esModule?function(){return t.default}:function(){return t};return n.d(i,"a",i),i},n.o=function(t,i){return Object.prototype.hasOwnProperty.call(t,i)},n.p="/",n(n.s="0Mmb")}({"/GK1":function(t,i,n){"use strict";var e=n("shrL");i.a=e.a},"0Mmb":function(t,i,n){"use strict";Object.defineProperty(i,"__esModule",{value:!0});var e=n("ekq3"),s=n("R9S5"),o=n("/GK1"),a=n("XUgh"),r={touchstart:1,touchmove:1,touchend:1,mousedown:2,mousemove:2,mouseup:2,mouseleave:2},u={transform:Object(o.a)("transform"),transition:Object(o.a)("transition"),transitionTimingFunction:Object(o.a)("transitionTimingFunction"),transitionDuration:Object(o.a)("transitionDuration"),transitionProperty:Object(o.a)("transitionProperty"),transitionDelay:Object(o.a)("transitionDelay"),transformOrigin:Object(o.a)("transformOrigin")},c={transitionEnd:Object(a.a)("transitionend",!0)},h="init",l="visible",d="hidden",m=/^(-|\+)?[0-9]+.?[0-9]*$/,f="update:isUpdate",p="update:state",_="confirmChange",v="clickItem",g={RIGHT:"1",LEFT:"-1",NO:"0"};function x(t,i,n){if(t&&i){var e=t.style;e&&(e[i]=n)}}var y={extends:n("HDd3").a,props:{mask:{type:Boolean,default:!1},type:{},list:{type:Array},rate:{type:Number,default:.3},bounce:{type:Boolean,default:!0},bounceTime:{type:Number,default:300},duration:{type:Number,default:500},isUpdate:{type:Boolean,default:!1},maxWidth:{type:Number|String,default:"100%"},minWidth:{type:Number|String},state:{},index:{},fixed:{type:Number,default:0},filterText:{type:Function}},data:function(){return{myUpdate:this.isUpdate,myState:this.state}},computed:{myMinWidth:function(){return this._filterUpLowW(this.minWidth,this.maxWidth).minWidth},myMaxWidth:function(){return this._filterUpLowW(this.minWidth,this.maxWidth).maxWidth}},watch:{myUpdate:function(t){this.$emit(f,t)},myState:function(t){this.$emit(p,t),this.initiated||(t+="",void 0!==this.index&&"-1"!==t&&"-2"!==t&&"-3"!==t&&"-4"!==t?this.index==t?this._showR(this.duration):null!==this.myState&&this._hideR(this.duration):"-3"!==t&&"-4"!==t||this.status===l?this.status===d||"-1"!==t&&"-2"!==t||this._hideR("-1"===t?this.duration:0):this._showR("-3"===t?this.duration:0))},state:function(t){this.myState=t}},methods:{_filterUpLowW:function(t,i){return t=n(t),i=n(i),null===t&&null===i&&t>i&&(t=null),{minWidth:t,maxWidth:i};function n(t){return(t=(t||"")+"")?(t=t.replace(/([0-9]+\.?[0-9]*)(%?)/g,function(t,i,n){return"%"===n&&(i/=100),i}),parseFloat(t)):null}},_hideR:function(t,i){var n=this;setTimeout(function(){n._setTransiton(t,i),n._setWidthPos(null,new Array(n.maxItemWidth.length).fill(0),0),n.status=d},20)},_showR:function(t,i){var n=this;n.status=l,setTimeout(function(){n._setTransiton(t,i),n._setWidthPos(null,n.maxItemWidth,-n.maxDisWidth)},20)},_getListItemsDom:function(){var t=this.$slots.hook_right;return t&&(t=t[0].children||[t[0].elm]),t||(t=this.$refs.hook_listItem),t||[]},_initWatcher:function(){var t,i=this;(t=i.$slots.hook_right)&&(t[0].children||t[0].elm)&&(i.$watch("itemWidth",function(t){i._setListItemStyle(function(i,n){var e=t&&t[n];"number"==typeof e&&(e+="px"),x(i&&i.elm,"width",e)})}),i.$watch("isInTransition",function(){i._setListItemStyle(function(t){var n=i._getTransitionStyle();for(var e in n)x(t&&t.elm,e,n[e])})}),i.$watch("isUpdate",function(t){t&&(i._resetCom(),i.myUpdate=!1)}))},_setListItemStyle:function(t){var i=this.listItems;if(i||(i=this._getListItemsDom()),this.listItems=i,i&&i.length>0)for(var n=0;n<i.length;n++)Object(e.a)(t,[i[n],n],this)},_setTransiton:function(t,i){t=t||0,this.isInTransition=t>0,i=i||"ease",this.tranTime=t,this.tranFunc=i}}},W={extends:n("VU/8")(y,null,!1,null,null,null).exports,methods:{_calculateRatio:function(t){var i=void 0;if(t.length>0){var n=Math.max(this.maxDisWidth,Math.max.apply(null,t));i=[],t.forEach(function(t){if(t){var e=(t/n).toFixed(6);i.push(parseFloat(e))}})}return i},_calculateWidth:function(t){var i=[];if(t&&t.length>0)for(var n=0;n<t.length;n++){var e=t[n]||{},s=0;s=void 0!==e.offsetWidth?e.offsetWidth:e.elm&&e.elm.offsetWidth||0,i.push(s)}return i},_resetWidthPos:function(){var t=this;if(n())t.bounce&&t._setTransiton(t.bounceTime);else{var i=function(){var i=Math.abs(t.distX)/t.maxDisWidth;if(t.movingDirection===g.RIGHT)return i>=t.rate?-1:1;if(t.movingDirection===g.LEFT)return i>=t.rate?1:-1}();1===i?t._showR(t.duration):-1===i&&t._hideR(t.duration)}function n(){var i=t.itemWidth,n=t.maxItemWidth,e=!1;i=i.map(function(t,i){return t<0?(t=0,e=!0):t>(n[i]||0)&&(t=n[i]||0,e=!0),t});var s=t.x;return Math.abs(t.x)>t.maxDisWidth&&(s=-t.maxDisWidth,e=!0),e&&t._setWidthPos(null,i,s),e}},_setWidthPos:function(t,i,n){var e=(this.fixed||0)+"",s=t;this.type+""=="1"&&("-1"===e?(n=0,t=0):"1"===e&&(i=null,s=0)),this._setContPos(t,n),this._setItemWidth(s,i)},_setContPos:function(t,i){var n=0;(n=i||0===i?i:this.x+t)!==this.x&&(n<=0?Math.abs(n)>this.maxDisWidth&&(n=this.bounce?this.x+t/6:-this.maxDisWidth):n=0,this.x=n)},_setItemWidth:function(t,i){var n=this;function e(t,i,e,s){var o=n.maxItemWidth[t];return i<0?i=0:i>o&&(i=n.bounce&&s?e+s/6:o),i}function s(t){var i=(t||"0")+"";return m.test(i)||(i="0"),i=parseFloat(i)}t=-t,i&&i.length>0?n.itemWidth=i.map(function(t,i){return e(i,t)}):n.itemWidth=n.itemWidth.map(function(i,o){var a=(n.ratios||[])[o]||1;i=s(i);var r=a*(t=s(t));return e(o,i+r,i,r)})},_setBasicData:function(t){var i,n=this;n.x=0,n.listItems=n._getListItemsDom(),n.maxItemWidth=Object(e.a)(t||[],[n.listItems],n),function(){var t=n.maxItemWidth.reduce(function(t,i){return t+i},0),i=n.$el.offsetWidth,e=t;n.myMinWidth&&(e=Math.max(e,n.myMinWidth*i));n.myMaxWidth&&(e=Math.min(e,n.myMaxWidth*i));n.maxDisWidth=e,n.scale=n.maxDisWidth/t}(),i=n.scale||1,n.maxItemWidth=n.maxItemWidth.map(function(t){return t?t*i:n.maxDisWidth}),n.ratios=n._calculateRatio(n.maxItemWidth),n.itemWidth=new Array(n.listItems&&n.listItems.length||0).fill(0),n.status=d},_handleDelta:function(t){var i=t.touches?t.touches[0]:t,n=i.pageX-this.pointX;this.pointX=i.pageX;var e=i.pageY-this.pointY;this.pointY=i.pageY;var s=Math.abs(this.distX+n),o=Math.abs(this.distY+e);(this.directionLocked||(this.directionLocked=s>=o?"h":"v"),"v"===this.directionLocked?n=0:"h"===this.directionLocked&&(e=0,t.cancelable&&t.preventDefault()),this.movingDirection||(n>0?this.movingDirection=g.RIGHT:n<0&&(this.movingDirection=g.LEFT)),this.movingDirection===g.LEFT)&&((this.itemWidth||[]).reduce(function(t,i){return t+i},0)>=this.maxDisWidth&&(this.movingDirection=g.NO));return this.distX+=n,this.distY+=e,n}}},b={extends:n("VU/8")(W,null,!1,null,null,null).exports,name:"NuDrawer",data:function(){return{isInTransition:!1,itemWidth:[],x:0,status:h,tranTime:this.duration,tranFunc:"ease",movedActive:!1}},computed:{isMask:function(){return this.mask&&this.status===l},mainStyle:function(){var t,i=[(t={},t[u.transform]="translateX("+this.x+"px",t)];return this.isInTransition&&i.push(this._getTransitionStyle()),i}},mounted:function(){var t=this;t.$nextTick(function(){t._initCom()}),t.maxDisWidth||setTimeout(function(){t._resetCom()},100)},beforeDestroy:function(){this.$el&&this.$el.removeEventListener(c.transitionEnd,this._onTransitionEnd),window.removeEventListener("resize",this._resetCom)},watch:{list:function(){this._resetCom()},status:function(t){var i=this.index;this.myState=void 0!==i?t===l?i:null:t===l?-3:-1}},methods:{_initCom:function(){var t=this;t._initWatcher(),t._setBasicData(function(i){return t._calculateWidth(i)});var i=t.myState+"";void 0!==t.index&&"-1"!==i&&"-2"!==i&&"-3"!==i&&"-4"!==i&&t.index==i?t._showR(t.duration):"-3"!==i&&"-4"!==i||setTimeout(function(){t._showR("-3"===i?t.duration:0)}),t.$el&&t.$el.addEventListener(c.transitionEnd,t._onTransitionEnd),window.addEventListener("resize",t._resetCom)},_resetCom:function(){var t=this;t.itemWidth=new Array(t.listItems&&t.listItems.length||0).fill("auto"),t.$nextTick(function(){t._setBasicData(function(i){return t._calculateWidth(i)})})},_filterBtnText:function(t){var i=Object(e.a)(this.filterText,[t],this);return"string"!=typeof i&&(i=t&&t.text||""),i},_getItemStyle:function(t,i){var n=[];t&&t.style&&n.push(t.style);var e=this.itemWidth[i];return void 0!==e&&("number"==typeof e&&(e+="px"),n.push({width:e})),this.isInTransition&&n.push(this._getTransitionStyle()),n},_getTransitionStyle:function(){var t;return(t={})[u.transitionDuration]=this.tranTime+"ms",t[u.transitionTimingFunction]=this.tranFunc,t},_getComputedPosition:function(){this.mainDom=this.mainDom||this.$refs.hook_main;var t=Object(s.a)(this.mainDom,u.transform),i=0;try{t&&(i=(t=t.split(")")[0].split(", "))[12]||t[4],i=parseFloat(i))}catch(t){console.error(t),i=0}return i},_stop:function(){this.isInTransition&&(this._setTransiton(0,null),this._setWidthPos(null,this._calculateWidth(this.listItems),this._getComputedPosition()))},_onStart:function(t){var i=r[t.type];if(2===i&&"0"!==t.button+"")return;if(!this.initiated||this.initiated===i){this._stop(),this.initiated=i;var n=t.touches?t.touches[0]:t;this.pointX=n.pageX,this.pointY=n.pageY,this.directionLocked=0,this.distX=0,this.distY=0,this.movingDirection=0}},_onMove:function(t){var i=r[t.type];if(this.initiated===i){t.stopPropagation();var n=this._handleDelta(t);"h"===this.directionLocked&&(this.movedActive=!0);var e=this.x+n,s=this.$refs.hook_right,o=s&&s.offsetWidth||0;e<0||o>0?(this.status=l,this._setWidthPos(n)):this._hideR()}},_onEnd:function(t){var i=r[t.type];this.initiated===i&&(t.stopPropagation(),this.movedActive=!1,this.initiated=!1,this._resetWidthPos())},_onTransitionEnd:function(){this._setTransiton(0,null);var t=this.$refs.hook_right;t&&0===t.offsetWidth&&(this.status=d)},_onItemClick:function(t,i){this.$emit(_,{Evt:i,data:t}),this.$emit(v,{Event:i,data:t})},_onStopPropagation:function(t,i){var n=(this.fixed||0)+"",e=!1;"-1"===n&&"main"===t?e=!0:"1"===n&&"right"===t&&(e=!0),"mask"===t&&(e=!0),e&&i.stopPropagation()}}},k={render:function(){var t=this,i=t.$createElement,n=t._self._c||i;return n("div",{staticClass:"nus_drawer",on:{mousedown:t._onStart,mousemove:t._onMove,mouseup:t._onEnd,mouseleave:t._onEnd,mousecancel:t._onEnd,touchstart:t._onStart,touchmove:t._onMove,touchend:t._onEnd,touchcancel:t._onEnd,click:t._onClick,tap:t._onTap}},[n("transition",{attrs:{name:"t_drawer-mask"}},[t.isMask?n("div",{staticClass:"nu_drawer-mask",on:{mousemove:function(i){t._onStopPropagation("mask",i)},touchmove:function(i){t._onStopPropagation("mask",i)}}}):t._e()]),t._v(" "),n("div",{ref:"hook_main",staticClass:"nu_drawer-main",class:t.movedActive&&"nu_move-active",style:t.mainStyle,on:{mousemove:function(i){t._onStopPropagation("main",i)},touchmove:function(i){t._onStopPropagation("main",i)}}},[t._t("default")],2),t._v(" "),n("div",{ref:"hook_right",staticClass:"nu_drawer-right",class:t.movedActive&&"nu_move-active",on:{mousemove:function(i){t._onStopPropagation("right",i)},touchmove:function(i){t._onStopPropagation("right",i)}}},[t.list&&t.list.length?n("div",{staticClass:"nu_drawer-list"},t._l(t.list,function(i,e){return n("div",{key:e,ref:"hook_listItem",refInFor:!0,staticClass:"nu_drawer-item",class:i&&i.style,style:t._getItemStyle(i,e),on:{click:function(n){t._onItemClick(i,n)}}},[t._t("hook_item",[n("span",{staticClass:"nu_drawer-text"},[t._v("\n "+t._s(t._filterBtnText(i))+"\n ")])],{itemData:i})],2)})):[t._t("hook_right")]],2)],1)},staticRenderFns:[]};var T=n("VU/8")(b,k,!1,function(t){n("Ri7Q")},null,null).exports,I=n("4qRk");i.default=Object(I.a)(T)},"0Zk/":function(t,i,n){"use strict";i.a=function(t,i){return Object(e.a)(t,i).replace(/^[a-z]/,function(t){return t.toUpperCase()})};var e=n("lXuC")},"4qRk":function(t,i,n){"use strict";i.a=function(t){t&&!t.install&&(t.install=function(i){var n=t.name||"",e=i.component(n);e||i.component(n,t)});return t}},"9B2K":function(t,i,n){"use strict";i.a=function(t,i,n){t=((t||"")+"").replace(/\s+/g,"");var r=n||window,u=i?"on":"";if(u+t in r)return t;var c=u?t:Object(e.a)(t);c=c.replace(/(start$|end$|animation|frame$)/gi,function(t,i){return Object(e.a)(i)});for(var h=0;h<o.length;h++){var l=o[h],d=l+c,m=l+t;if(u+d in r)return o=[l],a[t]=d,d;if(u+m in r)return o=[l],a[t]=m,m}var f=Object(s.a)("transition-property",!0);f&&u+f+c in r&&(t=f+c);return i?t:""};var e=n("0Zk/"),s=n("shrL"),o=["Moz","moz","Webkit","webkit","O","o","MS","ms"],a={}},"B/FW":function(t,i){},HDd3:function(t,i,n){"use strict";var e={extends:n("Lv3q").a},s=n("VU/8")(e,null,!1,null,null,null);i.a=s.exports},Lv3q:function(t,i,n){"use strict";n("B/FW");var e=n("VU/8")({methods:{_onClick:function(t){this.$emit("click",t)},_onTap:function(t){this.$emit("tap",t)},_onClickItem:function(t){this.$emit("clickItem",t)}}},null,!1,null,null,null);i.a=e.exports},R9S5:function(t,i,n){"use strict";var e=n("fk+x");i.a=e.a},Ri7Q:function(t,i){},"VU/8":function(t,i){t.exports=function(t,i,n,e,s,o){var a,r=t=t||{},u=typeof t.default;"object"!==u&&"function"!==u||(a=t,r=t.default);var c,h="function"==typeof r?r.options:r;if(i&&(h.render=i.render,h.staticRenderFns=i.staticRenderFns,h._compiled=!0),n&&(h.functional=!0),s&&(h._scopeId=s),o?(c=function(t){(t=t||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||"undefined"==typeof __VUE_SSR_CONTEXT__||(t=__VUE_SSR_CONTEXT__),e&&e.call(this,t),t&&t._registeredComponents&&t._registeredComponents.add(o)},h._ssrRegister=c):e&&(c=e),c){var l=h.functional,d=l?h.render:h.beforeCreate;l?(h._injectStyles=c,h.render=function(t,i){return c.call(i),d(t,i)}):h.beforeCreate=d?[].concat(d,c):[c]}return{esModule:a,exports:r,options:h}}},XUgh:function(t,i,n){"use strict";var e=n("9B2K");i.a=e.a},ekq3:function(t,i,n){"use strict";var e=n("zagf");i.a=e.a},"fk+x":function(t,i,n){"use strict";i.a=function(t,i){return("undefined"!=typeof getComputedStyle?getComputedStyle(t,null).getPropertyValue(i):t.style[i])||""}},lXuC:function(t,i,n){"use strict";i.a=function(t,i){var n="("+(i||"_|-")+")";return t=(t=(t=(t+"").replace(new RegExp(n+"?(?:(?:[A-Z]{2,}[A-Z]"+n+"*$)|(?:[A-Z]{2,}(?=[A-Z])))","g"),function(t){return(((i||"")+"").split("|")[0]||"-")+(t=t.replace(new RegExp(n),"")).toLowerCase()})).replace(new RegExp("(?:^"+n+"?([a-z]))|(?:"+n+"$)","gi"),function(t,i,n){return(n||"").toLowerCase()})).replace(new RegExp(n+"([a-z])","gi"),function(t,i,n){return(n||"").toUpperCase()})}},shrL:function(t,i,n){"use strict";i.a=function(t,i){if(t=Object(e.a)(((t||"")+"").replace(/\s+/g,"")),!i&&r[t])return r[t];if(!i&&t in o)return t;for(var n=Object(s.a)(t),u=0;u<a.length;u++){var c=a[u],h=c+n;if(h in o)return a=[c],r[t]=h,i?c:h}return i?"":t};var e=n("lXuC"),s=n("0Zk/"),o=document.createElement("div").style,a=["Moz","webkit","O","ms"],r={}},zagf:function(t,i,n){"use strict";i.a=function(t,i,n){var e=t;t instanceof Function&&(e=t.apply(n,i));return e}}});