diff --git a/src/services/service.ts b/src/services/service.ts index 2736503..1a87fc2 100755 --- a/src/services/service.ts +++ b/src/services/service.ts @@ -257,25 +257,23 @@ export default class Services { setTimeout(async () => { if (apiReturn.updated_process && apiReturn.updated_process.length) { - const [processCommitment, process] = apiReturn.updated_process; - console.debug('Updated Process Commitment:', processCommitment); - console.debug('Process Details:', process); + const [commitmentTx, process] = apiReturn.updated_process; // Save process to storage - localStorage.setItem(processCommitment, JSON.stringify(process)); const db = await Database.getInstance(); db.addObject({ storeName: 'process', - object: { id: processCommitment, process }, - key: processCommitment, + object: { id: commitmentTx, process }, + key: null, }); // Check if the newly updated process reveals some new information try { - const proposals: string[] = this.sdkClient.get_update_proposals(processCommitment); - if (proposals && proposals.length != 0) { - const actual_proposal = JSON.parse(proposals[0]); // We just don't acknowledge concurrent proposals for now - console.info(actual_proposal); - await this.routingInstance.openConfirmationModal(actual_proposal, processCommitment); + const proposals: ApiReturn = this.sdkClient.get_update_proposals(commitmentTx); + const decrypted_pcds = proposals.decrypted_pcds; + if (decrypted_pcds && decrypted_pcds.length != 0) { + for (const actual_proposal of Object.values(decrypted_pcds)) { + await this.routingInstance.openConfirmationModal(actual_proposal, commitmentTx); + } } } catch (e) { console.error(e);