{"version":3,"file":"bubble.vue2.cjs","sources":["../../../components/bubble/bubble.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport { computed, ref } from 'vue'\n\nimport { placementWhileList } from '@vexip-ui/hooks'\nimport { useNameHelper, useProps } from '@vexip-ui/config'\nimport { bubbleProps } from './props'\nimport { bubbleTypes } from './symbol'\n\ndefineOptions({ name: 'Bubble' })\n\nconst _props = defineProps(bubbleProps)\nconst props = useProps('bubble', _props, {\n  placement: {\n    default: 'right',\n    validator: value => placementWhileList.includes(value),\n  },\n  type: {\n    default: null,\n    validator: value => bubbleTypes.includes(value),\n  },\n  background: '',\n  shadow: false,\n  contentClass: null,\n})\n\nconst nh = useNameHelper('bubble')\n\nconst wrapper = ref<HTMLElement>()\nconst arrow = ref<HTMLElement>()\n\nconst className = computed(() => {\n  return [\n    nh.b(),\n    nh.bs('vars'),\n    nh.bm(props.placement),\n    {\n      [nh.bm('inherit')]: props.inherit,\n      [nh.bm('background')]: props.background,\n      [nh.bm('shadow')]: props.shadow,\n      [nh.bm(props.type)]: props.type !== 'default',\n    },\n  ]\n})\nconst style = computed(() => {\n  if (props.background) {\n    return {\n      [nh.cv('color')]: nh.gnv('color-white'),\n      [nh.cv('bg-color')]: props.background,\n    }\n  }\n\n  return undefined\n})\n\ndefineExpose({ wrapper, arrow })\n</script>\n\n<template>\n  <div ref=\"wrapper\" :class=\"className\" :style=\"style\">\n    <div\n      :class=\"[nh.be('content'), props.contentClass]\"\n      :style=\"{\n        boxShadow: props.shadow ? `0 0 4px ${props.shadow}` : undefined\n      }\"\n    >\n      <slot></slot>\n    </div>\n    <div ref=\"arrow\" :class=\"nh.be('arrow')\"></div>\n  </div>\n</template>\n"],"names":["_props","__props","props","useProps","value","placementWhileList","bubbleTypes","nh","useNameHelper","wrapper","ref","arrow","className","computed","style","__expose","_createElementBlock","_createElementVNode","_unref","_normalizeStyle","_renderSlot","_ctx","_normalizeClass"],"mappings":"6OAUA,MAAMA,EAASC,EACTC,EAAQC,EAAAA,SAAS,SAAUH,EAAQ,CACvC,UAAW,CACT,QAAS,QACT,UAAWI,GAASC,EAAmB,mBAAA,SAASD,CAAK,CACvD,EACA,KAAM,CACJ,QAAS,KACT,UAAWA,GAASE,EAAY,YAAA,SAASF,CAAK,CAChD,EACA,WAAY,GACZ,OAAQ,GACR,aAAc,IAAA,CACf,EAEKG,EAAKC,gBAAc,QAAQ,EAE3BC,EAAUC,EAAAA,IAAiB,EAC3BC,EAAQD,EAAAA,IAAiB,EAEzBE,EAAYC,EAAAA,SAAS,IAClB,CACLN,EAAG,EAAE,EACLA,EAAG,GAAG,MAAM,EACZA,EAAG,GAAGL,EAAM,SAAS,EACrB,CACE,CAACK,EAAG,GAAG,SAAS,CAAC,EAAGL,EAAM,QAC1B,CAACK,EAAG,GAAG,YAAY,CAAC,EAAGL,EAAM,WAC7B,CAACK,EAAG,GAAG,QAAQ,CAAC,EAAGL,EAAM,OACzB,CAACK,EAAG,GAAGL,EAAM,IAAI,CAAC,EAAGA,EAAM,OAAS,SAAA,CAExC,CACD,EACKY,EAAQD,EAAAA,SAAS,IAAM,CAC3B,GAAIX,EAAM,WACD,MAAA,CACL,CAACK,EAAG,GAAG,OAAO,CAAC,EAAGA,EAAG,IAAI,aAAa,EACtC,CAACA,EAAG,GAAG,UAAU,CAAC,EAAGL,EAAM,UAC7B,CAGK,CACR,EAEY,OAAAa,EAAA,CAAE,QAAAN,EAAS,MAAAE,EAAO,wBAI7BK,EAAA,mBAUM,MAAA,SAVG,UAAJ,IAAIP,EAAW,uBAAOG,EAAS,KAAA,EAAG,uBAAOE,EAAK,KAAA,CAAA,GACjDG,EAAAA,mBAOM,MAAA,CANH,wBAAQC,EAAA,MAAEX,CAAA,EAAC,GAAe,SAAA,EAAAW,EAAA,MAAAhB,CAAA,EAAM,YAAY,CAAA,EAC5C,MAAKiB,EAAAA,eAAA,CAAuB,UAAAD,EAAA,MAAAhB,CAAA,EAAM,OAAM,WAAcgB,EAAAA,SAAM,MAAM,GAAK,WAIxEE,aAAaC,EAAA,OAAA,SAAA,MAEfJ,EAAAA,mBAA+C,MAAA,SAAtC,QAAJ,IAAIN,EAAS,MAAKW,EAAE,eAAAJ,EAAA,MAAEX,CAAA,EAAC,GAAE,OAAA,CAAA"}