UNPKG

tdesign-mobile-vue

Version:
142 lines (134 loc) 5.64 kB
/** * tdesign v1.12.1 * (c) 2025 TDesign Group * @license MIT */ 'use strict'; Object.defineProperty(exports, '__esModule', { value: true }); var _asyncToGenerator = require('@babel/runtime/helpers/asyncToGenerator'); var _regeneratorRuntime = require('@babel/runtime/regenerator'); var Vue = require('vue'); var core = require('@vueuse/core'); var shared_useCountDown_utils = require('./utils.js'); var shared_util = require('../util.js'); require('@babel/runtime/helpers/slicedToArray'); require('../../hooks/useClass.js'); require('../../_chunks/dep-f487f3c9.js'); require('@babel/runtime/helpers/defineProperty'); require('../../_chunks/dep-0d34d1e2.js'); require('../../_common/js/global-config/mobile/default-config.js'); require('../../_common/js/global-config/mobile/locale/zh_CN.js'); require('../../_chunks/dep-c7f7a976.js'); require('@babel/runtime/helpers/typeof'); require('../../_chunks/dep-bce5891c.js'); require('dayjs'); require('../../_chunks/dep-71eea379.js'); require('../../_chunks/dep-cb665fd6.js'); require('../../_chunks/dep-1cdfb723.js'); require('../../_chunks/dep-744e59d5.js'); require('../../_chunks/dep-5b9d3f6f.js'); require('../../_chunks/dep-4850f616.js'); require('../../_chunks/dep-232d243a.js'); require('../../_chunks/dep-1df72545.js'); require('../../_chunks/dep-8983459f.js'); require('../../_chunks/dep-6c43868d.js'); require('../../_chunks/dep-eaef83bf.js'); require('../../_chunks/dep-100be120.js'); require('../../_chunks/dep-ea7a6cdf.js'); require('../../_chunks/dep-0d61faba.js'); require('../../_chunks/dep-49426c60.js'); require('../../_chunks/dep-d70ba5d5.js'); require('../../_chunks/dep-f5df0fcf.js'); require('../../_chunks/dep-c0b5e4e7.js'); require('../../_chunks/dep-bac64a37.js'); require('../../_chunks/dep-8e526cea.js'); require('../../_chunks/dep-9c611a30.js'); require('../../_chunks/dep-a618140f.js'); require('../../_chunks/dep-ea4c3db5.js'); require('../../_chunks/dep-a5172f92.js'); function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; } var _asyncToGenerator__default = /*#__PURE__*/_interopDefaultLegacy(_asyncToGenerator); var _regeneratorRuntime__default = /*#__PURE__*/_interopDefaultLegacy(_regeneratorRuntime); function useCountDown(props, visibility) { var _ref = props || {}, _ref$time = _ref.time, time = _ref$time === void 0 ? 0 : _ref$time, autoStart = _ref.autoStart, _ref$millisecond = _ref.millisecond, millisecond = _ref$millisecond === void 0 ? false : _ref$millisecond, _ref$format = _ref.format, format = _ref$format === void 0 ? "HH:mm:ss" : _ref$format, _ref$splitWithUnit = _ref.splitWithUnit, splitWithUnit = _ref$splitWithUnit === void 0 ? false : _ref$splitWithUnit, onFinish = _ref.onFinish, onChange = _ref.onChange; var fps = Vue.ref(); var count = Vue.ref(Number(time)); var showTimes = Vue.reactive(shared_useCountDown_utils.getShowTimes(shared_useCountDown_utils.getRemainTimes(time), format, millisecond, splitWithUnit)); var hiddenTime = 0; visibility && Vue.watch(visibility, function (val) { if (val && autoStart) { count.value -= Date.now() - hiddenTime; rafFn(); } else { hiddenTime = Date.now(); } }); var rafFn = /*#__PURE__*/function () { var _ref2 = _asyncToGenerator__default["default"](/*#__PURE__*/_regeneratorRuntime__default["default"].mark(function _callee() { var _getShowTimes, _getShowTimes$forEach; var res, times; return _regeneratorRuntime__default["default"].wrap(function (_context) { while (1) switch (_context.prev = _context.next) { case 0: if (shared_util.isBrowser) { _context.next = 1; break; } return _context.abrupt("return"); case 1: if (fps.value) { _context.next = 3; break; } _context.next = 2; return shared_useCountDown_utils.getScreenFps === null || shared_useCountDown_utils.getScreenFps === void 0 ? void 0 : shared_useCountDown_utils.getScreenFps(); case 2: res = _context.sent; fps.value = res || 60; case 3: count.value = parseInt("".concat(Number(count.value) - 1e3 / fps.value), 10); if (count.value <= 0) { pause === null || pause === void 0 || pause(); count.value = 0; } times = shared_useCountDown_utils.getRemainTimes(count.value); onChange === null || onChange === void 0 || onChange(times); count.value === 0 && (onFinish === null || onFinish === void 0 ? void 0 : onFinish()); (_getShowTimes = shared_useCountDown_utils.getShowTimes(times, format, millisecond, splitWithUnit)) === null || _getShowTimes === void 0 || (_getShowTimes$forEach = _getShowTimes.forEach) === null || _getShowTimes$forEach === void 0 || _getShowTimes$forEach.call(_getShowTimes, function (i, idx) { return showTimes[idx].value = i === null || i === void 0 ? void 0 : i.value; }); case 4: case "end": return _context.stop(); } }, _callee); })); return function rafFn() { return _ref2.apply(this, arguments); }; }(); var _useRafFn = core.useRafFn(rafFn, { immediate: autoStart }), pause = _useRafFn.pause, resume = _useRafFn.resume; return { time: count, showTimes: showTimes, pause: pause, resume: resume }; } exports.useCountDown = useCountDown; //# sourceMappingURL=index.js.map