import{arrayType as e,booleanType as t,functionType as n,someType as r,stringType as i}from"../_util/type.mjs";import a from"../_util/classNames.mjs";import o from"../_util/omit.mjs";import s from"../_util/props-util/initDefaultProps.mjs";import{useToken as c}from"../theme/internal.mjs";import l from"../config-provider/hooks/useConfigInject.mjs";import u from"../_util/hooks/useBreakpoint.mjs";import d from"../tooltip/index.mjs";import f from"../progress/index.mjs";import p,{VcStepProps as m}from"../vc-steps/Step.mjs";import h from"../vc-steps/index.mjs";import g from"./style/index.mjs";import{computed as _,createVNode as v,defineComponent as y}from"vue";import{CheckOutlined as b,CloseOutlined as x}from"@antsoo-lib/icons";var S=()=>({prefixCls:String,iconPrefix:String,current:Number,initial:Number,percent:Number,responsive:t(),items:e(),labelPlacement:i(),status:i(),size:i(),direction:i(),progressDot:r([Boolean,Function]),type:i(),onChange:n(),"onUpdate:current":n()}),C=y({compatConfig:{MODE:3},name:`ASteps`,inheritAttrs:!1,props:s(S(),{current:0,responsive:!0,labelPlacement:`horizontal`}),slots:Object,setup(e,{attrs:t,slots:n,emit:r}){let{prefixCls:i,direction:s,configProvider:p}=l(`steps`,e),[m,y]=g(i),[,S]=c(),C=u(),w=_(()=>e.responsive&&C.value.xs?`vertical`:e.direction),T=_(()=>p.getPrefixCls(``,e.iconPrefix)),E=e=>{r(`update:current`,e),r(`change`,e)},D=_(()=>e.type===`inline`),O=_(()=>D.value?void 0:e.percent),k=({node:t,status:n})=>{if(n===`process`&&e.percent!==void 0){let n=e.size===`small`?S.value.controlHeight:S.value.controlHeightLG;return v(`div`,{class:`${i.value}-progress-icon`},[v(f,{type:`circle`,percent:O.value,size:n,strokeWidth:4,format:()=>null},null),t])}return t},A=_(()=>({finish:v(b,{class:`${i.value}-finish-icon`},null),error:v(x,{class:`${i.value}-error-icon`},null)}));return()=>{let r=a({[`${i.value}-rtl`]:s.value===`rtl`,[`${i.value}-with-progress`]:O.value!==void 0},t.class,y.value),c=(e,t)=>e.description?v(d,{title:e.description},{default:()=>[t]}):t;return m(v(h,{icons:A.value,...t,...o(e,[`percent`,`responsive`]),items:e.items,direction:w.value,prefixCls:i.value,iconPrefix:T.value,class:r,onChange:E,isInline:D.value,itemRender:D.value?c:void 0},{stepIcon:k,...n}))}}}),w=y({compatConfig:{MODE:3},...p,name:`AStep`,props:m()}),T=Object.assign(C,{Step:w,install:e=>(e.component(C.name,C),e.component(w.name,w),e)});export{w as Step,T as default,S as stepsProps};