portal-www
Version:
Nova Portal Website. Based on Next starter by Ueno
51 lines (38 loc) • 1.15 kB
text/typescript
import { MainColorType } from '@nova-hf/ui';
import { action, extendObservable, makeObservable, observable } from 'mobx';
export default class UI {
constructor({ ui = {} }) {
makeObservable(this, {
isHeaderInverted: observable,
isMegaMenuOpen: observable,
setIsHeaderInverted: action,
setIsMegaMenuOpen: action,
showContactBubble: observable,
setShowContactBubble: action,
isContactMenuOpen: observable,
setIsContactMenuOpen: action,
serviceColor: observable,
});
extendObservable(this, ui);
}
isHeaderInverted = false;
isMegaMenuOpen = false;
serviceColor: MainColorType = 'pink';
showContactBubble = true;
isContactMenuOpen = false;
setIsHeaderInverted(isInverted: boolean) {
this.isHeaderInverted = isInverted;
}
setIsMegaMenuOpen(isOpen: boolean) {
this.isMegaMenuOpen = isOpen;
}
setServiceColor(color: MainColorType) {
this.serviceColor = color;
}
setShowContactBubble(showBubble: boolean) {
this.showContactBubble = showBubble;
}
setIsContactMenuOpen(isOpen: boolean) {
this.isContactMenuOpen = isOpen;
}
}