init project portal web
This commit is contained in:
76
lib/price-plan-detail/state/price-plan-detail-state.ts
Normal file
76
lib/price-plan-detail/state/price-plan-detail-state.ts
Normal file
@ -0,0 +1,76 @@
|
||||
import { OptionProps } from "@/lib/helper/type"
|
||||
import { makeAutoObservable } from "mobx";
|
||||
import RatePlanSectionState from "./rate-plan-section-state";
|
||||
|
||||
export default class PricePlanDetailState {
|
||||
private pricePlanId: string = "";
|
||||
private flow: number = 0;
|
||||
private name: string = "";
|
||||
private version: string = "";
|
||||
private usageEventModalIsOpen: boolean = false;
|
||||
private usageEventSelected: Array<any> = [];
|
||||
private eventSelectted: OptionProps | null = null;
|
||||
private ratePlans: RatePlanSectionState[] = []
|
||||
|
||||
constructor() {
|
||||
makeAutoObservable(this)
|
||||
}
|
||||
|
||||
getPricePlanId = () => this.pricePlanId;
|
||||
|
||||
getFlow = () => this.flow;
|
||||
|
||||
getName = () => this.name;
|
||||
|
||||
getVersion = () => this.version;
|
||||
|
||||
getUsageEventModalIsOpen = () => this.usageEventModalIsOpen;
|
||||
|
||||
getUsageEventSelected = () => this.usageEventSelected;
|
||||
|
||||
getEventSelected = () => this.eventSelectted;
|
||||
|
||||
getRatePlans = () => this.ratePlans
|
||||
|
||||
setPricePlanId = (id: string) => {
|
||||
this.pricePlanId = id;
|
||||
};
|
||||
|
||||
setFlow = (flow: number) => {
|
||||
this.flow = flow;
|
||||
};
|
||||
|
||||
setName = (name: string) => {
|
||||
this.name = name;
|
||||
};
|
||||
|
||||
setVersion = (version: string) => {
|
||||
this.version = version;
|
||||
};
|
||||
|
||||
setUsageEventModalIsOpen = (isOpen: boolean) => {
|
||||
this.usageEventModalIsOpen = isOpen;
|
||||
};
|
||||
|
||||
setUsageEventSelected = (selected: Array<any>) => {
|
||||
this.usageEventSelected = selected;
|
||||
};
|
||||
|
||||
setEventSelected = (option: OptionProps | null) => {
|
||||
this.eventSelectted = option;
|
||||
};
|
||||
|
||||
setRatePlans = (plans: RatePlanSectionState[]) => {
|
||||
this.ratePlans = plans
|
||||
}
|
||||
|
||||
reset = () => {
|
||||
this.pricePlanId = "";
|
||||
this.flow = 0;
|
||||
this.name = "";
|
||||
this.version = "";
|
||||
this.usageEventModalIsOpen = false;
|
||||
this.usageEventSelected = [];
|
||||
this.eventSelectted = null;
|
||||
};
|
||||
}
|
||||
15
lib/price-plan-detail/state/price-version-form-state.ts
Normal file
15
lib/price-plan-detail/state/price-version-form-state.ts
Normal file
@ -0,0 +1,15 @@
|
||||
import { makeAutoObservable } from "mobx"
|
||||
|
||||
export default class PriceVersionFormState {
|
||||
private isOpen: boolean = false
|
||||
|
||||
constructor() {
|
||||
makeAutoObservable(this)
|
||||
}
|
||||
|
||||
getIsOpen = () => this.isOpen
|
||||
|
||||
setIsOpen = (open: boolean) => {
|
||||
this.isOpen = open
|
||||
}
|
||||
}
|
||||
50
lib/price-plan-detail/state/rate-plan-form-state.ts
Normal file
50
lib/price-plan-detail/state/rate-plan-form-state.ts
Normal file
@ -0,0 +1,50 @@
|
||||
import { makeAutoObservable } from "mobx"
|
||||
|
||||
export default class RatePlanFormState {
|
||||
private open: boolean = false;
|
||||
private ratePlanName: string = "";
|
||||
private ratePlanCode: string = "";
|
||||
private ratePlanType: string = "";
|
||||
private remarks: string = "";
|
||||
|
||||
constructor() {
|
||||
makeAutoObservable(this);
|
||||
}
|
||||
|
||||
// --- Getters ---
|
||||
getOpen = () => this.open;
|
||||
getRatePlanName = () => this.ratePlanName;
|
||||
getRatePlanCode = () => this.ratePlanCode;
|
||||
getRatePlanType = () => this.ratePlanType;
|
||||
getRemarks = () => this.remarks;
|
||||
|
||||
// --- Setters ---
|
||||
setOpen = (value: boolean) => {
|
||||
this.open = value;
|
||||
};
|
||||
|
||||
setRatePlanName = (value: string) => {
|
||||
this.ratePlanName = value;
|
||||
};
|
||||
|
||||
setRatePlanCode = (value: string) => {
|
||||
this.ratePlanCode = value;
|
||||
};
|
||||
|
||||
setRatePlanType = (value: string) => {
|
||||
this.ratePlanType = value;
|
||||
};
|
||||
|
||||
setRemarks = (value: string) => {
|
||||
this.remarks = value;
|
||||
};
|
||||
|
||||
// --- Reset ---
|
||||
reset = () => {
|
||||
this.open = false;
|
||||
this.ratePlanName = "";
|
||||
this.ratePlanCode = "";
|
||||
this.ratePlanType = "";
|
||||
this.remarks = "";
|
||||
};
|
||||
}
|
||||
22
lib/price-plan-detail/state/rate-plan-section-state.ts
Normal file
22
lib/price-plan-detail/state/rate-plan-section-state.ts
Normal file
@ -0,0 +1,22 @@
|
||||
import { makeAutoObservable } from "mobx"
|
||||
|
||||
export default class RatePlanSectionState {
|
||||
private ratePlanName: string = "Rate Plan"
|
||||
private isExpand: boolean = false
|
||||
|
||||
constructor(){
|
||||
makeAutoObservable(this)
|
||||
}
|
||||
|
||||
getRatePlanName = () => this.ratePlanName
|
||||
|
||||
getIsExpand = () => this.isExpand
|
||||
|
||||
setRatePlanName = (name: string) => {
|
||||
this.ratePlanName = name
|
||||
}
|
||||
|
||||
setIsExpand = (val: boolean) => {
|
||||
this.isExpand = val
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user