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 w=Object.defineProperty;var i=Object.getOwnPropertySymbols;var C=Object.prototype.hasOwnProperty,S=Object.prototype.propertyIsEnumerable;var h=(t,l,s)=>l in t?w(t,l,{enumerable:!0,configurable:!0,writable:!0,value:s}):t[l]=s,y=(t,l)=>{for(var s in l||(l={}))C.call(l,s)&&h(t,s,l[s]);if(i)for(var s of i(l))S.call(l,s)&&h(t,s,l[s]);return t};import{u as A}from"./hooks-BdvdEVJ4.js";import{d as L,r as n,ao as X,aT as R,aU as N,a7 as T,i as r,m as j,j as q,a5 as o,D,n as I,P as z,M as P}from"./index-CXGgt5Tg.js";const U={options:{type:Array,default:()=>[]},modelValue:{type:void 0,require:!1,default:"0"}},W=L({name:"ReSegmented",props:U,emits:["change","update:modelValue"],setup(t,{emit:l}){const s=n(0),f=n(0),{isDark:g}=X(),b=n(!1),c=n(-1),m=n(""),v=z(),d=R(t.modelValue)?N(t,"modelValue"):n(0);function M({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 V({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){I(()=>{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=>{I(()=>{p(e)})},{deep:!0,immediate:!0});const $=()=>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=>V({option:e,index:a},u),onMouseleave:u=>k({option:e,index:a},u),onClick:u=>M({option:e,index:a},u)},[r("input",{type:"radio",name:"segmented"},null),j(r("div",{class:"pure-segmented-item-label"},[e.icon&&!o(e.label)?r("span",{class:"pure-segmented-item-icon",style:{marginRight:e.label?"6px":0}},[D(A(e.icon,y({},e==null?void 0:e.iconAttrs)))]):null,e.label?o(e.label)?D(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),$()])])}}),F=P(W);export{F as R};
|