{"version":3,"file":"bar2.mjs","sources":["../../../../../../packages/components/scrollbar/src/bar.vue"],"sourcesContent":["<template>\r\n  <thumb :move=\"moveX\" :ratio=\"ratioX\" :size=\"width\" :always=\"always\" />\r\n  <thumb\r\n    :move=\"moveY\"\r\n    :ratio=\"ratioY\"\r\n    :size=\"height\"\r\n    vertical\r\n    :always=\"always\"\r\n  />\r\n</template>\r\n<script lang=\"ts\">\r\nimport { defineComponent, ref } from 'vue'\r\nimport Thumb from './thumb.vue'\r\nimport { barProps } from './bar'\r\n\r\nexport default defineComponent({\r\n  components: {\r\n    Thumb,\r\n  },\r\n  props: barProps,\r\n  setup(props) {\r\n    const moveX = ref(0)\r\n    const moveY = ref(0)\r\n    const GAP = 4 // top 2 + bottom 2 of bar instance\r\n\r\n    const handleScroll = (wrap: HTMLDivElement) => {\r\n      if (wrap) {\r\n        const offsetHeight = wrap.offsetHeight - GAP\r\n        const offsetWidth = wrap.offsetWidth - GAP\r\n\r\n        moveY.value = ((wrap.scrollTop * 100) / offsetHeight) * props.ratioY\r\n        moveX.value = ((wrap.scrollLeft * 100) / offsetWidth) * props.ratioX\r\n      }\r\n    }\r\n\r\n    return {\r\n      handleScroll,\r\n      moveX,\r\n      moveY,\r\n    }\r\n  },\r\n})\r\n</script>\r\n"],"names":["_openBlock","_createElementBlock","_Fragment","_createVNode"],"mappings":";;;;;;AACc,EAAA,OAAAA,SAAA,EAAO,EAAAC,kBAAA,CAAAC,QAAA,EAAA,IAAA,EAAA;AAAA,IAAAC,WAAA,CAAU,gBAAM,EAAA;AAAA,MAAG,IAAM,EAAA,IAAA,CAAA,KAAA;AAAA,MAAQ,OAAM,IAAE,CAAA,MAAA;AAAA,MAAA,IAAA,EAAA,IAAA,CAAA,KAAA;MAC5D,MAME,EAAA,IAAA,CAAA,MAAA;AAAA,KAAA,EALC,MAAM,CAAK,EAAA,CAAA,MAAA,EAAA,OAAA,EAAA,MAAA,EAAA,QAAA,CAAA,CAAA;AAAA,IAAAA,WAAA,CACJ,gBAAM,EAAA;AAAA,MACb,IAAM,EAAA,IAAA,CAAA,KAAA;AAAA,MACP,KAAQ,EAAA,IAAA,CAAA,MAAA;AAAA,MACP,MAAM,IAAE,CAAA,MAAA;AAAA,MAAA,QAAA,EAAA,EAAA;;;;;;;;;"}