Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
lightning-bits
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
bitsoko services
lightning-bits
Commits
97336715
Commit
97336715
authored
Mar 05, 2022
by
allan juma
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
update
parent
3a1ca9cd
Changes
7
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
69 additions
and
17 deletions
+69
-17
pool.js
src/action/pool.js
+14
-1
pools.py
src/chains/algo/pools.py
+1
-0
helper.js
src/helper.js
+3
-1
pay-pool-confirm.js
src/view/pay-pool-confirm.js
+42
-6
pay-pool-done.js
src/view/pay-pool-done.js
+1
-1
payment-failed.js
src/view/payment-failed.js
+6
-6
pool-detail.js
src/view/pool-detail.js
+2
-2
No files found.
src/action/pool.js
View file @
97336715
...
...
@@ -98,7 +98,20 @@ var ret = {
//const rate = tickers.find(t => t.ticker.toLowerCase() === fiat).rate;
var
quote
=
await
this
.
addQuote
;
this
.
_store
.
pools
=
await
Promise
.
all
(
pools
.
map
(
await
this
.
poolsToPool
));
var
pooled
=
await
Promise
.
allSettled
(
pools
.
map
(
this
.
poolsToPool
));
console
.
log
(
pooled
);
pooled
=
pooled
.
filter
(
function
(
pl
){
console
.
log
(
pl
.
quote
);
return
pl
.
status
==
'fulfilled'
&&
pl
.
value
.
quote
!=
undefined
;
});
console
.
log
(
pooled
);
this
.
_store
.
pools
=
pooled
.
map
(
function
(
pl
){
if
(
pl
.
status
==
'fulfilled'
){
var
ret
=
pl
.
value
;
return
ret
;
}
});
}
catch
(
err
)
{
log
.
error
(
'Listing transactions failed'
,
err
);
...
...
src/chains/algo/pools.py
View file @
97336715
...
...
@@ -199,6 +199,7 @@ if action == "quote":
ASA
=
client
.
fetch_asset
(
aID1
)
BTC
=
client
.
fetch_asset
(
aID2
)
print
(
ASA
,
BTC
,
aID1
,
aID2
)
# Fetch the pool we will work with
pool
=
client
.
fetch_pool
(
ASA
,
BTC
)
...
...
src/helper.js
View file @
97336715
...
...
@@ -145,10 +145,12 @@ export const toAmountLabel = (satoshis, settings) => {
export
const
addAsaQuote
=
async
(
grpc
,
store
,
aID1
,
aID2
)
=>
{
var
quote
=
await
grpc
.
initPyface
([
'/data/lightning-bits/src/chains/algo/pools.py'
,
'quote'
,
aID1
,
aID2
]);
console
.
log
(
quote
);
try
{
var
q
=
quote
.
split
(
"'"
)[
1
].
split
(
"'"
)[
0
];
var
ql
=
toAmountLabel
(
parseInt
((
1
/
parseInt
(
q
))
*
1000000
),
store
.
settings
);
return
ql
;
}
catch
(
er
){
console
.
error
(
er
)}
}
/**
...
...
src/view/pay-pool-confirm.js
View file @
97336715
...
...
@@ -41,12 +41,32 @@ ChartJS.register(ArcElement, Tooltip, Legend);
var
poolStats
=
await
grpc
.
initPyface
([
'/data/lightning-bits/src/chains/algo/pools.py'
,
'swap'
,
75685483
,
0
,
10
,
store
.
settings
.
chains
.
algo
.
account
.
address
,
store
.
settings
.
chains
.
algo
.
account
.
mnemonic
,
'add'
]);
console
.
log
(
poolStats
);
if
(
poolStats
.
includes
(
'confirmed in round'
)){
console
.
log
(
'INFO! swap completed by contract only! skiping lightning swap.'
);
nav
.
goPayPoolDone
();
return
true
;
}
else
{
nav
.
goPaymentFailed
();
return
false
;
}
}
else
if
(
store
.
payment
.
address
!=
''
)
{
//return this._notification.display({ msg: 'INFO! swapping lightning BTC to contract BTC' });
// first test is contract can complete transaction
var
poolStats
=
await
grpc
.
initPyface
([
'/data/lightning-bits/src/chains/algo/pools.py'
,
'swap'
,
75685483
,
0
,
10
,
store
.
settings
.
chains
.
algo
.
account
.
address
,
store
.
settings
.
chains
.
algo
.
account
.
mnemonic
,
'add'
]);
console
.
log
(
poolStats
);
if
(
poolStats
.
includes
(
'confirmed in round'
)){
console
.
log
(
'INFO! swap completed by contract only! skiping lightning swap.'
);
nav
.
goPayPoolDone
();
return
true
;
}
const
{
payment
,
settings
}
=
store
;
try
{
const
request
=
await
grpc
.
sendCommand
(
'decodePayReq'
,
{
...
...
@@ -54,7 +74,7 @@ ChartJS.register(ArcElement, Tooltip, Legend);
});
payment
.
amount
=
toAmount
(
request
.
numSatoshis
,
settings
);
payment
.
note
=
request
.
description
;
/*
*/
/*
try{
const { routes } = await grpc.sendCommand('queryRoutes', {
pubKey: request.destination,
...
...
@@ -63,13 +83,29 @@ ChartJS.register(ArcElement, Tooltip, Legend);
});
payment.fee = toAmount(routes[0].totalFees, settings);
}catch(er){console.error(er)}
payment
.
fee
=
2
;
*/
payment
.
fee
=
toAmount
(
16
,
settings
)
;
console
.
log
(
payment
);
var
paymentHash
=
await
pay
.
payLightning
();
console
.
log
(
paymentHash
);
if
(
paymentHash
==
undefined
)
{
nav
.
goPaymentFailed
();
return
false
;
}
console
.
log
(
paymentHash
);
var
pH
=
btoa
(
String
.
fromCharCode
.
apply
(
null
,
paymentHash
.
paymentHash
));
console
.
log
(
pH
);
/*
const fulfill = await grpc.sendCommand('lookupInvoiceV2', {
payment_hash: pH,
});
console.log(fulfill);
*/
// then add converted contract satoshis to merchant pool
var
poolStats
=
await
grpc
.
initPyface
([
'/data/lightning-bits/src/chains/algo/pools.py'
,
'swap'
,
75685483
,
0
,
10
,
store
.
settings
.
chains
.
algo
.
account
.
address
,
store
.
settings
.
chains
.
algo
.
account
.
mnemonic
,
'add'
]);
...
...
src/view/pay-pool-done.js
View file @
97336715
...
...
@@ -34,7 +34,7 @@ const PayPoolDoneView = ({ nav, payment, pool }) => (
<
Background
image
=
"purple-gradient-bg"
>
<
MainContent
>
<
FormStretcher
>
<
H1Text
>
P
ayment
Sent
!<
/H1Text
>
<
H1Text
>
P
ool
Confirmed
!<
/H1Text
>
<
Circle
style
=
{
styles
.
circle
}
>
<
View
style
=
{
styles
.
iconWrapper
}
>
<
BitsIcon
height
=
{
126
*
0.9
}
width
=
{
64
*
0.9
}
/
>
...
...
src/view/payment-failed.js
View file @
97336715
...
...
@@ -33,19 +33,19 @@ const PaymentFailedView = ({ channel, nav }) => (
<
MainContent
>
<
FormStretcher
>
<
LightningErrorIcon
height
=
{
115
*
0.8
}
width
=
{
60
*
0.8
}
/
>
<
H1Text
style
=
{
styles
.
h1Txt
}
>
Payment
Failed
<
/H1Text
>
<
H1Text
style
=
{
styles
.
h1Txt
}
>
Transaction
Failed
<
/H1Text
>
<
CopyText
style
=
{
styles
.
copyTxt
}
>
{
'
You may need to manually create a channel.
'
}
{
'
Check error logs!
'
}
<
/CopyText
>
<
/FormStretcher
>
<
PillButton
style
=
{
styles
.
createBtn
}
onPress
=
{()
=>
channel
.
initCreate
()}
>
Create
channel
<
PillButton
style
=
{
styles
.
createBtn
}
onPress
=
{()
=>
nav
.
goPayLightningConfirm
()}
>
Try
again
<
/PillButton
>
<
Button
style
=
{
styles
.
retryBtn
}
onPress
=
{()
=>
nav
.
go
PayLightningConfirm
()}
onPress
=
{()
=>
nav
.
go
Home
()}
>
<
ButtonText
>
Try
again
<
/ButtonText
>
<
ButtonText
>
Cancel
<
/ButtonText
>
<
/Button
>
<
/MainContent
>
<
/Background
>
...
...
src/view/pool-detail.js
View file @
97336715
...
...
@@ -204,14 +204,14 @@ var poolStats = await grpc.initPyface(['/data/lightning-bits/src/chains/algo/poo
var poolStats = await grpc.initPyface(['/data/lightning-bits/src/chains/algo/pools.py', 'addLiq', 70653745, 0 , store.settings.chains.algo.account.address, store.settings.chains.algo.account.mnemonic, 1]);
var poolStats = await grpc.initPyface(['/data/lightning-bits/src/chains/algo/pools.py', 'swap', 75685483 , 0, 10, store.settings.chains.algo.account.address, store.settings.chains.algo.account.mnemonic, 'remove' ]);
console.log(poolStats);
*/
// doSwap(store.settings.chains.algo.account.mnemonic);
var
poolStats
=
await
grpc
.
initPyface
([
'/data/lightning-bits/src/chains/algo/pools.py'
,
'pooling'
,
75685483
,
0
,
store
.
settings
.
chains
.
algo
.
account
.
address
,
store
.
settings
.
chains
.
algo
.
account
.
mnemonic
]);
console
.
log
(
poolStats
);
var
poolStats
=
await
grpc
.
initPyface
([
'/data/lightning-bits/src/chains/algo/pools.py'
,
'swap'
,
75685483
,
0
,
10
,
store
.
settings
.
chains
.
algo
.
account
.
address
,
store
.
settings
.
chains
.
algo
.
account
.
mnemonic
,
'remove'
]);
console
.
log
(
poolStats
);
}
const
options
=
{
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment