1234567891011121314151617181920212223242526272829303132333435363738394041424344 |
- // Types
- function mounted(el, binding) {
- const {
- self = false
- } = binding.modifiers ?? {};
- const value = binding.value;
- const options = typeof value === 'object' && value.options || {
- passive: true
- };
- const handler = typeof value === 'function' || 'handleEvent' in value ? value : value.handler;
- const target = self ? el : binding.arg ? document.querySelector(binding.arg) : window;
- if (!target) return;
- target.addEventListener('scroll', handler, options);
- el._onScroll = Object(el._onScroll);
- el._onScroll[binding.instance.$.uid] = {
- handler,
- options,
- // Don't reference self
- target: self ? undefined : target
- };
- }
- function unmounted(el, binding) {
- if (!el._onScroll?.[binding.instance.$.uid]) return;
- const {
- handler,
- options,
- target = el
- } = el._onScroll[binding.instance.$.uid];
- target.removeEventListener('scroll', handler, options);
- delete el._onScroll[binding.instance.$.uid];
- }
- function updated(el, binding) {
- if (binding.value === binding.oldValue) return;
- unmounted(el, binding);
- mounted(el, binding);
- }
- export const Scroll = {
- mounted,
- unmounted,
- updated
- };
- export default Scroll;
- //# sourceMappingURL=index.mjs.map
|