paraview-lite
Version:
Lite ParaView client for Scientific Visualization on the Web
30 lines (28 loc) • 865 B
JavaScript
const PVL_NETWORK_BUFFER = {};
let networkCalls = 0;
export default {
actions: {
PVL_CONTEXTS_LINE({ getters, dispatch }, { visible, point1, point2 }) {
if (PVL_NETWORK_BUFFER.nextLineUpdate || networkCalls) {
PVL_NETWORK_BUFFER.nextLineUpdate = { visible, point1, point2 };
return;
}
const client = getters.PVL_NETWORK_CLIENT;
if (client) {
networkCalls++;
client
.getRemote()
.Lite.updateLineContext(visible, point1, point2)
.then(() => {
networkCalls--;
if (PVL_NETWORK_BUFFER.nextLineUpdate) {
const arg = PVL_NETWORK_BUFFER.nextLineUpdate;
PVL_NETWORK_BUFFER.nextLineUpdate = null;
dispatch('PVL_CONTEXTS_LINE', arg);
}
})
.catch(console.error);
}
},
},
};