import bitmask from 'lib/bitmask' var LOCALE = 'en' export default class Provider { constructor(props) { this._name = props.name this._description = props.description let k = null for (k in props) { if (k != 'description' && k != 'name') { this[k] = props[k] } } } get name() { return this._name[LOCALE] } get description() { return this._description[LOCALE] } get hasEmail() { return this.services.includes("mx") } get hasVPN() { return this.services.includes("openvpn") } static setup(domain) { return bitmask.bonafide.provider.create(domain).then( response => { console.log("Provider configured: " + response.domain) return new Provider(response) } ) } static get(domain) { return bitmask.bonafide.provider.read(domain).then( response => { return new Provider(response) } ) } static list(seeded=false) { return bitmask.bonafide.provider.list(seeded).then( response => { return response.map( i => { return i['domain'] } ) } ) } static delete(domain) { return bitmask.bonafide.provider.delete(domain) } }