Иногда к занчению источника нужно применить какую-нибудь существующую функцию, для этого можно использовать класс SourceApplied
Пример 1.
import { Source, SourceApplied, Patron } from "patron-oop";
const guest = v => {
const r = document.querySelector(".guest-result");
if (r) {
r.textContent = v;
}
}
const max = 10;
let iterations = 0;
const timer = new Source((g) => {
const tick = () => {
iterations++;
g.give(iterations);
setTimeout(tick, 1000);
}
tick();
});
new SourceApplied(timer, x => x * 2).value(new Patron(guest));
Результат 1.