1
0
mirror of https://github.com/garraflavatra/rolens.git synced 2025-04-18 00:11:03 +00:00
rolens/frontend/src/stores.js

33 lines
653 B
JavaScript

import { writable } from 'svelte/store';
export const busy = (() => {
const { update, subscribe } = writable(0);
subscribe(isBusy => {
if (isBusy) {
document.body.classList.add('busy');
}
else {
document.body.classList.remove('busy');
}
});
return {
start: () => update(v => ++v),
end: () => update(v => --v),
subscribe,
};
})();
export const contextMenu = (() => {
const { set, subscribe } = writable();
return {
show: (evt, menu) => set(menu ? {
position: [ evt.clientX, evt.clientY ],
items: menu,
} : undefined),
hide: () => set(undefined),
subscribe,
};
})();