UNPKG

copay-crown

Version:

A Secure Crown Wallet

51 lines (40 loc) 1.35 kB
import { HttpClient } from '@angular/common/http'; import { Injectable } from '@angular/core'; import { Logger } from '../../providers/logger/logger'; import * as _ from 'lodash'; const exchangeList:object[] = [{ 'name' : 'coinbase' }, { 'name' : 'glidera' }]; @Injectable() export class HomeIntegrationsProvider { public services: any; constructor( public http: HttpClient, private logger: Logger, ) { this.logger.info('HomeIntegrationsProviders initialized.'); this.services = []; } public register(serviceInfo) { // Check if already exists if (_.find(this.services, { 'name': serviceInfo.name })) return; this.logger.info('Adding home Integrations entry:' + serviceInfo.name); this.services.push(serviceInfo); } public unregister(serviceName) { this.services = _.filter(this.services, (x) => { return x.name != serviceName }); } public update(serviceName, token) { this.services = _.filter(this.services, (x) => { if (x.name == serviceName) x.linked = !!token; return x; }); } public get() { return _.orderBy(this.services, ['name'], ['asc']); } public getAvailableExchange() { let exchangeServices = _.intersectionBy(this.services, exchangeList, 'name'); return _.filter(exchangeServices, { 'linked':true, 'show':true }); } }