UNPKG

portal-www

Version:

Nova Portal Website. Based on Next starter by Ueno

58 lines (47 loc) 1.06 kB
import { action, extendObservable, makeObservable, observable } from 'mobx'; export default class Steps { constructor({ steps = {} }) { makeObservable(this, { currentStep: observable, accordionStep: observable, onCompleteSteps: observable, completedStep: observable, next: action, prev: action, setStep: action, close: action, reset: action, }); extendObservable(this, steps); } currentStep = 1; accordionStep = 1; onCompleteSteps = false; completedStep = 0; next() { this.currentStep += 1; } prev() { if (this.currentStep > 1) { this.currentStep -= 1; } } setStep(newStep: number) { this.currentStep = newStep; } setAccordionStep(newStep: number) { this.accordionStep = newStep; } setCompletedStep(step: number) { this.completedStep = step; } close() { this.onCompleteSteps = true; } reset() { this.currentStep = 1; this.accordionStep = 1; this.completedStep = 0; this.onCompleteSteps = false; } }