| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 | "use strict";Object.defineProperty(exports, "__esModule", { value: true });exports.pageScrollMixin = void 0;var validator_1 = require("../common/validator");var utils_1 = require("../common/utils");function onPageScroll(event) {    var _a = (0, utils_1.getCurrentPage)().vanPageScroller, vanPageScroller = _a === void 0 ? [] : _a;    vanPageScroller.forEach(function (scroller) {        if (typeof scroller === 'function') {            // @ts-ignore            scroller(event);        }    });}function pageScrollMixin(scroller) {    return Behavior({        attached: function () {            var page = (0, utils_1.getCurrentPage)();            if (!(0, utils_1.isDef)(page)) {                return;            }            var _scroller = scroller.bind(this);            var _a = page.vanPageScroller, vanPageScroller = _a === void 0 ? [] : _a;            if ((0, validator_1.isFunction)(page.onPageScroll) && page.onPageScroll !== onPageScroll) {                vanPageScroller.push(page.onPageScroll.bind(page));            }            vanPageScroller.push(_scroller);            page.vanPageScroller = vanPageScroller;            page.onPageScroll = onPageScroll;            this._scroller = _scroller;        },        detached: function () {            var _this = this;            var page = (0, utils_1.getCurrentPage)();            if (!(0, utils_1.isDef)(page) || !(0, utils_1.isDef)(page.vanPageScroller)) {                return;            }            var vanPageScroller = page.vanPageScroller;            var index = vanPageScroller.findIndex(function (v) { return v === _this._scroller; });            if (index > -1) {                page.vanPageScroller.splice(index, 1);            }            this._scroller = undefined;        },    });}exports.pageScrollMixin = pageScrollMixin;
 |