helper.js 931 Bytes
import request from './request'

export default class Helper {
    constructor() {
    }

    static getUrlKey(name) {
        return decodeURIComponent((new RegExp('[?|&]' + name + '=' + '([^&;]+?)(&|#|;|$)').exec(location.href) || [, ''])[1].replace(/\+/g, '%20')) || null
    }

    static getToken() {
        return this.getUrlKey('token')
    }

    /**
     *
     * @returns {Promise<never>|Promise<{sign, id}>}
     */
    static verifyToken() {
        return request.get('auth').then(res => {
            const {esm_id} = res.data
            return Promise.resolve({id: esm_id, sign: window.genTestUserSig(esm_id).userSig})
        })
    }

    static contactList() {
        return request.get('im/contacts')
    }

    static groupList(params = {}) {
        return request.get('im/groups', {params})
    }

    static joinGroup(id, member) {
        return request.post(`im/groups/${id}/members`, {member})
    }
}