{"version":3,"file":"bar2.mjs","sources":["../../../../../../packages/components/scrollbar/src/bar.vue"],"sourcesContent":["<template>\n  <thumb :move=\"moveX\" :ratio=\"ratioX\" :size=\"width\" :always=\"always\" />\n  <thumb\n    :move=\"moveY\"\n    :ratio=\"ratioY\"\n    :size=\"height\"\n    vertical\n    :always=\"always\"\n  />\n</template>\n<script lang=\"ts\">\nimport { defineComponent, ref } from 'vue'\nimport Thumb from './thumb.vue'\nimport { barProps } from './bar'\n\nexport default defineComponent({\n  components: {\n    Thumb,\n  },\n  props: barProps,\n  setup(props) {\n    const moveX = ref(0)\n    const moveY = ref(0)\n    const GAP = 4 // top 2 + bottom 2 of bar instance\n\n    const handleScroll = (wrap: HTMLDivElement) => {\n      if (wrap) {\n        const offsetHeight = wrap.offsetHeight - GAP\n        const offsetWidth = wrap.offsetWidth - GAP\n\n        moveY.value = ((wrap.scrollTop * 100) / offsetHeight) * props.ratioY\n        moveX.value = ((wrap.scrollLeft * 100) / offsetWidth) * props.ratioX\n      }\n    }\n\n    return {\n      handleScroll,\n      moveX,\n      moveY,\n    }\n  },\n})\n</script>\n"],"names":["_openBlock","_createElementBlock"],"mappings":";;;;;AAeA,MAAK,YAAa,gBAAa;AAAA,EAC7B,YAAY;AAAA,IACV;AAAA;AAAA,EAEF,OAAO;AAAA,EACP,MAAM,OAAO;AACX,UAAM,QAAQ,IAAI;AAClB,UAAM,QAAQ,IAAI;AAClB,UAAM,MAAM;AAEZ,UAAM,eAAe,CAAC,SAAyB;AAC7C,UAAI,MAAM;AACR,cAAM,eAAe,KAAK,eAAe;AACzC,cAAM,cAAc,KAAK,cAAc;AAEvC,cAAM,QAAU,KAAK,YAAY,MAAO,eAAgB,MAAM;AAC9D,cAAM,QAAU,KAAK,aAAa,MAAO,cAAe,MAAM;AAAA;AAAA;AAIlE,WAAO;AAAA,MACL;AAAA,MACA;AAAA,MACA;AAAA;AAAA;AAAA;;;SArCJA,aAAsEC;AAAA,gBAAxD,kBAAK;AAAA,MAAG,MAAK,KAAE;AAAA,MAAS,OAAM;AAAA,MAAQ,MAAM,KAAE;AAAA;OAC5D,SAME;AAAA,gBALO,kBAAK;AAAA,MACX,MAAK,KAAE;AAAA,MACP,OAAM;AAAA,MACP;AAAA,MACC,UAAQ;AAAA;;;;;;;;"}