23 lines
936 B
JavaScript
23 lines
936 B
JavaScript
"use strict";
|
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
exports.changeOnFirstSuccess = changeOnFirstSuccess;
|
|
function changeOnFirstSuccess(o) {
|
|
return async function* (getInput) {
|
|
let currentValue = getInput();
|
|
while (!currentValue.lastResult) {
|
|
yield;
|
|
currentValue = getInput();
|
|
}
|
|
const beforeFirstSuccess = o.beforeFirstSuccess(getInput);
|
|
for (let res = await beforeFirstSuccess.next(); currentValue?.lastResult !== 'success' && !res.done; res = await beforeFirstSuccess.next()) {
|
|
yield;
|
|
currentValue = getInput();
|
|
}
|
|
const afterFirstSuccess = o.afterFirstSuccess(getInput);
|
|
for (let res = await afterFirstSuccess.next(); !res.done; res = await afterFirstSuccess.next()) {
|
|
yield;
|
|
currentValue = getInput();
|
|
}
|
|
};
|
|
}
|
|
//# sourceMappingURL=changeOnFirstSuccess.js.map
|