import e from"./warning.mjs";import{filterEmpty as t}from"./props-util/index.mjs";import{Comment as n,Fragment as r,cloneVNode as i,isVNode as a,render as o}from"vue";function s(n,r={},a=!0,o=!1){let s=n;if(Array.isArray(n)&&(s=t(n)[0]),!s)return null;let c=i(s,r,o);return c.props=a?{...c.props,...r}:c.props,e(typeof c.props.class!=`object`,`class must be string`),c}function c(e,t={},n=!0){return e.map(e=>s(e,t,n))}function l(e,t,n){o(i(e,{...t}),n)}var u=e=>(e||[]).some(e=>!a(e)||!(e.type===n||e.type===r&&!u(e.children)))?e:null;function d(e,t,n,r){let i=e[t]?.(n);return u(i)?i:r?.()}export{s as cloneElement,c as cloneVNodes,d as customRenderSlot,l as triggerVNodeUpdate};