UNPKG

react-native-star-io10

Version:

react-native-star-io10 is a library for supporting application development for Star Micronics devices.

32 lines (26 loc) 948 B
export abstract class BaseStarXpandCommandBuilder { protected _actions: Array<() => Promise<void>> = []; protected _children: Array<BaseStarXpandCommandBuilder> = []; protected _addChild(builder: BaseStarXpandCommandBuilder): void { this._children.push(builder); } protected _removeChild(builder: BaseStarXpandCommandBuilder): void { var index = this._children.findIndex((child) => child === builder); if(index !== -1) { this._children.splice(index, 1); } } protected _addAction(action: () => Promise<void>): void { this._actions.push(action); } protected async _executeAllActions(): Promise<void> { await (async () => { for(let child of this._children) { await child._executeAllActions(); } for(let action of this._actions) { await action(); } })(); } }