Bug fix.
- Refactor HttpGetter function. - Remove redundant asset files. - Fix BlockSync dependency issues.
This commit is contained in:
@@ -1,33 +1,32 @@
|
||||
import {Injectable} from '@angular/core';
|
||||
import {Settings} from '@app/_models';
|
||||
import Web3 from 'web3';
|
||||
import {abi, Registry, TransactionHelper} from 'cic-client';
|
||||
import {CICRegistry, TransactionHelper} from 'cic-client';
|
||||
import {first} from 'rxjs/operators';
|
||||
import {TransactionService} from '@app/_services/transaction.service';
|
||||
import {environment} from '@src/environments/environment';
|
||||
const cic = require('@src/assets/js/block-sync/cic-client.web');
|
||||
import {HttpGetter} from '@app/_helpers';
|
||||
|
||||
@Injectable({
|
||||
providedIn: 'root'
|
||||
})
|
||||
export class BlockSyncService {
|
||||
trustedDeclaratorAddress: string = '0x5567139c7a1C2977A391f51D8cA45B1D6700f5F6';
|
||||
readyStateTarget: number = 2;
|
||||
readyState: number = 0;
|
||||
fileGetter = new HttpGetter();
|
||||
|
||||
constructor(private transactionService: TransactionService) { }
|
||||
|
||||
blockSync(): any {
|
||||
const settings = new Settings(this.scan);
|
||||
const provider = environment.web3Provider;
|
||||
const readyStateElements = {
|
||||
token: 1,
|
||||
network: 2,
|
||||
};
|
||||
const readyStateElements = { network: 2 };
|
||||
settings.w3.provider = provider;
|
||||
settings.w3.engine = new Web3(provider);
|
||||
settings.registry = new Registry(settings.w3.engine, environment.registryAddress, abi);
|
||||
settings.txHelper = new TransactionHelper(settings.registry);
|
||||
settings.registry = new CICRegistry(settings.w3.engine, environment.registryAddress, this.fileGetter,
|
||||
['../../assets/js/block-sync/data']);
|
||||
settings.registry.declaratorHelper.addTrust(environment.trustedDeclaratorAddress);
|
||||
settings.txHelper = new TransactionHelper(settings.w3.engine, settings.registry);
|
||||
|
||||
settings.txHelper.ontransfer = async (transaction: any): Promise<void> => {
|
||||
window.dispatchEvent(this.newTransferEvent(transaction));
|
||||
@@ -35,12 +34,8 @@ export class BlockSyncService {
|
||||
settings.txHelper.onconversion = async (transaction: any): Promise<any> => {
|
||||
window.dispatchEvent(this.newConversionEvent(transaction));
|
||||
};
|
||||
settings.registry.ontokensload = (tokenCount: number): void => {
|
||||
// console.debug('loaded tokens', tokenCount);
|
||||
this.readyStateProcessor(settings, readyStateElements.token);
|
||||
};
|
||||
settings.registry.onregistryload = (addressReturned: number): void => {
|
||||
// console.debug('loaded network contracts', addressReturned);
|
||||
settings.registry.onload = (addressReturned: number): void => {
|
||||
console.log('loaded network contracts', addressReturned);
|
||||
this.readyStateProcessor(settings, readyStateElements.network);
|
||||
};
|
||||
|
||||
@@ -79,7 +74,7 @@ export class BlockSyncService {
|
||||
}
|
||||
|
||||
async scan(settings, lo, hi, bloomBlockBytes, bloomBlocktxBytes, bloomRounds): Promise<void> {
|
||||
const w = new Worker('./../assets/js/worker.js');
|
||||
const w = new Worker('./../assets/js/block-sync/ondemand.js');
|
||||
w.onmessage = (m) => {
|
||||
settings.txHelper.processReceipt(m.data);
|
||||
};
|
||||
@@ -114,14 +109,4 @@ export class BlockSyncService {
|
||||
settings.scanFilter(settings, data.low, data.high, bOne, bTwo, data.filter_rounds);
|
||||
});
|
||||
}
|
||||
|
||||
headWorker(): void {
|
||||
const wHeadSync = new Worker('./../assets/js/block-sync/head.js', {type: 'module'});
|
||||
wHeadSync.onmessage = (m) => {
|
||||
console.log(m.data);
|
||||
};
|
||||
wHeadSync.postMessage({
|
||||
w3_provider: environment.web3Provider,
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3,9 +3,8 @@ import {BehaviorSubject, Observable} from 'rxjs';
|
||||
import {HttpClient, HttpHeaders, HttpParams} from '@angular/common/http';
|
||||
import {environment} from '@src/environments/environment';
|
||||
import {first} from 'rxjs/operators';
|
||||
import {ArgPair, Envelope, Syncable} from '@src/assets/js/cic-meta/sync.js';
|
||||
import {MutableKeyStore, MutablePgpKeyStore, PGPSigner, Signer} from '@app/_helpers';
|
||||
import {User} from 'cic-client-meta';
|
||||
import {ArgPair, Envelope, Syncable, User} from 'cic-client-meta';
|
||||
|
||||
@Injectable({
|
||||
providedIn: 'root'
|
||||
@@ -64,8 +63,7 @@ export class UserService {
|
||||
await this.updateMeta(syncableAccount, accountKey, this.headers);
|
||||
}, async error => {
|
||||
console.error('There is an error!', error);
|
||||
const refName = accountKey + ':cic.person';
|
||||
const syncableAccount: Syncable = new Syncable(refName, accountDetails);
|
||||
const syncableAccount: Syncable = new Syncable(accountKey, accountDetails);
|
||||
await this.updateMeta(syncableAccount, accountKey, this.headers);
|
||||
});
|
||||
return accountKey;
|
||||
|
||||
Reference in New Issue
Block a user