mirror of
				https://github.com/fooflington/selfdefined.git
				synced 2025-11-03 23:29:03 +00:00 
			
		
		
		
	
		
			
	
	
		
			39 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
		
		
			
		
	
	
			39 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| 
								 | 
							
								/** PURE_IMPORTS_START ._AsyncScheduler PURE_IMPORTS_END */
							 | 
						||
| 
								 | 
							
								var __extends = (this && this.__extends) || function (d, b) {
							 | 
						||
| 
								 | 
							
								    for (var p in b)
							 | 
						||
| 
								 | 
							
								        if (b.hasOwnProperty(p))
							 | 
						||
| 
								 | 
							
								            d[p] = b[p];
							 | 
						||
| 
								 | 
							
								    function __() { this.constructor = d; }
							 | 
						||
| 
								 | 
							
								    d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
							 | 
						||
| 
								 | 
							
								};
							 | 
						||
| 
								 | 
							
								import { AsyncScheduler } from './AsyncScheduler';
							 | 
						||
| 
								 | 
							
								export var AsapScheduler = /*@__PURE__*/ (/*@__PURE__*/ function (_super) {
							 | 
						||
| 
								 | 
							
								    __extends(AsapScheduler, _super);
							 | 
						||
| 
								 | 
							
								    function AsapScheduler() {
							 | 
						||
| 
								 | 
							
								        _super.apply(this, arguments);
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								    AsapScheduler.prototype.flush = function (action) {
							 | 
						||
| 
								 | 
							
								        this.active = true;
							 | 
						||
| 
								 | 
							
								        this.scheduled = undefined;
							 | 
						||
| 
								 | 
							
								        var actions = this.actions;
							 | 
						||
| 
								 | 
							
								        var error;
							 | 
						||
| 
								 | 
							
								        var index = -1;
							 | 
						||
| 
								 | 
							
								        var count = actions.length;
							 | 
						||
| 
								 | 
							
								        action = action || actions.shift();
							 | 
						||
| 
								 | 
							
								        do {
							 | 
						||
| 
								 | 
							
								            if (error = action.execute(action.state, action.delay)) {
							 | 
						||
| 
								 | 
							
								                break;
							 | 
						||
| 
								 | 
							
								            }
							 | 
						||
| 
								 | 
							
								        } while (++index < count && (action = actions.shift()));
							 | 
						||
| 
								 | 
							
								        this.active = false;
							 | 
						||
| 
								 | 
							
								        if (error) {
							 | 
						||
| 
								 | 
							
								            while (++index < count && (action = actions.shift())) {
							 | 
						||
| 
								 | 
							
								                action.unsubscribe();
							 | 
						||
| 
								 | 
							
								            }
							 | 
						||
| 
								 | 
							
								            throw error;
							 | 
						||
| 
								 | 
							
								        }
							 | 
						||
| 
								 | 
							
								    };
							 | 
						||
| 
								 | 
							
								    return AsapScheduler;
							 | 
						||
| 
								 | 
							
								}(AsyncScheduler));
							 | 
						||
| 
								 | 
							
								//# sourceMappingURL=AsapScheduler.js.map
							 |