UNPKG

respond-framework

Version:
26 lines (24 loc) 793 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _kinds = require("../kinds.js"); const parallel = createParallelEvent => (state, e) => { if (e.kind !== _kinds.navigation) return; if (e.meta.parallel) return; // prevent cycles, as often parallel dispatches are bi-directional; preventing these cycles is the key and only feature of this plugin const parallelEvent = createParallelEvent(state, e); if (!parallelEvent || parallelEvent.event === state.curr.event) return; state.respond.devtools.sendPluginNotification({ type: 'parallel', returned: parallelEvent }); const meta = { parallel: true, from: e }; return parallelEvent.dispatch({ meta }); }; var _default = exports.default = parallel;