{"version":3,"file":"popup.vue2.mjs","sources":["../../../../../../packages/components/tooltip/src/popup.vue"],"sourcesContent":["<script lang=\"ts\">\n  import { defineComponent, computed, ref, onUnmounted } from 'vue'\n  import type { StyleValue } from 'vue'\n  import { getNamespace } from '../../../utils/global-config'\n  import Scrollbar from '../../scrollbar/src/scrollbar.vue'\n\n  export default defineComponent({\n    name: 'TooltipPopup',\n    components: {\n      Scrollbar\n    },\n    // eslint-disable-next-line vue/require-prop-types\n    props: ['content', 'effect', 'backgroundColor', 'position', 'popupClass', 'size'],\n    emits: ['close', 'destroy'],\n    setup(props) {\n      const ns = getNamespace('tooltip')\n      const contentCls = computed(() => [\n        ns,\n        `is-${props.effect.value}`,\n        props.size.value && `${ns}--${props.size.value}`,\n        getNamespace('trigger-popup'),\n        props.popupClass.value && props.popupClass.value\n      ])\n      const arrowStyle = computed(() => {\n        const style: StyleValue = {}\n        if (props.backgroundColor.value) {\n          style['--bn-trigger-arrow-background-color'] = props.backgroundColor.value\n        } else {\n          if (props.effect.value === 'dark') {\n            style['--bn-trigger-arrow-background-color'] = 'rgba(0,0,0,.8)'\n          }\n          if (props.effect.value === 'light') {\n            style['--bn-trigger-arrow-background-color'] = '#fff'\n          }\n        }\n        return style\n      })\n      const contentStyle = computed(() => {\n        const style: StyleValue = {}\n        if (props.backgroundColor.value) {\n          style.backgroundColor = props.backgroundColor.value\n        } else {\n          if (props.effect.value === 'dark') {\n            style.color = '#fff'\n            style['background-color'] = 'rgba(0,0,0,.8)'\n          }\n          if (props.effect.value === 'light') {\n            style.color = '#000'\n            style['background-color'] = '#fff'\n            style['box-shadow'] = '0px 8px 40px 0px rgba(100,107,122,0.15)'\n          }\n        }\n        return style\n      })\n\n      const visible = ref(true)\n\n      const changeVisible = (value: boolean) => {\n        visible.value = value\n      }\n\n      onUnmounted(() => {\n        visible.value = false\n      })\n\n      return {\n        ns,\n        contentStyle,\n        contentCls,\n        arrowStyle,\n        visible,\n        changeVisible\n      }\n    }\n  })\n</script>\n\n<template>\n  <transition\n    name=\"bn-fade-in-standard\"\n    appear\n    @before-leave=\"$emit('close')\"\n    @after-leave=\"$emit('destroy')\"\n  >\n    <div v-show=\"visible\" :class=\"contentCls\" :style=\"contentStyle\">\n      <Scrollbar style=\"max-height: 140px\" :class=\"[`${ns}__content`]\">\n        <div>\n          <slot name=\"content\">\n            {{ content.value }}\n          </slot>\n        </div>\n      </Scrollbar>\n\n      <div class=\"arrow\" :style=\"arrowStyle\"></div>\n    </div>\n  </transition>\n</template>\n"],"names":[],"mappings":"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"}