EASYAIuniappNewUI/dist/build/mp-weixin/components/firstui/fui-tabs/fui-tabs.js
2025-02-08 18:50:38 +08:00

2 lines
3.6 KiB
JavaScript

"use strict";const e=require("../../../common/vendor.js"),t={name:"fui-tabs",emits:["change"],options:{virtualHost:!0},props:{tabs:{type:Array,default:()=>[]},nameKey:{type:String,default:"name"},badgeKey:{type:String,default:"badge"},disabledKey:{type:String,default:"disabled"},current:{type:Number,default:0},scroll:{type:Boolean,default:!1},height:{type:[Number,String],default:96},background:{type:String,default:"#fff"},size:{type:[Number,String],default:28},color:{type:String,default:""},fontWeight:{type:[Number,String],default:"normal"},selectedSize:{type:[Number,String],default:32},selectedColor:{type:String,default:""},selectedFontWeight:{type:[Number,String],default:500},scale:{type:[Number,String],default:1.2},badgeColor:{type:String,default:"#fff"},badgeBackground:{type:String,default:""},isDot:{type:Boolean,default:!1},isSlider:{type:Boolean,default:!0},sliderHeight:{type:[Number,String],default:5},sliderBackground:{type:String,default:""},sliderRadius:{type:[Number,String],default:-1},padding:{type:[Number,String],default:0},bottom:{type:[Number,String],default:0},short:{type:Boolean,default:!0},center:{type:Boolean,default:!1},isFixed:{type:Boolean,default:!1},isSticky:{type:Boolean,default:!1},top:{type:[Number,String],default:0},alignLeft:{type:Boolean,default:!1},direction:{type:String,default:"row"},itemPadding:{type:[Number,String],default:32},zIndex:{type:[Number,String],default:996}},watch:{tabs(e){this.initData(e)},current(e,t){this.switchTab(e)}},created(){this.initData(this.tabs)},computed:{getSelectedColor(){return this.selectedColor},getSliderBgColor(){return this.sliderBackground},getBadgeBgColor(){return this.badgeBackground}},data:()=>({vals:[],scrollInto:"",tabIndex:0,isNvue:!1}),methods:{getId:()=>`fui_${Math.ceil(1e6*Math.random()).toString(36)}`,initData(e){e&&e.length>0&&("object"==typeof e[0]?e.map((e=>{const t=this.getId();e.fui_s_id=t})):e=e.map((e=>{const t=this.getId();return{[this.nameKey]:e,fui_s_id:t}})),this.vals=e,this.$nextTick((()=>{setTimeout((()=>{this.switchTab(this.current)}),50)})))},switchTab(e){const t={...this.vals[e]};if(this.tabIndex===e||t[this.disabledKey])return;this.tabIndex=e;let i=e-1<0?0:e-1;this.scrollInto=this.vals[i].fui_s_id,delete t.fui_s_id,this.$emit("change",{index:e,...t})}}};const i=e._export_sfc(t,[["render",function(t,i,d,a,r,l){return{a:e.f(r.vals,((t,i,a)=>e.e(d.isSlider?{a:d.short?1:"",b:d.short?"":1,c:l.getSliderBgColor?"":1,d:d.sliderHeight+"rpx",e:l.getSliderBgColor,f:-1==d.sliderRadius?d.sliderHeight+"rpx":d.sliderRadius+"rpx",g:`scale(${r.tabIndex===i?r.isNvue?1:d.scale:r.isNvue?1e-5:0})`,h:d.center?1:"",i:d.bottom+"rpx",j:`-${d.padding}rpx`,k:`-${d.padding}rpx`}:{},{l:t.icon},t.icon?{m:"column"===d.direction?1:"",n:r.tabIndex===i&&t.selectedIcon?t.selectedIcon:t.icon}:{},{o:e.t(t[d.nameKey]),p:t[d.badgeKey]},t[d.badgeKey]?{q:e.t(d.isDot?"":t[d.badgeKey]),r:l.getBadgeBgColor?"":1,s:d.isDot?1:"",t:d.isDot?"":1,v:d.badgeColor,w:l.getBadgeBgColor}:{},{x:l.getSelectedColor||r.tabIndex!==i?"":1,y:d.color||r.tabIndex===i?"":1,z:(r.tabIndex===i&&r.isNvue?d.selectedSize:d.size)+"rpx",A:r.tabIndex===i?l.getSelectedColor:d.color,B:r.tabIndex===i?d.selectedFontWeight:d.fontWeight,C:`scale(${r.tabIndex!==i||r.isNvue?1:d.scale})`,D:t[d.disabledKey]?1:"",E:"column"===d.direction&&t.icon?1:"",F:i,G:t.fui_s_id,H:e.o((e=>l.switchTab(i)),i)}))),b:d.isSlider,c:d.height+"rpx",d:d.alignLeft?"":1,e:d.itemPadding+"rpx",f:d.itemPadding+"rpx",g:d.alignLeft?"":1,h:d.isFixed&&!d.isSticky?1:"",i:d.isSticky?1:"",j:d.scroll,k:r.scrollInto,l:d.background,m:d.isFixed||d.isSticky?d.zIndex:1,n:d.isFixed||d.isSticky?d.top+"px":"auto"}}],["__scopeId","data-v-ec2f4767"]]);wx.createComponent(i);