UNPKG

ll-package

Version:

2 lines (1 loc) 3 kB
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const O=require("../../../@babel/runtime/helpers/esm/objectSpread2.js"),t=require("vue"),G=require("../../../@ant-design/icons-vue/es/icons/CloseOutlined.js"),b=require("../../../@ant-design/icons-vue/es/icons/FileTextOutlined.js"),_=require("../_util/classNames.js"),y=require("../_util/transition.js"),B=require("./FloatButton.js"),D=require("../config-provider/hooks/useConfigInject.js"),T=require("./context.js"),A=require("../_util/props-util/index.js"),E=require("./interface.js"),j=require("../_util/canUseDom.js"),I=require("./style/index.js"),L=require("../_util/hooks/useMergedState.js"),R=require("../_util/props-util/initDefaultProps.js"),U=t.defineComponent({compatConfig:{MODE:3},name:"AFloatButtonGroup",inheritAttrs:!1,props:R.default(E.floatButtonGroupProps(),{type:"default",shape:"circle"}),setup(o,$){let{attrs:g,slots:l,emit:i}=$;const{prefixCls:h,direction:x}=D.default(B.floatButtonPrefixCls,o),[N,m]=I.default(h),[s,c]=L.default(!1,{value:t.computed(()=>o.open)}),C=t.ref(null),q=t.ref(null);T.useProvideFloatButtonGroupContext({shape:t.computed(()=>o.shape)});const w={onMouseenter(){var e;c(!0),i("update:open",!0),(e=o.onOpenChange)===null||e===void 0||e.call(o,!0)},onMouseleave(){var e;c(!1),i("update:open",!1),(e=o.onOpenChange)===null||e===void 0||e.call(o,!1)}},P=t.computed(()=>o.trigger==="hover"?w:{}),F=()=>{var e;const n=!s.value;i("update:open",n),(e=o.onOpenChange)===null||e===void 0||e.call(o,n),c(n)},d=e=>{var n,r,u;if(!((n=C.value)===null||n===void 0)&&n.contains(e.target)){!((r=A.findDOMNode(q.value))===null||r===void 0)&&r.contains(e.target)&&F();return}c(!1),i("update:open",!1),(u=o.onOpenChange)===null||u===void 0||u.call(o,!1)};return t.watch(t.computed(()=>o.trigger),e=>{j.default()&&(document.removeEventListener("click",d),e==="click"&&document.addEventListener("click",d))},{immediate:!0}),t.onBeforeUnmount(()=>{document.removeEventListener("click",d)}),()=>{var e;const{shape:n="circle",type:r="default",tooltip:u,description:M,trigger:v}=o,a=`${h.value}-group`,S=_.default(a,m.value,g.class,{[`${a}-rtl`]:x.value==="rtl",[`${a}-${n}`]:n,[`${a}-${n}-shadow`]:!v}),V=_.default(m.value,`${a}-wrap`),k=y.getTransitionProps(`${a}-wrap`);return N(t.createVNode("div",O.default(O.default({ref:C},g),{},{class:S},P.value),[v&&["click","hover"].includes(v)?t.createVNode(t.Fragment,null,[t.createVNode(t.Transition,k,{default:()=>[t.withDirectives(t.createVNode("div",{class:V},[l.default&&l.default()]),[[t.vShow,s.value]])]}),t.createVNode(B.default,{ref:q,type:r,shape:n,tooltip:u,description:M},{icon:()=>{var f,p;return s.value?((f=l.closeIcon)===null||f===void 0?void 0:f.call(l))||t.createVNode(G.default,null,null):((p=l.icon)===null||p===void 0?void 0:p.call(l))||t.createVNode(b.default,null,null)},tooltip:l.tooltip,description:l.description})]):(e=l.default)===null||e===void 0?void 0:e.call(l)]))}}}),z=U;exports.default=z;