153 lines
3.1 KiB
JavaScript
153 lines
3.1 KiB
JavaScript
import {action, observable, extendObservable} from 'mobx';
|
|
import { notification, } from 'antd';
|
|
|
|
export const DIALOG = {
|
|
ORDER: {
|
|
MAKE_PAYMENT: "dialog_order_make_payment",
|
|
CANCEL_PAYMENT: "dialog_order_cancel_payment",
|
|
INPUT_SHIPPING_CODE: 'dialog_order_input_shipping_code',
|
|
GOJEK_DELIVERY : 'dialog_order_gojek_delivery',
|
|
PREORDER_ADD_NOTES : 'dialog_preorder_add_notes'
|
|
},
|
|
FEATURED_ITEM : {
|
|
CREATE : 'dialog_featured_item_create'
|
|
},
|
|
CUSTOM_MENU : {
|
|
CREATE : 'dialog_featured_custom_menu'
|
|
},
|
|
STORES: {
|
|
CREATE: "dialog_stores_create",
|
|
UPDATE: "dialog_stores_update",
|
|
},
|
|
ADDRESS :{
|
|
CREATE : "dialog_address_create"
|
|
},
|
|
SETTING : {
|
|
CATEGORIES : 'dialog_categories',
|
|
TAGS : 'dialog_tags',
|
|
},
|
|
EMPLOYEE: {
|
|
CREATE: "dialog_employee_create",
|
|
UPDATE: "dialog_employee_update",
|
|
},
|
|
WALLET: {
|
|
DEPOSIT: "dialog_wallet_deposit",
|
|
WITHDRAW: "dialog_wallet_withdraw",
|
|
},
|
|
UI: {
|
|
LOADING: "dialog_loading",
|
|
ALERT: "dialog_alert"
|
|
},
|
|
ENTITY: {
|
|
CREATE: 'entity_create'
|
|
},
|
|
STORE_LIST: {
|
|
CREATE: 'store_list_create'
|
|
},
|
|
FEATURED_STORES: {
|
|
CREATE: 'featured_stores_create'
|
|
},
|
|
FEATURED_CATEGORIES: {
|
|
CREATE: 'featured_categories_create'
|
|
},
|
|
};
|
|
|
|
export default class GlobalUI {
|
|
@observable showSideMenu = false;
|
|
@observable backgroundColor = "#fff";
|
|
@observable snackbarVisibility = false;
|
|
@observable loadingVisibility = false;
|
|
@observable snackbarMessage = "";
|
|
@observable settingTabSelected = "General";
|
|
@observable itemsTabSelected = "all";
|
|
@observable globalAlert = '';
|
|
@observable dataTabSelected = "";
|
|
@observable layoutTabSelected = "";
|
|
@observable contentTabSelected = "";
|
|
|
|
constructor() {
|
|
|
|
let dialogValue = {};
|
|
|
|
Object.keys(DIALOG).map(k => {
|
|
Object.keys(DIALOG[k]).map(key => dialogValue[DIALOG[k][key]] = false);
|
|
});
|
|
|
|
extendObservable(this, dialogValue);
|
|
}
|
|
|
|
@action
|
|
showNotification(title, msg){
|
|
notification.config({
|
|
placement: 'topRight',
|
|
duration: 30,
|
|
top:80,
|
|
className:'marketplace-notification'
|
|
});
|
|
|
|
notification.error({
|
|
description: msg,
|
|
message: title,
|
|
style: {zIndex: 999999},
|
|
className:'marketplace-notification'
|
|
});
|
|
}
|
|
|
|
@action
|
|
showDialog(name) {
|
|
this[name] = true;
|
|
}
|
|
|
|
@action
|
|
hideDialog(name) {
|
|
this[name] = false;
|
|
}
|
|
|
|
@action
|
|
changeBackgroundColor(color) {
|
|
this.backgroundColor = (!color) ? this.backgroundColor : color;
|
|
}
|
|
|
|
@action
|
|
openSnackbar(message){
|
|
this.snackbarMessage = message;
|
|
this.snackbarVisibility = true;
|
|
setTimeout(() => {
|
|
this.snackbarVisibility = false;
|
|
this.snackbarMessage = "";
|
|
}, 3000);
|
|
}
|
|
|
|
@action
|
|
openLoading(){
|
|
this.loadingVisibility = true;
|
|
}
|
|
|
|
@action
|
|
closeLoading(){
|
|
this.loadingVisibility = false;
|
|
}
|
|
|
|
@action
|
|
showDialogLoading() {
|
|
this[DIALOG.UI.LOADING] = true;
|
|
}
|
|
|
|
@action
|
|
hideDialogLoading() {
|
|
this[DIALOG.UI.LOADING] = false;
|
|
}
|
|
|
|
@action
|
|
showAlert(message) {
|
|
this.globalAlert = message;
|
|
this[DIALOG.UI.ALERT] = true;
|
|
}
|
|
|
|
@action
|
|
hideAlert() {
|
|
this.globalAlert = '';
|
|
this[DIALOG.UI.ALERT] = false;
|
|
}
|
|
}
|