Skip to content

Commit

Permalink
Merge remote-tracking branch 'origin/develop' into add-staking-page-r…
Browse files Browse the repository at this point in the history
…evamp
  • Loading branch information
vsubhuman committed Nov 26, 2021
2 parents aeacaf9 + 711eae7 commit 09a1ac7
Show file tree
Hide file tree
Showing 76 changed files with 10,613 additions and 16,105 deletions.
10 changes: 5 additions & 5 deletions install-all.sh
@@ -1,5 +1,5 @@
npm i
npm i --prefix packages/yoroi-extension
npm i --prefix packages/yoroi-ergo-connector
npm i --prefix packages/yoroi-ergo-connector/example-ergo
npm i --prefix packages/yoroi-ergo-connector/example-cardano
npm i \
&& npm i --prefix packages/yoroi-extension \
&& npm i --prefix packages/yoroi-ergo-connector \
&& npm i --prefix packages/yoroi-ergo-connector/example-ergo \
&& npm i --prefix packages/yoroi-ergo-connector/example-cardano
3 changes: 3 additions & 0 deletions packages/yoroi-ergo-connector/example-cardano/index.html
Expand Up @@ -35,6 +35,9 @@ <h1 class="display-4 text-center">Cardano dApp Example</h1>
<div class="col-6 mb-4">
<button id="sign-tx" class="btn btn-light w-100">Sign Tx</button>
</div>
<div class="col-6 mb-4">
<button id="create-tx" class="btn btn-light w-100">Create Tx</button>
</div>
</div>
<div class="w-100 d-flex justify-content-center my-2">
<div class="d-none" id="spinner" role="status"></div>
Expand Down
55 changes: 52 additions & 3 deletions packages/yoroi-ergo-connector/example-cardano/index.js
Expand Up @@ -8,6 +8,7 @@ const getAccountBalance = document.querySelector('#get-balance')
const getUtxos = document.querySelector('#get-utxos')
const submitTx = document.querySelector('#submit-tx')
const signTx = document.querySelector('#sign-tx')
const createTx = document.querySelector('#create-tx')
const alertEl = document.querySelector('#alert')
const spinner = document.querySelector('#spinner')

