Класс SourceOnce используется в случаях когда нужно создать источник данных в котором на старте не будет значения, оно будет установлено позже но только один раз, последующие установки новых значений будут игнорироваться.
Пример 1.
import { SourceOnce, Patron } from "patron-oop";
const source = new SourceOnce();
source.value(new Patron((v) => {
document.querySelector(".guest-result").textContent = v;
}));
setTimeout(() => {
source.give(10)
}, 1000);
// Код ниже не имеет эффекта
setTimeout(() => {
source.give(20)
}, 2000);
setTimeout(() => {
source.give(30)
}, 3000);
Результат 1.