Skip to content
This repository was archived by the owner on Jul 1, 2022. It is now read-only.
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,7 @@
"create-redux-form": "^0.1.2",
"ethjs": "^0.3.3",
"history": "^4.7.2",
"kleros-api": "^0.13.0",
"kleros-api": "^0.14.0",
"lessdux": "^0.7.3",
"normalize.css": "^7.0.0",
"react": "^16.2.0",
Expand Down
3 changes: 2 additions & 1 deletion src/bootstrap/dapp-api.js
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,8 @@ export {
ETHAddressRegExpCaptureGroup,
ETHAddressRegExp,
strictETHAddressRegExp,
networkID
networkID,
env
}

setTimeout(
Expand Down
23 changes: 10 additions & 13 deletions src/components/iframes/doges-on-trial-evidence/index.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import React, { Component } from 'react'
import { ArbitrablePermissionList } from 'kleros-api/lib/contracts/implementations/arbitrable'

import { eth } from '../../../bootstrap/dapp-api'
import { eth, env } from '../../../bootstrap/dapp-api'
import LinkBox from '../../link-box'

import './doges-on-trial-evidence.css'
Expand All @@ -22,33 +22,30 @@ class DogesOnTrialEvidence extends Component {
)
}

async receiveEvidence(evidence) {
if (evidence.data && evidence.data.target === 'evidence') {
async receiveEvidence(message) {
if (message.data && message.data.target === 'evidence') {
const arbitrablePermissionList = new ArbitrablePermissionList(
eth.currentProvider,
evidence.data.data.arbitrableContractAddress
message.data.arbitrableContractAddress
)

const itemHash = await arbitrablePermissionList.getItemByDisputeId(
evidence.data.data.disputeID
message.data.disputeID
)
evidence.data.data.metaEvidence.fileURI =
process.env.REACT_APP_DEV_DOGE_IMAGES_BASE_URL + itemHash
message.data.metaEvidence.fileURI =
process.env[`REACT_APP_${env}_DOGE_IMAGES_BASE_URL`] + itemHash

this.setState({
evidence: evidence.data.data
evidence: message.data
})
}
}

render() {
const { evidence } = this.state
if (!evidence) return null
let uri
// it is metaEvidence if there is a disputeID. We have to fetch the image
if (evidence.disputeID !== null && evidence.disputeID !== undefined) {
uri = evidence.metaEvidence.fileURI
} else uri = evidence.URI

const uri = evidence.metaEvidence.fileURI

return (
<div className="DogesOnTrialEvidence">
Expand Down
13 changes: 11 additions & 2 deletions src/containers/dispute/components/details/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -17,13 +17,20 @@ class Details extends Component {
}

handleFrameMessage = message => {
if (message.data && message.data.target === 'evidence') {
if (
message.data &&
message.data.target === 'evidence' &&
message.data.loaded
) {
const { metaEvidence, disputeID, arbitrableContractAddress } = this.props

message.source.postMessage(
{
target: 'evidence',
data: { metaEvidence, disputeID, arbitrableContractAddress }
metaEvidence,
evidence: {},
arbitrableContractAddress,
disputeID
},
'*'
)
Expand All @@ -40,13 +47,15 @@ class Details extends Component {
metaEvidence
} = this.props

// Default display of primary document file.
let fileDisplay = (
<div>
<h4>File</h4>
<LinkBox link={metaEvidence.fileURI} />
</div>
)

// Use external interface to display primary document file.
if (metaEvidence.evidenceDisplayInterfaceURL) {
fileDisplay = (
<iframe
Expand Down
15 changes: 8 additions & 7 deletions src/containers/dispute/components/ruling/index.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
import React from 'react'
import PropTypes from 'prop-types'
import _ from 'lodash'

import { ChainData } from '../../../../chainstrap'
import { ARBITRATOR_ADDRESS } from '../../../../bootstrap/dapp-api'
Expand All @@ -14,7 +15,7 @@ const Ruling = ({
votesForPartyA,
votesForPartyB,
netPNK,
rulings,
ruling,
disputeID,
appeals,
appealNumber,
Expand All @@ -24,11 +25,11 @@ const Ruling = ({
const won = netPNK >= 0
// For now assume all draws for juror had the same ruling
const jurorRuling =
rulings.length > 0
? rulings[0] > 0
? `You ruled: ${metaEvidence.rulingOptions.titles[rulings[0] - 1]}`
_.isNull(ruling)
? ''
: ruling > 0
? `You ruled: ${metaEvidence.rulingOptions.titles[ruling - 1]}`
: 'No Ruling'
: ''
return (
<div className="Ruling">
<hr />
Expand Down Expand Up @@ -132,7 +133,7 @@ Ruling.propTypes = {
votesForPartyA: PropTypes.number.isRequired,
votesForPartyB: PropTypes.number.isRequired,
netPNK: PropTypes.number.isRequired,
rulings: PropTypes.shape,
ruling: PropTypes.shape,
disputeID: PropTypes.number.isRequired,
appeals: PropTypes.number.isRequired,
appealNumber: PropTypes.number.isRequired,
Expand All @@ -142,7 +143,7 @@ Ruling.propTypes = {
Ruling.defaultProps = {
// State
date: null,
rulings: []
ruling: null
}

export default Ruling
4 changes: 2 additions & 2 deletions src/containers/dispute/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -166,8 +166,8 @@ class Dispute extends PureComponent {
votesForPartyA={e.voteCounter[1]}
votesForPartyB={e.voteCounter[2]}
netPNK={dispute.data.netPNK}
rulings={
dispute.data.appealJuror[e.appealNumber].rulings
ruling={
dispute.data.appealJuror[e.appealNumber].ruling
}
disputeID={dispute.data.disputeId}
appeals={dispute.data.numberOfAppeals}
Expand Down