mirror of
https://github.com/pure-admin/vue-pure-admin.git
synced 2025-06-08 01:17:23 +08:00
2 lines
2.4 KiB
JavaScript
2 lines
2.4 KiB
JavaScript
var $=Object.defineProperty;var i=Object.getOwnPropertySymbols;var w=Object.prototype.hasOwnProperty,L=Object.prototype.propertyIsEnumerable;var h=(t,l,s)=>l in t?$(t,l,{enumerable:!0,configurable:!0,writable:!0,value:s}):t[l]=s,y=(t,l)=>{for(var s in l||(l={}))w.call(l,s)&&h(t,s,l[s]);if(i)for(var s of i(l))L.call(l,s)&&h(t,s,l[s]);return t};import{u as S}from"./hooks-PAfUJewp.js";import{d as A,r as n,al as j,aL as R,aM as N,aj as T,h as r,m as X,j as q,a6 as D,D as V,n as o,Q as z,J}from"./index-1OSFatVP.js";const Q={options:{type:Array,default:()=>[]},modelValue:{type:void 0,require:!1,default:"0"}},W=A({name:"ReSegmented",props:Q,emits:["change","update:modelValue"],setup(t,{emit:l}){const s=n(0),f=n(0),{isDark:g}=j(),b=n(!1),c=n(-1),m=n(""),v=z(),d=R(t.modelValue)?N(t,"modelValue"):n(0);function I({option:e,index:a},u){e.disabled||(u.preventDefault(),R(t.modelValue)?l("update:modelValue",a):d.value=a,m.value="",l("change",{index:a,option:e}))}function M({option:e,index:a},u){u.preventDefault(),c.value=a,e.disabled||d.value===a?m.value="":m.value=g.value?"#1f1f1f":"rgba(0, 0, 0, 0.06)"}function k(e,a){a.preventDefault(),c.value=-1}function p(e=d.value){o(()=>{var u;const a=(u=v==null?void 0:v.proxy)==null?void 0:u.$refs[`labelRef${e}`];s.value=a.clientWidth,f.value=a.offsetLeft,b.value=!0})}T(()=>d.value,e=>{o(()=>{p(e)})},{deep:!0,immediate:!0});const C=()=>t.options.map((e,a)=>r("label",{ref:`labelRef${a}`,class:["pure-segmented-item",(e==null?void 0:e.disabled)&&"pure-segmented-item-disabled"],style:{background:c.value===a?m.value:"",color:!e.disabled&&(d.value===a||c.value===a)?g.value?"rgba(255, 255, 255, 0.85)":"rgba(0,0,0,.88)":""},onMouseenter:u=>M({option:e,index:a},u),onMouseleave:u=>k({option:e,index:a},u),onClick:u=>I({option:e,index:a},u)},[r("input",{type:"radio",name:"segmented"},null),X(r("div",{class:"pure-segmented-item-label"},[e.icon&&!D(e.label)?r("span",{class:"pure-segmented-item-icon",style:{marginRight:e.label?"6px":0}},[V(S(e.icon,y({},e==null?void 0:e.iconAttrs)))]):null,e.label?D(e.label)?V(e.label):r("span",null,[e.label]):null]),[[q("tippy"),{content:e==null?void 0:e.tip,zIndex:41e3}]])]));return()=>r("div",{class:"pure-segmented"},[r("div",{class:"pure-segmented-group"},[r("div",{class:"pure-segmented-item-selected",style:{width:`${s.value}px`,transform:`translateX(${f.value}px)`,display:b.value?"block":"none"}},null),C()])])}}),E=J(W);export{E as R};
|