2 lines
7.7 KiB
JavaScript
2 lines
7.7 KiB
JavaScript
|
import{l as e,o as t,c as a,w as s,a as l,t as i,s as c,b as o,p as n,e as r,K as u,N as d,A,F as h,m,i as p,v as f,n as g,u as y,f as _}from"./index-CZsuXyof.js";import{Z as C}from"./uni-cloud.es.t_RKYAwE.js";import{_ as S}from"./uni-icons.CE6FQOeI.js";import{r as b}from"./uni-app.es.Cv5-J_i3.js";import{_ as x}from"./_plugin-vue_export-helper.BCo6x5W8.js";const k="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAAAXNSR0IArs4c6QAAAARzQklUCAgICHwIZIgAAAEgSURBVDiNpdQxS0JhFMbxnyJoYIviFAiNrU0OLuHSVhAufYLWaBeivbEP0dJWoFMQBWFLS/QBQjCbMsdqeF/Brl2y67Pd8977fx/Oec5lXmUcoItXfOId9zjG2i/fzGkHL7hEG3WUUEMLZxihg1wa5ChCtv64rI5bnKOQ5mR9EdvRZQ+ns8Xygk6SqmGAxrRwIPQkiw5xMX3oCo3NogrGWCGMuJ4RBE/YzKOK4RKgISp5fGB1CVAZE0JiWxkhxWikmscV9jKCtvGIN8LujGRreB/7s4WOEPvSPyAnuEkWc8Lu9ITELgL5kpK/grA7AyGxlcR5UdjJfnTSju82025rCLEfC2G7xoMwnTs/e9KcwlL/KULsN6KzCZ7F6STUxO43eTs60FaTQMEAAAAASUVORK5CYII=";const D=x({name:"uni-data-select",mixins:[C.mixinDatacom||{}],props:{localdata:{type:Array,default:()=>[]},value:{type:[String,Number],default:""},modelValue:{type:[String,Number],default:""},label:{type:String,default:""},placeholder:{type:String,default:"请选择"},emptyTips:{type:String,default:"无选项"},clear:{type:Boolean,default:!0},defItem:{type:Number,default:0},disabled:{type:Boolean,default:!1},format:{type:String,default:""},placement:{type:String,default:"bottom"}},data:()=>({showSelector:!1,current:"",mixinDatacomResData:[],apps:[],channels:[],cacheKey:"uni-data-select-lastSelectedValue"}),created(){this.debounceGet=this.debounce((()=>{this.query()}),300),this.collection&&!this.localdata.length&&this.debounceGet()},computed:{typePlaceholder(){const e=this.placeholder,t={"opendb-stat-app-versions":"版本","opendb-app-channels":"渠道","opendb-app-list":"应用"}[this.collection];return t?e+t:e},valueCom(){return this.modelValue},textShow(){let e=this.current;return e.length>10?e.slice(0,25)+"...":e},getOffsetByPlacement(){switch(this.placement){case"top":return"bottom:calc(100% + 12px);";case"bottom":return"top:calc(100% + 12px);"}}},watch:{localdata:{immediate:!0,handler(e,t){Array.isArray(e)&&t!==e&&(this.mixinDatacomResData=e)}},valueCom(e,t){this.initDefVal()},mixinDatacomResData:{immediate:!0,handler(e){e.length&&this.initDefVal()}}},methods:{debounce(e,t=100){let a=null;return function(...s){a&&clearTimeout(a),a=setTimeout((()=>{e.apply(this,s)}),t)}},query(){this.mixinDatacomEasyGet()},onMixinDatacomPropsChange(){this.collection&&this.debounceGet()},initDefVal(){let e="";if(!this.valueCom&&0!==this.valueCom||this.isDisabled(this.valueCom)){let t;if(this.collection&&(t=this.getCache()),t||0===t)e=t;else{let t="";this.defItem>0&&this.defItem<=this.mixinDatacomResData.length&&(t=this.mixinDatacomResData[this.defItem-1].value),e=t}(e||0===e)&&this.emit(e)}else e=this.valueCom;const t=this.mixinDatacomResData.find((t=>t.value===e));this.current=t?this.formatItemName(t):""},isDisabled(e){let t=!1;return this.mixinDatacomResData.forEach((a=>{a.value===e&&(t=a.disable)})),t},clearVal(){this.emit(""),this.collection&&this.removeCache()},change(e){e.disable||(this.showSelector=!1,this.current=this.formatItemName(e),this.emit(e.value))},emit(e){this.$emit("input",e),this.$emit("update:modelValue",e),this.$emit("change",e),this.collection&&this.setCache(e)},toggleSelector(){this.disabled||(this.showSelector=!this.showSelector)},formatItemName(e){let{text:t,value:a,channel_code:s}=e;if(s=s?`(${s})`:"",this.format){let t="";t=this.format;for(let a in e)t=t.replace(new RegExp(`{${a}}`,"g"),e[a]);return t}return this.collection.indexOf("app-list")>0?`${t}(${a})`:t||`未命名${s}`},getLoadData(){return this.mixinDatacomResData},getCurrentCacheKey(){return this.collection},getCache(e=this.getCurrentCacheKey()){return(uni.getStorageSync(this.cacheKey)||{})[e]},setCache(e,t=this.getCurrentCacheKey()){let a=uni.getStorageSync(this.cacheKey)||{};a[t]=e,uni.setStorageSync(this.cacheKey,a)},removeCache(e=this.getCurrentCacheKey()){let t=uni.getStorageSync(this.cacheKey)||{};delete t[e],uni.setStorageSync(this.cacheKey,t)}}},[["render",function
|