{"version":3,"file":"back-top.vue2.mjs","sources":["../../../../../../packages/components/back-top/src/back-top.vue"],"sourcesContent":["<template>\r\n  <a-back-top\r\n    v-if=\"!isHidden\"\r\n    v-bind=\"attrs\"\r\n    :class=\"bem.b()\"\r\n    :visibility-height=\"show === true ? 0 : visibilityHeight\"\r\n    :shape=\"shape\"\r\n    :description=\"shape === 'circle' ? '' : description\"\r\n    :target=\"getTarget\"\r\n  >\r\n    <template\r\n      v-for=\"item in Object.keys($slots).filter((key) => key !== 'icon')\"\r\n      #[item]=\"data\"\r\n    >\r\n      <slot :name=\"item\" v-bind=\"data || {}\"></slot>\r\n    </template>\r\n\r\n    <template v-if=\"icon.iconName || $slots.icon\" #icon>\r\n      <slot name=\"icon\">\r\n        <ll-icon v-bind=\"icon\" />\r\n      </slot>\r\n    </template>\r\n  </a-back-top>\r\n</template>\r\n\r\n<script lang=\"ts\" setup>\r\nimport { createNamespace } from '@ll-plus/utils'\r\nimport { computed, getCurrentInstance, useAttrs } from 'vue'\r\nimport { backTopProps } from './back-top'\r\n\r\ndefineOptions({ name: 'LlBackTop' })\r\n\r\nconst props = defineProps(backTopProps)\r\n\r\nconst bem = createNamespace('back-top')\r\nconst attrs = useAttrs()\r\nconst instance = getCurrentInstance()\r\n\r\nconst isHidden = computed(() => props.show === false)\r\n\r\n// 计算目标容器\r\nconst getTarget = computed(() => {\r\n  if (props.target && typeof props.target === 'function') return props.target\r\n\r\n  // 否则查找最近的可滚动祖先容器\r\n  return () => {\r\n    if (!instance?.proxy?.$el) return window\r\n\r\n    let current: HTMLElement | null = instance.proxy.$el.parentElement\r\n\r\n    while (current && current !== document.documentElement) {\r\n      const style = window.getComputedStyle(current)\r\n      const overflowY = style.overflowY\r\n      const overflow = style.overflow\r\n\r\n      const isScrollable =\r\n        (overflowY === 'scroll' ||\r\n          overflowY === 'auto' ||\r\n          overflow === 'scroll' ||\r\n          overflow === 'auto') &&\r\n        current.scrollHeight > current.clientHeight\r\n\r\n      if (isScrollable) return current\r\n\r\n      current = current.parentElement\r\n    }\r\n\r\n    return window\r\n  }\r\n})\r\n</script>\r\n"],"names":["_createBlock","_mergeProps","_unref","show","visibilityHeight","shape","description","$slots","_withCtx","_renderSlot","_normalizeProps","_guardReactiveProps","icon","_createVNode"],"mappings":";;;;;;;;;;;AAgCA,IAAA,MAAM,KAAA,GAAQ,OAAA;AAEd,IAAA,MAAM,GAAA,GAAM,gBAAgB,UAAU,CAAA;AACtC,IAAA,MAAM,QAAQ,QAAA,EAAS;AACvB,IAAA,MAAM,WAAW,kBAAA,EAAmB;AAEpC,IAAA,MAAM,QAAA,GAAW,QAAA,CAAS,MAAM,KAAA,CAAM,SAAS,KAAK,CAAA;AAGpD,IAAA,MAAM,SAAA,GAAY,SAAS,MAAM;AAC/B,MAAA,IAAI,MAAM,MAAA,IAAU,OAAO,MAAM,MAAA,KAAW,UAAA,SAAmB,KAAA,CAAM,MAAA;AAGrE,MAAA,OAAO,MAAM;AACX,QAAA,IAAI,CAAC,QAAA,EAAU,KAAA,EAAO,GAAA,EAAK,OAAO,MAAA;AAElC,QAAA,IAAI,OAAA,GAA8B,QAAA,CAAS,KAAA,CAAM,GAAA,CAAI,aAAA;AAErD,QAAA,OAAO,OAAA,IAAW,OAAA,KAAY,QAAA,CAAS,eAAA,EAAiB;AACtD,UAAA,MAAM,KAAA,GAAQ,MAAA,CAAO,gBAAA,CAAiB,OAAO,CAAA;AAC7C,UAAA,MAAM,YAAY,KAAA,CAAM,SAAA;AACxB,UAAA,MAAM,WAAW,KAAA,CAAM,QAAA;AAEvB,UAAA,MAAM,YAAA,GAAA,CACH,SAAA,KAAc,QAAA,IACb,SAAA,KAAc,MAAA,IACd,QAAA,KAAa,QAAA,IACb,QAAA,KAAa,MAAA,KACf,OAAA,CAAQ,YAAA,GAAe,OAAA,CAAQ,YAAA;AAEjC,UAAA,IAAI,cAAc,OAAO,OAAA;AAEzB,UAAA,OAAA,GAAU,OAAA,CAAQ,aAAA;AAAA,QACpB;AAEA,QAAA,OAAO,MAAA;AAAA,MACT,CAAA;AAAA,IACF,CAAC,CAAA;;;;cAnEU,QAAA,CAAA,KAAA,iBADTA,WAAA,CAqBa,qBAAA,EArBbC,UAAA,CAqBa,EAAA,GAAA,EAAA,CAAA,EAAA,EAnBHC,KAAA,CAAA,KAAA,CAAA,EAAK;AAAA,QACZ,KAAA,EAAOA,KAAA,CAAA,GAAA,CAAA,CAAI,CAAA,EAAC;AAAA,QACZ,mBAAA,EAAmBC,IAAAA,CAAAA,IAAAA,KAAI,IAAA,GAAA,IAAgBC,IAAAA,CAAAA,gBAAAA;AAAAA,QACvC,OAAOC,IAAAA,CAAAA,KAAAA;AAAAA,QACP,WAAA,EAAaA,IAAAA,CAAAA,KAAAA,KAAK,QAAA,GAAA,KAAqBC,IAAAA,CAAAA,WAAAA;AAAAA,QACvC,QAAQ,SAAA,CAAA;AAAA;;;;mBAGQ,MAAA,CAAO,IAAA,CAAKC,IAAAA,CAAAA,MAAM,CAAA,CAAE,MAAA,CAAM,CAAE,GAAA,KAAQ,GAAA,KAAG,MAAA,CAAA,EAAA,CAA/C,IAAA,KAAI;;kBACV,IAAA;AAAA,YAED,EAAA,EAAAC,OAAA,CAAA,CAFS,IAAA,KAAI;AAAA,cAEbC,UAAA,CAA8C,IAAA,CAAA,MAAA,EAAjC,IAAA,EAAIC,cAAA,CAAAC,mBAAU,IAAA,IAAI,EAAA,CAAA,CAAA;AAAA;;;QAGjBC,IAAAA,CAAAA,IAAAA,CAAK,QAAA,IAAYL,IAAAA,CAAAA,OAAO,IAAA;gBAAO,MAAA;AAAA,sBAC7C,MAEO;AAAA,YAFPE,WAEO,IAAA,qBAFP,MAEO;AAAA,cADLI,WAAA;AAAA,gBAAyB,kBAAA;AAAA,kDAARD,IAAAA,CAAAA,IAAI,CAAA,CAAA;AAAA,gBAAA,IAAA;AAAA,gBAAA;AAAA;AAAA;AAAA;;;;;;;;;;;"}