UNPKG

black-horse-cli

Version:

62 lines (50 loc) 1.19 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.useTimeoutFn = useTimeoutFn; exports.useTimeoutRef = useTimeoutRef; require("core-js/modules/es.error.cause.js"); var _vue = require("vue"); var _is = require("../is"); var _core = require("@vueuse/core"); function useTimeoutFn(handle, wait) { if (!(0, _is.isFunction)(handle)) { throw new Error('handle is not Function!'); } var _useTimeoutRef = useTimeoutRef(wait), readyRef = _useTimeoutRef.readyRef, stop = _useTimeoutRef.stop, start = _useTimeoutRef.start; (0, _vue.watch)(readyRef, function (maturity) { maturity && handle(); }, { immediate: false }); return { readyRef: readyRef, stop: stop, start: start }; } function useTimeoutRef(wait) { var readyRef = (0, _vue.ref)(false); var timer; function stop() { readyRef.value = false; timer && window.clearTimeout(timer); } function start() { stop(); timer = setTimeout(function () { readyRef.value = true; }, wait); } start(); (0, _core.tryOnUnmounted)(stop); return { readyRef: readyRef, stop: stop, start: start }; }