1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798 |
- (function() {
- var nodeEnv = typeof require !== 'undefined' && typeof process !== 'undefined';
- var __module = nodeEnv ? module : {exports:{}};
- var __filename = 'preview-scripts/assets/script/frameWork/Promise/SpecialPromise.js';
- var __require = nodeEnv ? function (request) {
- return cc.require(request);
- } : function (request) {
- return __quick_compile_project__.require(request, __filename);
- };
- function __define (exports, require, module) {
- if (!nodeEnv) {__quick_compile_project__.registerModule(__filename, module);}"use strict";
- cc._RF.push(module, 'e08cfkvJfZA94s8Q8xyDkav', 'SpecialPromise');
- // script/frameWork/Promise/SpecialPromise.ts
- "use strict";
- Object.defineProperty(exports, "__esModule", { value: true });
- exports.IntervalCheckPromise = exports.NextFrameResolvePromise = exports.PromiseDefault = exports.PromiseTimeout = exports.PromiseSchedulerSeconds = exports.PromiseResolved = void 0;
- /**
- * Resolved 的 Promise
- */
- exports.PromiseResolved = Promise.resolve();
- /**
- * 在组件上挂载一个延迟的回调函数
- * @param seconds 延迟多少秒
- * @param comp 调度者
- * @param promise
- * @returns
- */
- var PromiseSchedulerSeconds = function (seconds, comp, promise) {
- if (promise === void 0) { promise = PromiseDefault; }
- return promise(function (resolve) {
- comp.scheduleOnce(resolve, seconds);
- });
- };
- exports.PromiseSchedulerSeconds = PromiseSchedulerSeconds;
- /**
- * TimeOutPromise
- * @param seconds 延迟多少秒
- * @param comp 调度者
- * @param promise
- * @returns
- */
- var PromiseTimeout = function (seconds, func, promise) {
- if (promise === void 0) { promise = PromiseDefault; }
- return promise(function (resolve) {
- setTimeout(function () {
- func && func(seconds);
- resolve();
- }, seconds * 1000);
- });
- };
- exports.PromiseTimeout = PromiseTimeout;
- /**
- * 默认的 Promise
- * @param executor
- * @returns
- */
- function PromiseDefault(executor) {
- return new Promise(executor);
- }
- exports.PromiseDefault = PromiseDefault;
- /**
- * 下一帧 resolve
- */
- function NextFrameResolvePromise(comp, curFrameFunc) {
- curFrameFunc();
- return new Promise(function (resolve) { return comp.scheduleOnce(resolve, 0); });
- }
- exports.NextFrameResolvePromise = NextFrameResolvePromise;
- /** 返回一个 interval 检测的 Promise */
- function IntervalCheckPromise(check, interval) {
- if (interval === void 0) { interval = 0.1; }
- return new Promise(function (rs) {
- var timer;
- timer = setInterval(function () {
- if (check()) {
- clearInterval(timer);
- timer = null;
- rs();
- }
- }, interval * 1000);
- });
- }
- exports.IntervalCheckPromise = IntervalCheckPromise;
- cc._RF.pop();
- }
- if (nodeEnv) {
- __define(__module.exports, __require, __module);
- }
- else {
- __quick_compile_project__.registerModuleFunc(__filename, function () {
- __define(__module.exports, __require, __module);
- });
- }
- })();
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFzc2V0cy9zY3JpcHQvZnJhbWVXb3JrL1Byb21pc2UvU3BlY2lhbFByb21pc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBTUE7O0dBRUc7QUFDVSxRQUFBLGVBQWUsR0FBRyxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUM7QUFFakQ7Ozs7OztHQU1HO0FBQ0ksSUFBTSx1QkFBdUIsR0FBRyxVQUFDLE9BQWUsRUFBRSxJQUFrQixFQUFFLE9BQXNDO0lBQXRDLHdCQUFBLEVBQUEsd0JBQXNDO0lBQy9HLE9BQU8sT0FBTyxDQUFDLFVBQUEsT0FBTztRQUNsQixJQUFJLENBQUMsWUFBWSxDQUFDLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQztJQUN4QyxDQUFDLENBQUMsQ0FBQztBQUNQLENBQUMsQ0FBQTtBQUpZLFFBQUEsdUJBQXVCLDJCQUluQztBQUVEOzs7Ozs7R0FNRztBQUNJLElBQU0sY0FBYyxHQUFHLFVBQUMsT0FBZSxFQUFFLElBQXVCLEVBQUUsT0FBc0M7SUFBdEMsd0JBQUEsRUFBQSx3QkFBc0M7SUFDM0csT0FBTyxPQUFPLENBQUMsVUFBQSxPQUFPO1FBQ2xCLFVBQVUsQ0FBQztZQUNQLElBQUksSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDdEIsT0FBTyxFQUFFLENBQUM7UUFDZCxDQUFDLEVBQUUsT0FBTyxHQUFHLElBQUksQ0FBQyxDQUFDO0lBQ3ZCLENBQUMsQ0FBQyxDQUFDO0FBQ1AsQ0FBQyxDQUFBO0FBUFksUUFBQSxjQUFjLGtCQU8xQjtBQUdEOzs7O0dBSUc7QUFDSCxTQUFnQixjQUFjLENBQVUsUUFBNEI7SUFDaEUsT0FBTyxJQUFJLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQztBQUNqQyxDQUFDO0FBRkQsd0NBRUM7QUFFRDs7R0FFRztBQUNILFNBQWdCLHVCQUF1QixDQUFDLElBQWtCLEVBQUUsWUFBd0I7SUFDaEYsWUFBWSxFQUFFLENBQUM7SUFDZixPQUFPLElBQUksT0FBTyxDQUFDLFVBQUEsT0FBTyxJQUFJLE9BQUEsSUFBSSxDQUFDLFlBQVksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLEVBQTdCLENBQTZCLENBQUMsQ0FBQTtBQUNoRSxDQUFDO0FBSEQsMERBR0M7QUFFRCxnQ0FBZ0M7QUFDaEMsU0FBZ0Isb0JBQW9CLENBQUMsS0FBb0IsRUFBRSxRQUFzQjtJQUF0Qix5QkFBQSxFQUFBLGNBQXNCO0lBQzdFLE9BQU8sSUFBSSxPQUFPLENBQU8sVUFBQSxFQUFFO1FBQ3ZCLElBQUksS0FBSyxDQUFDO1FBQ1YsS0FBSyxHQUFHLFdBQVcsQ0FBQztZQUNoQixJQUFJLEtBQUssRUFBRSxFQUFFO2dCQUNULGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDckIsS0FBSyxHQUFHLElBQUksQ0FBQztnQkFDYixFQUFFLEVBQUUsQ0FBQzthQUNSO1FBQ0wsQ0FBQyxFQUFFLFFBQVEsR0FBRyxJQUFJLENBQUMsQ0FBQztJQUN4QixDQUFDLENBQUMsQ0FBQztBQUNQLENBQUM7QUFYRCxvREFXQyIsImZpbGUiOiIiLCJzb3VyY2VSb290IjoiLyIsInNvdXJjZXNDb250ZW50IjpbIlxuZGVjbGFyZSBnbG9iYWwge1xuICAgIHR5cGUgUHJvbWlzZUV4ZWN1dG9yPFQ+ID0gKHJlc29sdmU6ICh2YWx1ZT86IFQgfCBQcm9taXNlTGlrZTxUPikgPT4gdm9pZCwgcmVqZWN0OiAocmVhc29uPzogYW55KSA9PiB2b2lkKSA9PiB2b2lkO1xuICAgIHR5cGUgSVByb21pc2VGdW5jPFQgPSBhbnk+ID0gKGV4ZWN1dG9yOiBQcm9taXNlRXhlY3V0b3I8VD4pID0+IFByb21pc2U8VD47XG59XG5cbi8qKlxuICogUmVzb2x2ZWQg55qEIFByb21pc2VcbiAqL1xuZXhwb3J0IGNvbnN0IFByb21pc2VSZXNvbHZlZCA9IFByb21pc2UucmVzb2x2ZSgpO1xuXG4vKipcbiAqIOWcqOe7hOS7tuS4iuaMgui9veS4gOS4quW7tui/n+eahOWbnuiwg+WHveaVsFxuICogQHBhcmFtIHNlY29uZHMg5bu26L+f5aSa5bCR56eSXG4gKiBAcGFyYW0gY29tcCDosIPluqbogIVcbiAqIEBwYXJhbSBwcm9taXNlIFxuICogQHJldHVybnMgXG4gKi9cbmV4cG9ydCBjb25zdCBQcm9taXNlU2NoZWR1bGVyU2Vjb25kcyA9IChzZWNvbmRzOiBudW1iZXIsIGNvbXA6IGNjLkNvbXBvbmVudCwgcHJvbWlzZTogSVByb21pc2VGdW5jID0gUHJvbWlzZURlZmF1bHQpID0+IHtcbiAgICByZXR1cm4gcHJvbWlzZShyZXNvbHZlID0+IHtcbiAgICAgICAgY29tcC5zY2hlZHVsZU9uY2UocmVzb2x2ZSwgc2Vjb25kcyk7XG4gICAgfSk7XG59XG5cbi8qKlxuICogVGltZU91dFByb21pc2VcbiAqIEBwYXJhbSBzZWNvbmRzIOW7tui/n+WkmuWwkeenklxuICogQHBhcmFtIGNvbXAg6LCD5bqm6ICFXG4gKiBAcGFyYW0gcHJvbWlzZSBcbiAqIEByZXR1cm5zIFxuICovXG5leHBvcnQgY29uc3QgUHJvbWlzZVRpbWVvdXQgPSAoc2Vjb25kczogbnVtYmVyLCBmdW5jOiAoc2Vjb25kcykgPT4gdm9pZCwgcHJvbWlzZTogSVByb21pc2VGdW5jID0gUHJvbWlzZURlZmF1bHQpID0+IHtcbiAgICByZXR1cm4gcHJvbWlzZShyZXNvbHZlID0+IHtcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICBmdW5jICYmIGZ1bmMoc2Vjb25kcyk7XG4gICAgICAgICAgICByZXNvbHZlKCk7XG4gICAgICAgIH0sIHNlY29uZHMgKiAxMDAwKTtcbiAgICB9KTtcbn1cblxuXG4vKipcbiAqIOm7mOiupOeahCBQcm9taXNlXG4gKiBAcGFyYW0gZXhlY3V0b3IgXG4gKiBAcmV0dXJucyBcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIFByb21pc2VEZWZhdWx0PFQgPSBhbnk+KGV4ZWN1dG9yOiBQcm9taXNlRXhlY3V0b3I8VD4pOiBQcm9taXNlPFQ+IHtcbiAgICByZXR1cm4gbmV3IFByb21pc2UoZXhlY3V0b3IpO1xufVxuXG4vKipcbiAqIOS4i+S4gOW4pyByZXNvbHZlXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBOZXh0RnJhbWVSZXNvbHZlUHJvbWlzZShjb21wOiBjYy5Db21wb25lbnQsIGN1ckZyYW1lRnVuYzogKCkgPT4gdm9pZCkge1xuICAgIGN1ckZyYW1lRnVuYygpO1xuICAgIHJldHVybiBuZXcgUHJvbWlzZShyZXNvbHZlID0+IGNvbXAuc2NoZWR1bGVPbmNlKHJlc29sdmUsIDApKVxufVxuXG4vKiog6L+U5Zue5LiA5LiqIGludGVydmFsIOajgOa1i+eahCBQcm9taXNlICovXG5leHBvcnQgZnVuY3Rpb24gSW50ZXJ2YWxDaGVja1Byb21pc2UoY2hlY2s6ICgpID0+IGJvb2xlYW4sIGludGVydmFsOiBudW1iZXIgPSAwLjEpIHtcbiAgICByZXR1cm4gbmV3IFByb21pc2U8dm9pZD4ocnMgPT4ge1xuICAgICAgICBsZXQgdGltZXI7XG4gICAgICAgIHRpbWVyID0gc2V0SW50ZXJ2YWwoKCkgPT4ge1xuICAgICAgICAgICAgaWYgKGNoZWNrKCkpIHtcbiAgICAgICAgICAgICAgICBjbGVhckludGVydmFsKHRpbWVyKTtcbiAgICAgICAgICAgICAgICB0aW1lciA9IG51bGw7XG4gICAgICAgICAgICAgICAgcnMoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSwgaW50ZXJ2YWwgKiAxMDAwKTtcbiAgICB9KTtcbn0iXX0=
|