Expand Down Expand Up @@ -150,7 +151,7 @@ signTx.addEventListener('click', () => {
alertError('Should request change address first')
}

const txBuilder = CardanoWasm.WalletV4TxBuilder(
const txBuilder = CardanoWasm.TransactionBuilder.new(
// all of these are taken from the mainnet genesis settings
// linear fee parameters (a*size + b)
CardanoWasm.LinearFee.new(CardanoWasm.BigNum.from_str('44'), CardanoWasm.BigNum.from_str('155381')),
Expand All @@ -159,7 +160,11 @@ signTx.addEventListener('click', () => {
// pool deposit
CardanoWasm.BigNum.from_str('500000000'),
// key deposit
CardanoWasm.BigNum.from_str('2000000')
CardanoWasm.BigNum.from_str('2000000'),
// maxValueBytes
5000,
// maxTxBytes
16384,
)

// add a keyhash input - for ADA held in a Shelley-era normal address (Base, Enterprise, Pointer)
Expand Down Expand Up @@ -206,7 +211,7 @@ signTx.addEventListener('click', () => {

cardanoApi.sign_tx(txHex, true).then(witnessSetHex => {
toggleSpinner('hide')
alertSuccess('Signing tx succeeds: ')

const witnessSet = CardanoWasm.TransactionWitnessSet.from_bytes(
Buffer.from(witnessSetHex, 'hex')
)
Expand All @@ -216,13 +221,57 @@ signTx.addEventListener('click', () => {
undefined,
)
transactionHex = Buffer.from(transaction.to_bytes()).toString('hex')
alertSuccess('Signing tx succeeds: ' + transactionHex)

}).catch(error => {
console.error(error)
toggleSpinner('hide')
alertWarrning('Signing tx fails')
})
})

createTx.addEventListener('click', () => {
toggleSpinner('show');

if (!accessGranted) {
alertError('Should request access first');
return;
}

const output = CardanoWasm.TransactionOutput.new(
CardanoWasm.Address.from_bech32(SEND_TO_ADDRESS),
CardanoWasm.Value.new(CardanoWasm.BigNum.from_str('1000002'))
)

const txReq = {
includeInputs: [
'a8ecebf0632518736474012f8d644b6b287859713f60624e961d230422e45c192'
],
includeOutputs: [
Buffer.from(output.to_bytes()).toString('hex'),
],
includeTargets: [
{
// do not specify value, the connector will use minimum value
address: '00756c95f9967c214e571500a0140b88f6dd9c4a7444e74acc1841ce92c3892366f174a76af9252f78368f5747d3055ab3568ea3b6bf40b01e',
assets: {
'2c9d0ecfc2ee1288056df15be4196d8ded73db345ea5b4cd5c7fac3f.76737562737465737435': 1,
},
}
]
}

cardanoApi.create_tx(txReq, true).then(txHex => {
toggleSpinner('hide')
alertSuccess('Creating tx succeeds: ' + txHex)
transactionHex = txHex
}).catch(error => {
console.error(error)
toggleSpinner('hide')
alertWarrning('Creating tx fails')
})
})

if (typeof cardano === "undefined") {
alert("Cardano not found");
} else {
Expand Down

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion packages/yoroi-ergo-connector/example-cardano/package.json
Expand Up @@ -11,7 +11,7 @@
"start": "webpack-dev-server"
},
"devDependencies": {
"@emurgo/cardano-serialization-lib-browser": "6.0.0",
"@emurgo/cardano-serialization-lib-browser": "9.1.0",
"webpack": "^4.29.3",
"webpack-cli": "^3.1.0",
"webpack-dev-server": "^3.1.5",
Expand Down
38 changes: 36 additions & 2 deletions packages/yoroi-ergo-connector/example-ergo/index.html
Expand Up @@ -3,12 +3,46 @@
<head>
<meta charset="utf-8">
<link rel="shortcut icon" href="favicon.ico">
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.0/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-KyZXEAg3QhqLMpG8r+8fhAXLRk2vvoC2f3B09zVXn8CA5QIVfZOJ3BCsw2P0p/We" crossorigin="anonymous">
<title>Ergo Test dApp</title>
</head>
<body>
<div id = "balance">Balance: n/a</div>
<div id = "status">Wallet not connected</div>
<!-- <div id = "balance">Balance: n/a</div>
<div id = "status">Wallet not connected</div> -->
<div class="container">
<div class="my-3">
<h1 class="display-4 text-center">Ergo dApp Example</h1>
</div>
<div class="row">
<div class="col-12 text-center my-3">
<button id="request-access" class="btn btn-primary">Request access to yoroi</button>
</div>
<div class="col-6 mb-4">
<button id="get-balance" class="btn btn-light w-100" >Get Balance</button>
</div>
<div class="col-6 mb-4">
<button id="get-unused-addresses" class="btn btn-light w-100" >Get Unused Addresses</button>
</div>
<div class="col-6 mb-4">
<button id="get-used-addresses" class="btn btn-light w-100" >Get Used Addresses</button>
</div>
<div class="col-6 mb-4">
<button id="get-change-address" class="btn btn-light w-100" >Get Change Address</button>
</div>
<div class="col-6 mb-4">
<button id="get-utxos" class="btn btn-light w-100" >Get Utxos</button>
</div>
<div class="col-6 mb-4">
<button id="sign-tx" class="btn btn-light w-100">Sign Tx</button>
</div>
<div class="w-100 d-flex justify-content-center my-2">
<div class="d-none" id="spinner" role="status"></div>
</div>
<div class="d-none" id="alert" role="alert"></div>
<div id="sign-tx-container" class="mt-1"></div>
</div>
<noscript>This page contains webassembly and javascript content, please enable javascript in your browser.</noscript>
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.0/dist/js/bootstrap.bundle.min.js" integrity="sha384-U1DAWAznBHeqEIlVSCgzq+c9gqGAJn5c/t99JyeKa9xxaYpSvHU5awsuZVVFIhvj" crossorigin="anonymous"></script>
<script src="./bootstrap.js"></script>
</body>
</html>

0 comments on commit 09a1ac7

Please sign in to comment.