UNPKG

patronum

Version:

☄️ Effector utility library delivering modularity and convenience

38 lines (37 loc) 715 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.once = once; var _effector = require("effector"); function once(unitOrConfig) { let source; let reset; if (_effector.is.unit(unitOrConfig)) { source = unitOrConfig; } else { ({ source, reset } = unitOrConfig); } const $canTrigger = (0, _effector.createStore)(true, { name: "$canTrigger", sid: "ys2jl0" }); const trigger = (0, _effector.sample)({ and: [{ source, filter: $canTrigger }], or: { name: "trigger", sid: "e3xto3" } }); $canTrigger.on(trigger, () => false); if (reset) { $canTrigger.reset(reset); } return trigger; }