UNPKG

vue-cesium

Version:
1 lines 2.4 kB
{"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":";;;;AAIA,wBAAA,CAAyB,OAAO,qBAAuB,EAAA;AACrD,EAAM,MAAA,iBAAA,GAAoB,IAAI,IAAI,CAAA,CAAA;AAClC,EAAI,IAAA,QAAA,CAAA;AAEJ,EAAS,SAAA,iBAAA,CAAkB,cAAc,EAAK,EAAA;AAC5C,IAAA,MAAM,MAAS,GAAA,CAAA,EAAG,EAAO,KAAA,KAAA,CAAA,GAAS,QAAQ,QAAQ,CAAA,aAAA,CAAA,CAAA;AAClD,IAAM,MAAA,SAAA,GAAY,EAAO,KAAA,KAAA,CAAA,GAAS,EAAK,GAAA,QAAA,CAAA;AAEvC,IAAA,IAAI,iBAAiB,MAAQ,EAAA;AAC3B,MAAA,YAAA,CAAa,MAAM,CAAA,CAAE,QAAU,EAAA,SAAA,EAAW,WAAW,OAAO,CAAA,CAAA;AAAA,KAC9D;AAEA,IAAA,MAAA,CAAO,MAAM,CAAA,CAAE,QAAU,EAAA,SAAA,EAAW,WAAW,OAAO,CAAA,CAAA;AAEtD,IAAW,QAAA,GAAA,EAAA,CAAA;AAAA,GACb;AAEA,EAAA,SAAS,uBAA0B,GAAA;AACjC,IAAI,IAAA,iBAAA,CAAkB,UAAU,IAAM,EAAA;AACpC,MAAA,iBAAA,CAAkB,kBAAkB,KAAK,CAAA,CAAA;AACzC,MAAA,iBAAA,CAAkB,KAAQ,GAAA,IAAA,CAAA;AAAA,KAC5B;AAAA,GACF;AAEA,EAAA,MAAM,oBAAuB,GAAA,KAAA;AAAA,IAC3B,MAAM,KAAM,CAAA,aAAA;AAAA,IACZ,MAAM;AACJ,MAAI,IAAA,iBAAA,CAAkB,UAAU,IAAM,EAAA;AACpC,QAAwB,uBAAA,EAAA,CAAA;AACxB,QAAsB,qBAAA,EAAA,CAAA;AAAA,OACxB;AAAA,KACF;AAAA,GACF,CAAA;AAEA,EAAA,eAAA,CAAgB,oBAAoB,CAAA,CAAA;AAEpC,EAAO,OAAA;AAAA,IACL,iBAAA;AAAA,IACA,uBAAA;AAAA,IACA,iBAAA;AAAA,GACF,CAAA;AACF;;;;"}