{"version":3,"file":"use-scroll-target.mjs","sources":["../../../../../packages/composables/private/use-scroll-target.ts"],"sourcesContent":["import { ref, watch, onBeforeUnmount } from 'vue'\n\nimport { listenOpts } from '@vue-cesium/utils/private/event'\n\nexport default function (props, configureScrollTarget) {\n  const localScrollTarget = ref(null)\n  let scrollFn\n\n  function changeScrollEvent(scrollTarget, fn?) {\n    const fnProp = `${fn !== void 0 ? 'add' : 'remove'}EventListener`\n    const fnHandler = fn !== void 0 ? fn : scrollFn\n\n    if (scrollTarget !== window) {\n      scrollTarget[fnProp]('scroll', fnHandler, listenOpts.passive)\n    }\n\n    window[fnProp]('scroll', fnHandler, listenOpts.passive)\n\n    scrollFn = fn\n  }\n\n  function unconfigureScrollTarget() {\n    if (localScrollTarget.value !== null) {\n      changeScrollEvent(localScrollTarget.value)\n      localScrollTarget.value = null\n    }\n  }\n\n  const noParentEventWatcher = watch(\n    () => props.noParentEvent,\n    () => {\n      if (localScrollTarget.value !== null) {\n        unconfigureScrollTarget()\n        configureScrollTarget()\n      }\n    }\n  )\n\n  onBeforeUnmount(noParentEventWatcher)\n\n  return {\n    localScrollTarget,\n    unconfigureScrollTarget,\n    changeScrollEvent\n  }\n}\n"],"names":[],"mappings":";;;AAEe,wBAAQ,CAAC,KAAK,EAAE,qBAAqB,EAAE;AACtD,EAAE,MAAM,iBAAiB,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC;AACtC,EAAE,IAAI,QAAQ,CAAC;AACf,EAAE,SAAS,iBAAiB,CAAC,YAAY,EAAE,EAAE,EAAE;AAC/C,IAAI,MAAM,MAAM,GAAG,CAAC,EAAE,EAAE,KAAK,KAAK,CAAC,GAAG,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,CAAC;AACtE,IAAI,MAAM,SAAS,GAAG,EAAE,KAAK,KAAK,CAAC,GAAG,EAAE,GAAG,QAAQ,CAAC;AACpD,IAAI,IAAI,YAAY,KAAK,MAAM,EAAE;AACjC,MAAM,YAAY,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,SAAS,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC;AACpE,KAAK;AACL,IAAI,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,SAAS,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC;AAC5D,IAAI,QAAQ,GAAG,EAAE,CAAC;AAClB,GAAG;AACH,EAAE,SAAS,uBAAuB,GAAG;AACrC,IAAI,IAAI,iBAAiB,CAAC,KAAK,KAAK,IAAI,EAAE;AAC1C,MAAM,iBAAiB,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;AACjD,MAAM,iBAAiB,CAAC,KAAK,GAAG,IAAI,CAAC;AACrC,KAAK;AACL,GAAG;AACH,EAAE,MAAM,oBAAoB,GAAG,KAAK,CAAC,MAAM,KAAK,CAAC,aAAa,EAAE,MAAM;AACtE,IAAI,IAAI,iBAAiB,CAAC,KAAK,KAAK,IAAI,EAAE;AAC1C,MAAM,uBAAuB,EAAE,CAAC;AAChC,MAAM,qBAAqB,EAAE,CAAC;AAC9B,KAAK;AACL,GAAG,CAAC,CAAC;AACL,EAAE,eAAe,CAAC,oBAAoB,CAAC,CAAC;AACxC,EAAE,OAAO;AACT,IAAI,iBAAiB;AACrB,IAAI,uBAAuB;AAC3B,IAAI,iBAAiB;AACrB,GAAG,CAAC;AACJ;;;;"}