{"version":3,"sources":["webpack:///./node_modules/quasar/src/components/scroll-area/QScrollArea.js","webpack:///./node_modules/quasar/src/components/scroll-observer/QScrollObserver.js"],"names":["axisList","dirProps","vertical","offset","scroll","dir","dist","horizontal","panOpts","prevent","mouse","mouseAllDir","getMinThumbSize","size","Math","ceil","createComponent","name","props","useDarkProps","thumbStyle","Object","verticalThumbStyle","horizontalThumbStyle","barStyle","Array","String","verticalBarStyle","horizontalBarStyle","contentStyle","contentActiveStyle","delay","type","Number","default","visible","Boolean","tabindex","onScroll","Function","setup","slots","emit","tempShowing","ref","panning","hover","container","position","proxy","getCurrentInstance","isDark","useDark","$q","timer","panRefPos","targetRef","classes","computed","value","percentage","diff","p","between","round","thumbHidden","thumbStart","thumbSize","style","top","height","thumbClass","barClass","abs","lang","rtl","width","mainStyle","thumbVertDir","TouchPan","e","onPanThumb","thumbHorizDir","getScroll","info","forEach","axis","data","emitScroll","debounce","localSetScrollPosition","duration","includes","console","error","fn","setVerticalScrollPosition","setHorizontalScrollPosition","updateContainer","change","startTimer","updateScroll","left","updateScrollSize","isFirst","isFinal","dProp","containerSize","multiplier","distance","pos","direction","setScroll","onMousedown","evt","dispatchEvent","MouseEvent","onVerticalMousedown","onHorizontalMousedown","clearTimeout","setTimeout","mouseEventTimer","onMouseenter","platform","is","ios","onMouseleave","scrollPosition","watch","onDeactivated","onActivated","scrollTarget","onBeforeUnmount","cancel","assign","getScrollTarget","getScrollPosition","getScrollPercentage","setScrollPosition","setScrollPercentage","h","class","hMergeSlot","QResizeObserver","onResize","QScrollObserver","withDirectives","passive","listenOpts","axisValues","validator","v","emits","directionChanged","delta","inflectionPoint","clearTimer","localScrollTarget","parentEl","unconfigureScrollTarget","configureScrollTarget","emitEvent","max","getVerticalScrollPosition","getHorizontalScrollPosition","curDir","addEventListener","trigger","removeEventListener","immediately","requestAnimationFrame","cancelAnimationFrame","onMounted","$el","parentNode","getPosition","noop"],"mappings":"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","file":"js/chunk-681f5dd0.1b7af851.js","sourcesContent":["import { h, ref, computed, watch, withDirectives, onActivated, onDeactivated, onBeforeUnmount, getCurrentInstance } from 'vue'\n\nimport useDark, { useDarkProps } from '../../composables/private/use-dark.js'\n\nimport QResizeObserver from '../resize-observer/QResizeObserver.js'\nimport QScrollObserver from '../scroll-observer/QScrollObserver.js'\n\nimport TouchPan from '../../directives/touch-pan/TouchPan.js'\n\nimport { createComponent } from '../../utils/private/create.js'\nimport { between } from '../../utils/format.js'\nimport { setVerticalScrollPosition, setHorizontalScrollPosition } from '../../utils/scroll.js'\nimport { hMergeSlot } from '../../utils/private/render.js'\nimport debounce from '../../utils/debounce.js'\n\nconst axisList = [ 'vertical', 'horizontal' ]\nconst dirProps = {\n vertical: { offset: 'offsetY', scroll: 'scrollTop', dir: 'down', dist: 'y' },\n horizontal: { offset: 'offsetX', scroll: 'scrollLeft', dir: 'right', dist: 'x' }\n}\nconst panOpts = {\n prevent: true,\n mouse: true,\n mouseAllDir: true\n}\n\nconst getMinThumbSize = size => (size >= 250 ? 50 : Math.ceil(size / 5))\n\nexport default createComponent({\n name: 'QScrollArea',\n\n props: {\n ...useDarkProps,\n\n thumbStyle: Object,\n verticalThumbStyle: Object,\n horizontalThumbStyle: Object,\n\n barStyle: [ Array, String, Object ],\n verticalBarStyle: [ Array, String, Object ],\n horizontalBarStyle: [ Array, String, Object ],\n\n contentStyle: [ Array, String, Object ],\n contentActiveStyle: [ Array, String, Object ],\n\n delay: {\n type: [ String, Number ],\n default: 1000\n },\n\n visible: {\n type: Boolean,\n default: null\n },\n\n tabindex: [ String, Number ],\n\n onScroll: Function\n },\n\n setup (props, { slots, emit }) {\n // state management\n const tempShowing = ref(false)\n const panning = ref(false)\n const hover = ref(false)\n\n // other...\n const container = {\n vertical: ref(0),\n horizontal: ref(0)\n }\n\n const scroll = {\n vertical: {\n ref: ref(null),\n position: ref(0),\n size: ref(0)\n },\n\n horizontal: {\n ref: ref(null),\n position: ref(0),\n size: ref(0)\n }\n }\n\n const { proxy } = getCurrentInstance()\n\n const isDark = useDark(props, proxy.$q)\n\n let timer = null, panRefPos\n\n const targetRef = ref(null)\n\n const classes = computed(() =>\n 'q-scrollarea'\n + (isDark.value === true ? ' q-scrollarea--dark' : '')\n )\n\n scroll.vertical.percentage = computed(() => {\n const diff = scroll.vertical.size.value - container.vertical.value\n if (diff <= 0) { return 0 }\n const p = between(scroll.vertical.position.value / diff, 0, 1)\n return Math.round(p * 10000) / 10000\n })\n scroll.vertical.thumbHidden = computed(() =>\n (\n (props.visible === null ? hover.value : props.visible) !== true\n && tempShowing.value === false\n && panning.value === false\n ) || scroll.vertical.size.value <= container.vertical.value + 1\n )\n scroll.vertical.thumbStart = computed(() =>\n scroll.vertical.percentage.value * (container.vertical.value - scroll.vertical.thumbSize.value)\n )\n scroll.vertical.thumbSize = computed(() =>\n Math.round(\n between(\n container.vertical.value * container.vertical.value / scroll.vertical.size.value,\n getMinThumbSize(container.vertical.value),\n container.vertical.value\n )\n )\n )\n scroll.vertical.style = computed(() => {\n return {\n ...props.thumbStyle,\n ...props.verticalThumbStyle,\n top: `${ scroll.vertical.thumbStart.value }px`,\n height: `${ scroll.vertical.thumbSize.value }px`\n }\n })\n scroll.vertical.thumbClass = computed(() =>\n 'q-scrollarea__thumb q-scrollarea__thumb--v absolute-right'\n + (scroll.vertical.thumbHidden.value === true ? ' q-scrollarea__thumb--invisible' : '')\n )\n scroll.vertical.barClass = computed(() =>\n 'q-scrollarea__bar q-scrollarea__bar--v absolute-right'\n + (scroll.vertical.thumbHidden.value === true ? ' q-scrollarea__bar--invisible' : '')\n )\n\n scroll.horizontal.percentage = computed(() => {\n const diff = scroll.horizontal.size.value - container.horizontal.value\n if (diff <= 0) { return 0 }\n const p = between(Math.abs(scroll.horizontal.position.value) / diff, 0, 1)\n return Math.round(p * 10000) / 10000\n })\n scroll.horizontal.thumbHidden = computed(() =>\n (\n (props.visible === null ? hover.value : props.visible) !== true\n && tempShowing.value === false\n && panning.value === false\n ) || scroll.horizontal.size.value <= container.horizontal.value + 1\n )\n scroll.horizontal.thumbStart = computed(() =>\n scroll.horizontal.percentage.value * (container.horizontal.value - scroll.horizontal.thumbSize.value)\n )\n scroll.horizontal.thumbSize = computed(() =>\n Math.round(\n between(\n container.horizontal.value * container.horizontal.value / scroll.horizontal.size.value,\n getMinThumbSize(container.horizontal.value),\n container.horizontal.value\n )\n )\n )\n scroll.horizontal.style = computed(() => {\n return {\n ...props.thumbStyle,\n ...props.horizontalThumbStyle,\n [ proxy.$q.lang.rtl === true ? 'right' : 'left' ]: `${ scroll.horizontal.thumbStart.value }px`,\n width: `${ scroll.horizontal.thumbSize.value }px`\n }\n })\n scroll.horizontal.thumbClass = computed(() =>\n 'q-scrollarea__thumb q-scrollarea__thumb--h absolute-bottom'\n + (scroll.horizontal.thumbHidden.value === true ? ' q-scrollarea__thumb--invisible' : '')\n )\n scroll.horizontal.barClass = computed(() =>\n 'q-scrollarea__bar q-scrollarea__bar--h absolute-bottom'\n + (scroll.horizontal.thumbHidden.value === true ? ' q-scrollarea__bar--invisible' : '')\n )\n\n const mainStyle = computed(() => (\n scroll.vertical.thumbHidden.value === true && scroll.horizontal.thumbHidden.value === true\n ? props.contentStyle\n : props.contentActiveStyle\n ))\n\n const thumbVertDir = [ [\n TouchPan,\n e => { onPanThumb(e, 'vertical') },\n void 0,\n { vertical: true, ...panOpts }\n ] ]\n\n const thumbHorizDir = [ [\n TouchPan,\n e => { onPanThumb(e, 'horizontal') },\n void 0,\n { horizontal: true, ...panOpts }\n ] ]\n\n function getScroll () {\n const info = {}\n\n axisList.forEach(axis => {\n const data = scroll[ axis ]\n\n info[ axis + 'Position' ] = data.position.value\n info[ axis + 'Percentage' ] = data.percentage.value\n info[ axis + 'Size' ] = data.size.value\n info[ axis + 'ContainerSize' ] = container[ axis ].value\n })\n\n return info\n }\n\n // we have lots of listeners, so\n // ensure we're not emitting same info\n // multiple times\n const emitScroll = debounce(() => {\n const info = getScroll()\n info.ref = proxy\n emit('scroll', info)\n }, 0)\n\n function localSetScrollPosition (axis, offset, duration) {\n if (axisList.includes(axis) === false) {\n console.error('[QScrollArea]: wrong first param of setScrollPosition (vertical/horizontal)')\n return\n }\n\n const fn = axis === 'vertical'\n ? setVerticalScrollPosition\n : setHorizontalScrollPosition\n\n fn(targetRef.value, offset, duration)\n }\n\n function updateContainer ({ height, width }) {\n let change = false\n\n if (container.vertical.value !== height) {\n container.vertical.value = height\n change = true\n }\n\n if (container.horizontal.value !== width) {\n container.horizontal.value = width\n change = true\n }\n\n change === true && startTimer()\n }\n\n function updateScroll ({ position }) {\n let change = false\n\n if (scroll.vertical.position.value !== position.top) {\n scroll.vertical.position.value = position.top\n change = true\n }\n\n if (scroll.horizontal.position.value !== position.left) {\n scroll.horizontal.position.value = position.left\n change = true\n }\n\n change === true && startTimer()\n }\n\n function updateScrollSize ({ height, width }) {\n if (scroll.horizontal.size.value !== width) {\n scroll.horizontal.size.value = width\n startTimer()\n }\n\n if (scroll.vertical.size.value !== height) {\n scroll.vertical.size.value = height\n startTimer()\n }\n }\n\n function onPanThumb (e, axis) {\n const data = scroll[ axis ]\n\n if (e.isFirst === true) {\n if (data.thumbHidden.value === true) {\n return\n }\n\n panRefPos = data.position.value\n panning.value = true\n }\n else if (panning.value !== true) {\n return\n }\n\n if (e.isFinal === true) {\n panning.value = false\n }\n\n const dProp = dirProps[ axis ]\n const containerSize = container[ axis ].value\n\n const multiplier = (data.size.value - containerSize) / (containerSize - data.thumbSize.value)\n const distance = e.distance[ dProp.dist ]\n const pos = panRefPos + (e.direction === dProp.dir ? 1 : -1) * distance * multiplier\n\n setScroll(pos, axis)\n }\n\n function onMousedown (evt, axis) {\n const data = scroll[ axis ]\n\n if (data.thumbHidden.value !== true) {\n const offset = evt[ dirProps[ axis ].offset ]\n if (offset < data.thumbStart.value || offset > data.thumbStart.value + data.thumbSize.value) {\n const pos = offset - data.thumbSize.value / 2\n setScroll(pos / container[ axis ].value * data.size.value, axis)\n }\n\n // activate thumb pan\n if (data.ref.value !== null) {\n data.ref.value.dispatchEvent(new MouseEvent(evt.type, evt))\n }\n }\n }\n\n function onVerticalMousedown (evt) {\n onMousedown(evt, 'vertical')\n }\n\n function onHorizontalMousedown (evt) {\n onMousedown(evt, 'horizontal')\n }\n\n function startTimer () {\n tempShowing.value = true\n\n timer !== null && clearTimeout(timer)\n timer = setTimeout(() => {\n timer = null\n tempShowing.value = false\n }, props.delay)\n\n props.onScroll !== void 0 && emitScroll()\n }\n\n function setScroll (offset, axis) {\n targetRef.value[ dirProps[ axis ].scroll ] = offset\n }\n\n let mouseEventTimer = null\n\n function onMouseenter () {\n if (mouseEventTimer !== null) {\n clearTimeout(mouseEventTimer)\n }\n\n // setTimeout needed for iOS; see ticket #16210\n mouseEventTimer = setTimeout(() => {\n mouseEventTimer = null\n hover.value = true\n }, proxy.$q.platform.is.ios ? 50 : 0)\n }\n\n function onMouseleave () {\n if (mouseEventTimer !== null) {\n clearTimeout(mouseEventTimer)\n mouseEventTimer = null\n }\n\n hover.value = false\n }\n\n let scrollPosition = null\n\n watch(() => proxy.$q.lang.rtl, rtl => {\n if (targetRef.value !== null) {\n setHorizontalScrollPosition(\n targetRef.value,\n Math.abs(scroll.horizontal.position.value) * (rtl === true ? -1 : 1)\n )\n }\n })\n\n onDeactivated(() => {\n scrollPosition = {\n top: scroll.vertical.position.value,\n left: scroll.horizontal.position.value\n }\n })\n\n onActivated(() => {\n if (scrollPosition === null) return\n\n const scrollTarget = targetRef.value\n\n if (scrollTarget !== null) {\n setHorizontalScrollPosition(scrollTarget, scrollPosition.left)\n setVerticalScrollPosition(scrollTarget, scrollPosition.top)\n }\n })\n\n onBeforeUnmount(emitScroll.cancel)\n\n // expose public methods\n Object.assign(proxy, {\n getScrollTarget: () => targetRef.value,\n getScroll,\n getScrollPosition: () => ({\n top: scroll.vertical.position.value,\n left: scroll.horizontal.position.value\n }),\n getScrollPercentage: () => ({\n top: scroll.vertical.percentage.value,\n left: scroll.horizontal.percentage.value\n }),\n setScrollPosition: localSetScrollPosition,\n setScrollPercentage (axis, percentage, duration) {\n localSetScrollPosition(\n axis,\n percentage\n * (scroll[ axis ].size.value - container[ axis ].value)\n * (axis === 'horizontal' && proxy.$q.lang.rtl === true ? -1 : 1),\n duration\n )\n }\n })\n\n return () => {\n return h('div', {\n class: classes.value,\n onMouseenter,\n onMouseleave\n }, [\n h('div', {\n ref: targetRef,\n class: 'q-scrollarea__container scroll relative-position fit hide-scrollbar',\n tabindex: props.tabindex !== void 0 ? props.tabindex : void 0\n }, [\n h('div', {\n class: 'q-scrollarea__content absolute',\n style: mainStyle.value\n }, hMergeSlot(slots.default, [\n h(QResizeObserver, {\n debounce: 0,\n onResize: updateScrollSize\n })\n ])),\n\n h(QScrollObserver, {\n axis: 'both',\n onScroll: updateScroll\n })\n ]),\n\n h(QResizeObserver, {\n debounce: 0,\n onResize: updateContainer\n }),\n\n h('div', {\n class: scroll.vertical.barClass.value,\n style: [ props.barStyle, props.verticalBarStyle ],\n 'aria-hidden': 'true',\n onMousedown: onVerticalMousedown\n }),\n\n h('div', {\n class: scroll.horizontal.barClass.value,\n style: [ props.barStyle, props.horizontalBarStyle ],\n 'aria-hidden': 'true',\n onMousedown: onHorizontalMousedown\n }),\n\n withDirectives(\n h('div', {\n ref: scroll.vertical.ref,\n class: scroll.vertical.thumbClass.value,\n style: scroll.vertical.style.value,\n 'aria-hidden': 'true'\n }),\n thumbVertDir\n ),\n\n withDirectives(\n h('div', {\n ref: scroll.horizontal.ref,\n class: scroll.horizontal.thumbClass.value,\n style: scroll.horizontal.style.value,\n 'aria-hidden': 'true'\n }),\n thumbHorizDir\n )\n ])\n }\n }\n})\n","import { watch, onMounted, onBeforeUnmount, getCurrentInstance } from 'vue'\n\nimport { createComponent } from '../../utils/private/create.js'\nimport { getScrollTarget, getVerticalScrollPosition, getHorizontalScrollPosition } from '../../utils/scroll.js'\nimport { listenOpts, noop } from '../../utils/event.js'\n\nconst { passive } = listenOpts\nconst axisValues = [ 'both', 'horizontal', 'vertical' ]\n\nexport default createComponent({\n name: 'QScrollObserver',\n\n props: {\n axis: {\n type: String,\n validator: v => axisValues.includes(v),\n default: 'vertical'\n },\n\n debounce: [ String, Number ],\n\n scrollTarget: {\n default: void 0\n }\n },\n\n emits: [ 'scroll' ],\n\n setup (props, { emit }) {\n const scroll = {\n position: {\n top: 0,\n left: 0\n },\n\n direction: 'down',\n directionChanged: false,\n\n delta: {\n top: 0,\n left: 0\n },\n\n inflectionPoint: {\n top: 0,\n left: 0\n }\n }\n\n let clearTimer = null, localScrollTarget, parentEl\n\n watch(() => props.scrollTarget, () => {\n unconfigureScrollTarget()\n configureScrollTarget()\n })\n\n function emitEvent () {\n clearTimer !== null && clearTimer()\n\n const top = Math.max(0, getVerticalScrollPosition(localScrollTarget))\n const left = getHorizontalScrollPosition(localScrollTarget)\n\n const delta = {\n top: top - scroll.position.top,\n left: left - scroll.position.left\n }\n\n if (\n (props.axis === 'vertical' && delta.top === 0)\n || (props.axis === 'horizontal' && delta.left === 0)\n ) {\n return\n }\n\n const curDir = Math.abs(delta.top) >= Math.abs(delta.left)\n ? (delta.top < 0 ? 'up' : 'down')\n : (delta.left < 0 ? 'left' : 'right')\n\n scroll.position = { top, left }\n scroll.directionChanged = scroll.direction !== curDir\n scroll.delta = delta\n\n if (scroll.directionChanged === true) {\n scroll.direction = curDir\n scroll.inflectionPoint = scroll.position\n }\n\n emit('scroll', { ...scroll })\n }\n\n function configureScrollTarget () {\n localScrollTarget = getScrollTarget(parentEl, props.scrollTarget)\n localScrollTarget.addEventListener('scroll', trigger, passive)\n trigger(true)\n }\n\n function unconfigureScrollTarget () {\n if (localScrollTarget !== void 0) {\n localScrollTarget.removeEventListener('scroll', trigger, passive)\n localScrollTarget = void 0\n }\n }\n\n function trigger (immediately) {\n if (immediately === true || props.debounce === 0 || props.debounce === '0') {\n emitEvent()\n }\n else if (clearTimer === null) {\n const [ timer, fn ] = props.debounce\n ? [ setTimeout(emitEvent, props.debounce), clearTimeout ]\n : [ requestAnimationFrame(emitEvent), cancelAnimationFrame ]\n\n clearTimer = () => {\n fn(timer)\n clearTimer = null\n }\n }\n }\n\n const { proxy } = getCurrentInstance()\n\n watch(() => proxy.$q.lang.rtl, emitEvent)\n\n onMounted(() => {\n parentEl = proxy.$el.parentNode\n configureScrollTarget()\n })\n\n onBeforeUnmount(() => {\n clearTimer !== null && clearTimer()\n unconfigureScrollTarget()\n })\n\n // expose public methods\n Object.assign(proxy, {\n trigger,\n getPosition: () => scroll\n })\n\n return noop\n }\n})\n"],"sourceRoot":""}