UNPKG

taro-hooks

Version:
33 lines (32 loc) 1.01 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = require("tslib"); var taro_1 = require("@tarojs/taro"); var core_1 = require("@taro-hooks/core"); var usePromise_1 = tslib_1.__importDefault(require("../usePromise")); var tool_1 = require("../utils/tool"); function useRecord() { var recorderManager = (0, core_1.useRef)((0, taro_1.getRecorderManager)()); var start = (0, usePromise_1["default"])(recorderManager.current.start); var stop = function stop() { return new Promise(function (resolve, reject) { try { var callback = function callback(result) { resolve(result); }; recorderManager.current.onStop(callback); recorderManager.current.stop(); } catch (e) { var error = (0, tool_1.generateGeneralFail)('stopRecord', e.errMsg || e.message); reject(error); } }); }; return [recorderManager.current, { start: start, stop: stop }]; } exports["default"] = useRecord;