/**
 * 系统信息状态管理
 */
import { Module } from 'vuex'
import { State } from '../index'
import mutations from './mutations'
import actions from './actions'
import getters from './getters'


export interface ServeinfoStoreType {
    /**
     * 系统信息配置信息
     */
    orderUrl: string         // 新账单地址
    sysInfo: string          // 本机系统信息
    updateOrder: number      // 通过getters来动态刷新订单
    isFirstLogin: boolean    // 是否显示立即登录
    appFilePath: any         // app下载的文件
    isNetWork: boolean       // 手机是否连接上网络
    isAgreement: boolean     // 是否同意用户协议
    isAgreementIf: boolean   // 勾选协议问题
    serviceInfo: object      // 服务信息
}

/**
 * 服务器配置 
 */
export const serveInfo: Module<ServeinfoStoreType, State> = {
    // 开启命名空间
    namespaced: true,
    state: (): ServeinfoStoreType => ({
        orderUrl: '',           // 新账单地址
        sysInfo: '{"osVersion":"10.0.0","osName":"ios"}',// 本机系统信息
        updateOrder: 0,         // 通过getters来动态刷新订单
        isFirstLogin: false,    // 是否显示立即登录
        appFilePath: '',        // app下载的文件
        isNetWork: true,        // 手机是否连接上网络默认有网
        isAgreement: false,     // 是否同意用户协议
        isAgreementIf: false,   // 勾选协议问题
        serviceInfo: {}         // 服务信息
    }),
    mutations,
    actions,
    getters
}