12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 |
- var __defProp = Object.defineProperty;
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
- var __getOwnPropNames = Object.getOwnPropertyNames;
- var __hasOwnProp = Object.prototype.hasOwnProperty;
- var __export = (target, all) => {
- for (var name in all)
- __defProp(target, name, { get: all[name], enumerable: true });
- };
- var __copyProps = (to, from, except, desc) => {
- if (from && typeof from === "object" || typeof from === "function") {
- for (let key of __getOwnPropNames(from))
- if (!__hasOwnProp.call(to, key) && key !== except)
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
- }
- return to;
- };
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
- var stdin_exports = {};
- __export(stdin_exports, {
- useVisibilityChange: () => useVisibilityChange
- });
- module.exports = __toCommonJS(stdin_exports);
- var import_utils = require("../utils");
- var import_vue = require("vue");
- var import_use = require("@vant/use");
- function useVisibilityChange(target, onChange) {
- if (!import_utils.inBrowser || !window.IntersectionObserver) {
- return;
- }
- const observer = new IntersectionObserver(
- (entries) => {
- onChange(entries[0].intersectionRatio > 0);
- },
- { root: document.body }
- );
- const observe = () => {
- if (target.value) {
- observer.observe(target.value);
- }
- };
- const unobserve = () => {
- if (target.value) {
- observer.unobserve(target.value);
- }
- };
- (0, import_vue.onDeactivated)(unobserve);
- (0, import_vue.onBeforeUnmount)(unobserve);
- (0, import_use.onMountedOrActivated)(observe);
- }
|