Boltz.exchange Extension (#922)
* initial commit and still draft, ready for review
* forgot to uncomment this line
* fee estimation and blockheight
* resolve conversation with michael, to use mempool websockets instead of boltz status event
* Update lnbits/extensions/boltz/boltz.py
Co-authored-by: michael1011 <me@michael1011.at>
* add status to swaps, add sorting and data into listing
* add swap status checks, change urls to docker test setup, dynamic minimum and maximum limits
* fix docker hosts for development
* add api endpoints to _api_docs
* add wallet name and id, to list and status information
* fix status_update for reverse_swaps
* chore: format with black
* more blackformatting and refactoring create_swap()
* fix variable bug
* check if swap is already refunded
* use create_task instead of ensure_future
* add mempool and boltz urls depending on DEBUG .env
* raise exception in mempool fails
* fix onchain txs, sending funds to wrong address and add a refund address for normal swaps beforehand
* add status to swaps, add sorting and data into listing
* add swap status checks, change urls to docker test setup, dynamic minimum and maximum limits
* add wallet name and id, to list and status information
* fix status_update for reverse_swaps
* chore: format with black
* use create_task instead of ensure_future
* add mempool and boltz urls depending on DEBUG .env
* fix onchain txs, sending funds to wrong address and add a refund address for normal swaps beforehand
* black formatting
* add some logging with loguru, and remove function duplication
* cleanup readme
* updates/suggestions from calle
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* remove unused comments
* Update API Endpoints
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* un-factor get_boltz_pairs
* added a explaination for the onchain tx
* remove unused template file
* rename api endpoints
* fix isort and prettier
* more verbose logging!!
* add boltz to mock_data.zip
* new mockdata
* remove comment
* better readme
* fix mempool urls
* change /refund /check /status to post requests
* first step in tests2
* add first tests
* change refund,check,status to post requests
* next try on tests
* overall code improvements
* just testing tests
* throw http exceptions in views_api
* require admincheck for refund,check,status and added fastapi documentation for those
* added more tests
* black
* many code improvements
* adding tests
* temp fix test
* fix race condition when pay_invoice fails
* test are working
* add boltz env variables
* add startup check, bugfixes, improvements
* improve on status checking
* remove check_invoice_status
* more fixes and tests
* testing testing testing
* make tests run again inside regtest
* fix bad error :O
* fix postgres boolean bug and add swap test
* Update README.md
Update README.md
Update README.md
Update README.md
* some mypy
* blacked
* the missing commit?
* fix api_docs readme link
* better refunding error catching
fix
* check swaps now also shows pending reverse swap, ui improvements, tooltips
* add backend check for boltz limits
fixup
* many improvements, startup check for swaps working, reverse needs more testing
* little last fixes
* remove unused logic
* fastapi documentation
fixup
* formatting and remove unused tests
* fix test
* fix swapstatus model
* Update lnbits/extensions/boltz/tasks.py
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* Update lnbits/extensions/boltz/views_api.py
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* balance check msg, format
* fix mypy data override
* fix swapstatus, remove can refund column
* Update lnbits/extensions/boltz/README.md
Co-authored-by: michael1011 <me@michael1011.at>
* empty lines
* fix error message when swap is not found
* remove preimage_hash from database
* fix api_docs html
fix api_docs html
* catch boltz network exceptions better
* formatting
* check for timeout on swap at get request
Co-authored-by: michael1011 <me@michael1011.at>
Co-authored-by: fusion44 <some.fusion@gmail.com>
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
2022-08-30 12:51:17 +02:00
|
|
|
from http import HTTPStatus
|
|
|
|
from typing import List
|
|
|
|
|
boltz extension v2, recurring swaps (#981)
* add status to statusdialog
* first commits for boltz update
* formatting
* add latest boltz-clien package
* big refactor, depending on boltz_client package, clean up, mypy issues, not tested yet
* blacking, sorting and stuff
* remove unused req_wrap helper
* remove api docs from frontend
* bug: frontend boltz limits error
* clean up buttons
* update to boltz-client 0.0.8
* fix tests to poetry version 1.3.1
* update requirements
* formatting
* recurring swap works now, need more finetuning
* add exceptions for multiple auto swaps and swapping in with active auto swap
* black
* auto reverse swap actually works :)
* remove swap status dialogs
* update to boltz_client 0.0.9
* update to boltz-client 0.1.1, and fix startup
* update requirement.txt for boltz-client
* fixup columns in table, remove unused payment.extra, change deezy label
* remove balance check for auto swap out
* update boltzc-lient to 0.1.2, fix mypy issue inside boltz package
* nitpicks calle tasks.py
* calle nitpicks crud
* calle nitpicks crud
* refactor
* fix formatting
* circular import
* black :)
Co-authored-by: callebtc <93376500+callebtc@users.noreply.github.com>
2023-01-19 10:30:47 +01:00
|
|
|
from fastapi import Depends, Query, status
|
Boltz.exchange Extension (#922)
* initial commit and still draft, ready for review
* forgot to uncomment this line
* fee estimation and blockheight
* resolve conversation with michael, to use mempool websockets instead of boltz status event
* Update lnbits/extensions/boltz/boltz.py
Co-authored-by: michael1011 <me@michael1011.at>
* add status to swaps, add sorting and data into listing
* add swap status checks, change urls to docker test setup, dynamic minimum and maximum limits
* fix docker hosts for development
* add api endpoints to _api_docs
* add wallet name and id, to list and status information
* fix status_update for reverse_swaps
* chore: format with black
* more blackformatting and refactoring create_swap()
* fix variable bug
* check if swap is already refunded
* use create_task instead of ensure_future
* add mempool and boltz urls depending on DEBUG .env
* raise exception in mempool fails
* fix onchain txs, sending funds to wrong address and add a refund address for normal swaps beforehand
* add status to swaps, add sorting and data into listing
* add swap status checks, change urls to docker test setup, dynamic minimum and maximum limits
* add wallet name and id, to list and status information
* fix status_update for reverse_swaps
* chore: format with black
* use create_task instead of ensure_future
* add mempool and boltz urls depending on DEBUG .env
* fix onchain txs, sending funds to wrong address and add a refund address for normal swaps beforehand
* black formatting
* add some logging with loguru, and remove function duplication
* cleanup readme
* updates/suggestions from calle
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* remove unused comments
* Update API Endpoints
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* un-factor get_boltz_pairs
* added a explaination for the onchain tx
* remove unused template file
* rename api endpoints
* fix isort and prettier
* more verbose logging!!
* add boltz to mock_data.zip
* new mockdata
* remove comment
* better readme
* fix mempool urls
* change /refund /check /status to post requests
* first step in tests2
* add first tests
* change refund,check,status to post requests
* next try on tests
* overall code improvements
* just testing tests
* throw http exceptions in views_api
* require admincheck for refund,check,status and added fastapi documentation for those
* added more tests
* black
* many code improvements
* adding tests
* temp fix test
* fix race condition when pay_invoice fails
* test are working
* add boltz env variables
* add startup check, bugfixes, improvements
* improve on status checking
* remove check_invoice_status
* more fixes and tests
* testing testing testing
* make tests run again inside regtest
* fix bad error :O
* fix postgres boolean bug and add swap test
* Update README.md
Update README.md
Update README.md
Update README.md
* some mypy
* blacked
* the missing commit?
* fix api_docs readme link
* better refunding error catching
fix
* check swaps now also shows pending reverse swap, ui improvements, tooltips
* add backend check for boltz limits
fixup
* many improvements, startup check for swaps working, reverse needs more testing
* little last fixes
* remove unused logic
* fastapi documentation
fixup
* formatting and remove unused tests
* fix test
* fix swapstatus model
* Update lnbits/extensions/boltz/tasks.py
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* Update lnbits/extensions/boltz/views_api.py
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* balance check msg, format
* fix mypy data override
* fix swapstatus, remove can refund column
* Update lnbits/extensions/boltz/README.md
Co-authored-by: michael1011 <me@michael1011.at>
* empty lines
* fix error message when swap is not found
* remove preimage_hash from database
* fix api_docs html
fix api_docs html
* catch boltz network exceptions better
* formatting
* check for timeout on swap at get request
Co-authored-by: michael1011 <me@michael1011.at>
Co-authored-by: fusion44 <some.fusion@gmail.com>
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
2022-08-30 12:51:17 +02:00
|
|
|
from starlette.exceptions import HTTPException
|
|
|
|
|
|
|
|
from lnbits.core.crud import get_user
|
boltz extension v2, recurring swaps (#981)
* add status to statusdialog
* first commits for boltz update
* formatting
* add latest boltz-clien package
* big refactor, depending on boltz_client package, clean up, mypy issues, not tested yet
* blacking, sorting and stuff
* remove unused req_wrap helper
* remove api docs from frontend
* bug: frontend boltz limits error
* clean up buttons
* update to boltz-client 0.0.8
* fix tests to poetry version 1.3.1
* update requirements
* formatting
* recurring swap works now, need more finetuning
* add exceptions for multiple auto swaps and swapping in with active auto swap
* black
* auto reverse swap actually works :)
* remove swap status dialogs
* update to boltz_client 0.0.9
* update to boltz-client 0.1.1, and fix startup
* update requirement.txt for boltz-client
* fixup columns in table, remove unused payment.extra, change deezy label
* remove balance check for auto swap out
* update boltzc-lient to 0.1.2, fix mypy issue inside boltz package
* nitpicks calle tasks.py
* calle nitpicks crud
* calle nitpicks crud
* refactor
* fix formatting
* circular import
* black :)
Co-authored-by: callebtc <93376500+callebtc@users.noreply.github.com>
2023-01-19 10:30:47 +01:00
|
|
|
from lnbits.core.services import create_invoice
|
Boltz.exchange Extension (#922)
* initial commit and still draft, ready for review
* forgot to uncomment this line
* fee estimation and blockheight
* resolve conversation with michael, to use mempool websockets instead of boltz status event
* Update lnbits/extensions/boltz/boltz.py
Co-authored-by: michael1011 <me@michael1011.at>
* add status to swaps, add sorting and data into listing
* add swap status checks, change urls to docker test setup, dynamic minimum and maximum limits
* fix docker hosts for development
* add api endpoints to _api_docs
* add wallet name and id, to list and status information
* fix status_update for reverse_swaps
* chore: format with black
* more blackformatting and refactoring create_swap()
* fix variable bug
* check if swap is already refunded
* use create_task instead of ensure_future
* add mempool and boltz urls depending on DEBUG .env
* raise exception in mempool fails
* fix onchain txs, sending funds to wrong address and add a refund address for normal swaps beforehand
* add status to swaps, add sorting and data into listing
* add swap status checks, change urls to docker test setup, dynamic minimum and maximum limits
* add wallet name and id, to list and status information
* fix status_update for reverse_swaps
* chore: format with black
* use create_task instead of ensure_future
* add mempool and boltz urls depending on DEBUG .env
* fix onchain txs, sending funds to wrong address and add a refund address for normal swaps beforehand
* black formatting
* add some logging with loguru, and remove function duplication
* cleanup readme
* updates/suggestions from calle
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* remove unused comments
* Update API Endpoints
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* un-factor get_boltz_pairs
* added a explaination for the onchain tx
* remove unused template file
* rename api endpoints
* fix isort and prettier
* more verbose logging!!
* add boltz to mock_data.zip
* new mockdata
* remove comment
* better readme
* fix mempool urls
* change /refund /check /status to post requests
* first step in tests2
* add first tests
* change refund,check,status to post requests
* next try on tests
* overall code improvements
* just testing tests
* throw http exceptions in views_api
* require admincheck for refund,check,status and added fastapi documentation for those
* added more tests
* black
* many code improvements
* adding tests
* temp fix test
* fix race condition when pay_invoice fails
* test are working
* add boltz env variables
* add startup check, bugfixes, improvements
* improve on status checking
* remove check_invoice_status
* more fixes and tests
* testing testing testing
* make tests run again inside regtest
* fix bad error :O
* fix postgres boolean bug and add swap test
* Update README.md
Update README.md
Update README.md
Update README.md
* some mypy
* blacked
* the missing commit?
* fix api_docs readme link
* better refunding error catching
fix
* check swaps now also shows pending reverse swap, ui improvements, tooltips
* add backend check for boltz limits
fixup
* many improvements, startup check for swaps working, reverse needs more testing
* little last fixes
* remove unused logic
* fastapi documentation
fixup
* formatting and remove unused tests
* fix test
* fix swapstatus model
* Update lnbits/extensions/boltz/tasks.py
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* Update lnbits/extensions/boltz/views_api.py
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* balance check msg, format
* fix mypy data override
* fix swapstatus, remove can refund column
* Update lnbits/extensions/boltz/README.md
Co-authored-by: michael1011 <me@michael1011.at>
* empty lines
* fix error message when swap is not found
* remove preimage_hash from database
* fix api_docs html
fix api_docs html
* catch boltz network exceptions better
* formatting
* check for timeout on swap at get request
Co-authored-by: michael1011 <me@michael1011.at>
Co-authored-by: fusion44 <some.fusion@gmail.com>
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
2022-08-30 12:51:17 +02:00
|
|
|
from lnbits.decorators import WalletTypeInfo, get_key_type, require_admin_key
|
boltz extension v2, recurring swaps (#981)
* add status to statusdialog
* first commits for boltz update
* formatting
* add latest boltz-clien package
* big refactor, depending on boltz_client package, clean up, mypy issues, not tested yet
* blacking, sorting and stuff
* remove unused req_wrap helper
* remove api docs from frontend
* bug: frontend boltz limits error
* clean up buttons
* update to boltz-client 0.0.8
* fix tests to poetry version 1.3.1
* update requirements
* formatting
* recurring swap works now, need more finetuning
* add exceptions for multiple auto swaps and swapping in with active auto swap
* black
* auto reverse swap actually works :)
* remove swap status dialogs
* update to boltz_client 0.0.9
* update to boltz-client 0.1.1, and fix startup
* update requirement.txt for boltz-client
* fixup columns in table, remove unused payment.extra, change deezy label
* remove balance check for auto swap out
* update boltzc-lient to 0.1.2, fix mypy issue inside boltz package
* nitpicks calle tasks.py
* calle nitpicks crud
* calle nitpicks crud
* refactor
* fix formatting
* circular import
* black :)
Co-authored-by: callebtc <93376500+callebtc@users.noreply.github.com>
2023-01-19 10:30:47 +01:00
|
|
|
from lnbits.helpers import urlsafe_short_hash
|
2022-10-03 16:34:52 +02:00
|
|
|
from lnbits.settings import settings
|
Boltz.exchange Extension (#922)
* initial commit and still draft, ready for review
* forgot to uncomment this line
* fee estimation and blockheight
* resolve conversation with michael, to use mempool websockets instead of boltz status event
* Update lnbits/extensions/boltz/boltz.py
Co-authored-by: michael1011 <me@michael1011.at>
* add status to swaps, add sorting and data into listing
* add swap status checks, change urls to docker test setup, dynamic minimum and maximum limits
* fix docker hosts for development
* add api endpoints to _api_docs
* add wallet name and id, to list and status information
* fix status_update for reverse_swaps
* chore: format with black
* more blackformatting and refactoring create_swap()
* fix variable bug
* check if swap is already refunded
* use create_task instead of ensure_future
* add mempool and boltz urls depending on DEBUG .env
* raise exception in mempool fails
* fix onchain txs, sending funds to wrong address and add a refund address for normal swaps beforehand
* add status to swaps, add sorting and data into listing
* add swap status checks, change urls to docker test setup, dynamic minimum and maximum limits
* add wallet name and id, to list and status information
* fix status_update for reverse_swaps
* chore: format with black
* use create_task instead of ensure_future
* add mempool and boltz urls depending on DEBUG .env
* fix onchain txs, sending funds to wrong address and add a refund address for normal swaps beforehand
* black formatting
* add some logging with loguru, and remove function duplication
* cleanup readme
* updates/suggestions from calle
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* remove unused comments
* Update API Endpoints
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* un-factor get_boltz_pairs
* added a explaination for the onchain tx
* remove unused template file
* rename api endpoints
* fix isort and prettier
* more verbose logging!!
* add boltz to mock_data.zip
* new mockdata
* remove comment
* better readme
* fix mempool urls
* change /refund /check /status to post requests
* first step in tests2
* add first tests
* change refund,check,status to post requests
* next try on tests
* overall code improvements
* just testing tests
* throw http exceptions in views_api
* require admincheck for refund,check,status and added fastapi documentation for those
* added more tests
* black
* many code improvements
* adding tests
* temp fix test
* fix race condition when pay_invoice fails
* test are working
* add boltz env variables
* add startup check, bugfixes, improvements
* improve on status checking
* remove check_invoice_status
* more fixes and tests
* testing testing testing
* make tests run again inside regtest
* fix bad error :O
* fix postgres boolean bug and add swap test
* Update README.md
Update README.md
Update README.md
Update README.md
* some mypy
* blacked
* the missing commit?
* fix api_docs readme link
* better refunding error catching
fix
* check swaps now also shows pending reverse swap, ui improvements, tooltips
* add backend check for boltz limits
fixup
* many improvements, startup check for swaps working, reverse needs more testing
* little last fixes
* remove unused logic
* fastapi documentation
fixup
* formatting and remove unused tests
* fix test
* fix swapstatus model
* Update lnbits/extensions/boltz/tasks.py
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* Update lnbits/extensions/boltz/views_api.py
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* balance check msg, format
* fix mypy data override
* fix swapstatus, remove can refund column
* Update lnbits/extensions/boltz/README.md
Co-authored-by: michael1011 <me@michael1011.at>
* empty lines
* fix error message when swap is not found
* remove preimage_hash from database
* fix api_docs html
fix api_docs html
* catch boltz network exceptions better
* formatting
* check for timeout on swap at get request
Co-authored-by: michael1011 <me@michael1011.at>
Co-authored-by: fusion44 <some.fusion@gmail.com>
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
2022-08-30 12:51:17 +02:00
|
|
|
|
|
|
|
from . import boltz_ext
|
|
|
|
from .crud import (
|
boltz extension v2, recurring swaps (#981)
* add status to statusdialog
* first commits for boltz update
* formatting
* add latest boltz-clien package
* big refactor, depending on boltz_client package, clean up, mypy issues, not tested yet
* blacking, sorting and stuff
* remove unused req_wrap helper
* remove api docs from frontend
* bug: frontend boltz limits error
* clean up buttons
* update to boltz-client 0.0.8
* fix tests to poetry version 1.3.1
* update requirements
* formatting
* recurring swap works now, need more finetuning
* add exceptions for multiple auto swaps and swapping in with active auto swap
* black
* auto reverse swap actually works :)
* remove swap status dialogs
* update to boltz_client 0.0.9
* update to boltz-client 0.1.1, and fix startup
* update requirement.txt for boltz-client
* fixup columns in table, remove unused payment.extra, change deezy label
* remove balance check for auto swap out
* update boltzc-lient to 0.1.2, fix mypy issue inside boltz package
* nitpicks calle tasks.py
* calle nitpicks crud
* calle nitpicks crud
* refactor
* fix formatting
* circular import
* black :)
Co-authored-by: callebtc <93376500+callebtc@users.noreply.github.com>
2023-01-19 10:30:47 +01:00
|
|
|
create_auto_reverse_submarine_swap,
|
Boltz.exchange Extension (#922)
* initial commit and still draft, ready for review
* forgot to uncomment this line
* fee estimation and blockheight
* resolve conversation with michael, to use mempool websockets instead of boltz status event
* Update lnbits/extensions/boltz/boltz.py
Co-authored-by: michael1011 <me@michael1011.at>
* add status to swaps, add sorting and data into listing
* add swap status checks, change urls to docker test setup, dynamic minimum and maximum limits
* fix docker hosts for development
* add api endpoints to _api_docs
* add wallet name and id, to list and status information
* fix status_update for reverse_swaps
* chore: format with black
* more blackformatting and refactoring create_swap()
* fix variable bug
* check if swap is already refunded
* use create_task instead of ensure_future
* add mempool and boltz urls depending on DEBUG .env
* raise exception in mempool fails
* fix onchain txs, sending funds to wrong address and add a refund address for normal swaps beforehand
* add status to swaps, add sorting and data into listing
* add swap status checks, change urls to docker test setup, dynamic minimum and maximum limits
* add wallet name and id, to list and status information
* fix status_update for reverse_swaps
* chore: format with black
* use create_task instead of ensure_future
* add mempool and boltz urls depending on DEBUG .env
* fix onchain txs, sending funds to wrong address and add a refund address for normal swaps beforehand
* black formatting
* add some logging with loguru, and remove function duplication
* cleanup readme
* updates/suggestions from calle
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* remove unused comments
* Update API Endpoints
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* un-factor get_boltz_pairs
* added a explaination for the onchain tx
* remove unused template file
* rename api endpoints
* fix isort and prettier
* more verbose logging!!
* add boltz to mock_data.zip
* new mockdata
* remove comment
* better readme
* fix mempool urls
* change /refund /check /status to post requests
* first step in tests2
* add first tests
* change refund,check,status to post requests
* next try on tests
* overall code improvements
* just testing tests
* throw http exceptions in views_api
* require admincheck for refund,check,status and added fastapi documentation for those
* added more tests
* black
* many code improvements
* adding tests
* temp fix test
* fix race condition when pay_invoice fails
* test are working
* add boltz env variables
* add startup check, bugfixes, improvements
* improve on status checking
* remove check_invoice_status
* more fixes and tests
* testing testing testing
* make tests run again inside regtest
* fix bad error :O
* fix postgres boolean bug and add swap test
* Update README.md
Update README.md
Update README.md
Update README.md
* some mypy
* blacked
* the missing commit?
* fix api_docs readme link
* better refunding error catching
fix
* check swaps now also shows pending reverse swap, ui improvements, tooltips
* add backend check for boltz limits
fixup
* many improvements, startup check for swaps working, reverse needs more testing
* little last fixes
* remove unused logic
* fastapi documentation
fixup
* formatting and remove unused tests
* fix test
* fix swapstatus model
* Update lnbits/extensions/boltz/tasks.py
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* Update lnbits/extensions/boltz/views_api.py
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* balance check msg, format
* fix mypy data override
* fix swapstatus, remove can refund column
* Update lnbits/extensions/boltz/README.md
Co-authored-by: michael1011 <me@michael1011.at>
* empty lines
* fix error message when swap is not found
* remove preimage_hash from database
* fix api_docs html
fix api_docs html
* catch boltz network exceptions better
* formatting
* check for timeout on swap at get request
Co-authored-by: michael1011 <me@michael1011.at>
Co-authored-by: fusion44 <some.fusion@gmail.com>
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
2022-08-30 12:51:17 +02:00
|
|
|
create_reverse_submarine_swap,
|
|
|
|
create_submarine_swap,
|
boltz extension v2, recurring swaps (#981)
* add status to statusdialog
* first commits for boltz update
* formatting
* add latest boltz-clien package
* big refactor, depending on boltz_client package, clean up, mypy issues, not tested yet
* blacking, sorting and stuff
* remove unused req_wrap helper
* remove api docs from frontend
* bug: frontend boltz limits error
* clean up buttons
* update to boltz-client 0.0.8
* fix tests to poetry version 1.3.1
* update requirements
* formatting
* recurring swap works now, need more finetuning
* add exceptions for multiple auto swaps and swapping in with active auto swap
* black
* auto reverse swap actually works :)
* remove swap status dialogs
* update to boltz_client 0.0.9
* update to boltz-client 0.1.1, and fix startup
* update requirement.txt for boltz-client
* fixup columns in table, remove unused payment.extra, change deezy label
* remove balance check for auto swap out
* update boltzc-lient to 0.1.2, fix mypy issue inside boltz package
* nitpicks calle tasks.py
* calle nitpicks crud
* calle nitpicks crud
* refactor
* fix formatting
* circular import
* black :)
Co-authored-by: callebtc <93376500+callebtc@users.noreply.github.com>
2023-01-19 10:30:47 +01:00
|
|
|
delete_auto_reverse_submarine_swap,
|
|
|
|
get_auto_reverse_submarine_swap_by_wallet,
|
|
|
|
get_auto_reverse_submarine_swaps,
|
Boltz.exchange Extension (#922)
* initial commit and still draft, ready for review
* forgot to uncomment this line
* fee estimation and blockheight
* resolve conversation with michael, to use mempool websockets instead of boltz status event
* Update lnbits/extensions/boltz/boltz.py
Co-authored-by: michael1011 <me@michael1011.at>
* add status to swaps, add sorting and data into listing
* add swap status checks, change urls to docker test setup, dynamic minimum and maximum limits
* fix docker hosts for development
* add api endpoints to _api_docs
* add wallet name and id, to list and status information
* fix status_update for reverse_swaps
* chore: format with black
* more blackformatting and refactoring create_swap()
* fix variable bug
* check if swap is already refunded
* use create_task instead of ensure_future
* add mempool and boltz urls depending on DEBUG .env
* raise exception in mempool fails
* fix onchain txs, sending funds to wrong address and add a refund address for normal swaps beforehand
* add status to swaps, add sorting and data into listing
* add swap status checks, change urls to docker test setup, dynamic minimum and maximum limits
* add wallet name and id, to list and status information
* fix status_update for reverse_swaps
* chore: format with black
* use create_task instead of ensure_future
* add mempool and boltz urls depending on DEBUG .env
* fix onchain txs, sending funds to wrong address and add a refund address for normal swaps beforehand
* black formatting
* add some logging with loguru, and remove function duplication
* cleanup readme
* updates/suggestions from calle
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* remove unused comments
* Update API Endpoints
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* un-factor get_boltz_pairs
* added a explaination for the onchain tx
* remove unused template file
* rename api endpoints
* fix isort and prettier
* more verbose logging!!
* add boltz to mock_data.zip
* new mockdata
* remove comment
* better readme
* fix mempool urls
* change /refund /check /status to post requests
* first step in tests2
* add first tests
* change refund,check,status to post requests
* next try on tests
* overall code improvements
* just testing tests
* throw http exceptions in views_api
* require admincheck for refund,check,status and added fastapi documentation for those
* added more tests
* black
* many code improvements
* adding tests
* temp fix test
* fix race condition when pay_invoice fails
* test are working
* add boltz env variables
* add startup check, bugfixes, improvements
* improve on status checking
* remove check_invoice_status
* more fixes and tests
* testing testing testing
* make tests run again inside regtest
* fix bad error :O
* fix postgres boolean bug and add swap test
* Update README.md
Update README.md
Update README.md
Update README.md
* some mypy
* blacked
* the missing commit?
* fix api_docs readme link
* better refunding error catching
fix
* check swaps now also shows pending reverse swap, ui improvements, tooltips
* add backend check for boltz limits
fixup
* many improvements, startup check for swaps working, reverse needs more testing
* little last fixes
* remove unused logic
* fastapi documentation
fixup
* formatting and remove unused tests
* fix test
* fix swapstatus model
* Update lnbits/extensions/boltz/tasks.py
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* Update lnbits/extensions/boltz/views_api.py
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* balance check msg, format
* fix mypy data override
* fix swapstatus, remove can refund column
* Update lnbits/extensions/boltz/README.md
Co-authored-by: michael1011 <me@michael1011.at>
* empty lines
* fix error message when swap is not found
* remove preimage_hash from database
* fix api_docs html
fix api_docs html
* catch boltz network exceptions better
* formatting
* check for timeout on swap at get request
Co-authored-by: michael1011 <me@michael1011.at>
Co-authored-by: fusion44 <some.fusion@gmail.com>
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
2022-08-30 12:51:17 +02:00
|
|
|
get_reverse_submarine_swap,
|
|
|
|
get_reverse_submarine_swaps,
|
|
|
|
get_submarine_swap,
|
|
|
|
get_submarine_swaps,
|
|
|
|
update_swap_status,
|
|
|
|
)
|
|
|
|
from .models import (
|
boltz extension v2, recurring swaps (#981)
* add status to statusdialog
* first commits for boltz update
* formatting
* add latest boltz-clien package
* big refactor, depending on boltz_client package, clean up, mypy issues, not tested yet
* blacking, sorting and stuff
* remove unused req_wrap helper
* remove api docs from frontend
* bug: frontend boltz limits error
* clean up buttons
* update to boltz-client 0.0.8
* fix tests to poetry version 1.3.1
* update requirements
* formatting
* recurring swap works now, need more finetuning
* add exceptions for multiple auto swaps and swapping in with active auto swap
* black
* auto reverse swap actually works :)
* remove swap status dialogs
* update to boltz_client 0.0.9
* update to boltz-client 0.1.1, and fix startup
* update requirement.txt for boltz-client
* fixup columns in table, remove unused payment.extra, change deezy label
* remove balance check for auto swap out
* update boltzc-lient to 0.1.2, fix mypy issue inside boltz package
* nitpicks calle tasks.py
* calle nitpicks crud
* calle nitpicks crud
* refactor
* fix formatting
* circular import
* black :)
Co-authored-by: callebtc <93376500+callebtc@users.noreply.github.com>
2023-01-19 10:30:47 +01:00
|
|
|
AutoReverseSubmarineSwap,
|
|
|
|
CreateAutoReverseSubmarineSwap,
|
Boltz.exchange Extension (#922)
* initial commit and still draft, ready for review
* forgot to uncomment this line
* fee estimation and blockheight
* resolve conversation with michael, to use mempool websockets instead of boltz status event
* Update lnbits/extensions/boltz/boltz.py
Co-authored-by: michael1011 <me@michael1011.at>
* add status to swaps, add sorting and data into listing
* add swap status checks, change urls to docker test setup, dynamic minimum and maximum limits
* fix docker hosts for development
* add api endpoints to _api_docs
* add wallet name and id, to list and status information
* fix status_update for reverse_swaps
* chore: format with black
* more blackformatting and refactoring create_swap()
* fix variable bug
* check if swap is already refunded
* use create_task instead of ensure_future
* add mempool and boltz urls depending on DEBUG .env
* raise exception in mempool fails
* fix onchain txs, sending funds to wrong address and add a refund address for normal swaps beforehand
* add status to swaps, add sorting and data into listing
* add swap status checks, change urls to docker test setup, dynamic minimum and maximum limits
* add wallet name and id, to list and status information
* fix status_update for reverse_swaps
* chore: format with black
* use create_task instead of ensure_future
* add mempool and boltz urls depending on DEBUG .env
* fix onchain txs, sending funds to wrong address and add a refund address for normal swaps beforehand
* black formatting
* add some logging with loguru, and remove function duplication
* cleanup readme
* updates/suggestions from calle
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* remove unused comments
* Update API Endpoints
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* un-factor get_boltz_pairs
* added a explaination for the onchain tx
* remove unused template file
* rename api endpoints
* fix isort and prettier
* more verbose logging!!
* add boltz to mock_data.zip
* new mockdata
* remove comment
* better readme
* fix mempool urls
* change /refund /check /status to post requests
* first step in tests2
* add first tests
* change refund,check,status to post requests
* next try on tests
* overall code improvements
* just testing tests
* throw http exceptions in views_api
* require admincheck for refund,check,status and added fastapi documentation for those
* added more tests
* black
* many code improvements
* adding tests
* temp fix test
* fix race condition when pay_invoice fails
* test are working
* add boltz env variables
* add startup check, bugfixes, improvements
* improve on status checking
* remove check_invoice_status
* more fixes and tests
* testing testing testing
* make tests run again inside regtest
* fix bad error :O
* fix postgres boolean bug and add swap test
* Update README.md
Update README.md
Update README.md
Update README.md
* some mypy
* blacked
* the missing commit?
* fix api_docs readme link
* better refunding error catching
fix
* check swaps now also shows pending reverse swap, ui improvements, tooltips
* add backend check for boltz limits
fixup
* many improvements, startup check for swaps working, reverse needs more testing
* little last fixes
* remove unused logic
* fastapi documentation
fixup
* formatting and remove unused tests
* fix test
* fix swapstatus model
* Update lnbits/extensions/boltz/tasks.py
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* Update lnbits/extensions/boltz/views_api.py
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* balance check msg, format
* fix mypy data override
* fix swapstatus, remove can refund column
* Update lnbits/extensions/boltz/README.md
Co-authored-by: michael1011 <me@michael1011.at>
* empty lines
* fix error message when swap is not found
* remove preimage_hash from database
* fix api_docs html
fix api_docs html
* catch boltz network exceptions better
* formatting
* check for timeout on swap at get request
Co-authored-by: michael1011 <me@michael1011.at>
Co-authored-by: fusion44 <some.fusion@gmail.com>
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
2022-08-30 12:51:17 +02:00
|
|
|
CreateReverseSubmarineSwap,
|
|
|
|
CreateSubmarineSwap,
|
|
|
|
ReverseSubmarineSwap,
|
|
|
|
SubmarineSwap,
|
|
|
|
)
|
boltz extension v2, recurring swaps (#981)
* add status to statusdialog
* first commits for boltz update
* formatting
* add latest boltz-clien package
* big refactor, depending on boltz_client package, clean up, mypy issues, not tested yet
* blacking, sorting and stuff
* remove unused req_wrap helper
* remove api docs from frontend
* bug: frontend boltz limits error
* clean up buttons
* update to boltz-client 0.0.8
* fix tests to poetry version 1.3.1
* update requirements
* formatting
* recurring swap works now, need more finetuning
* add exceptions for multiple auto swaps and swapping in with active auto swap
* black
* auto reverse swap actually works :)
* remove swap status dialogs
* update to boltz_client 0.0.9
* update to boltz-client 0.1.1, and fix startup
* update requirement.txt for boltz-client
* fixup columns in table, remove unused payment.extra, change deezy label
* remove balance check for auto swap out
* update boltzc-lient to 0.1.2, fix mypy issue inside boltz package
* nitpicks calle tasks.py
* calle nitpicks crud
* calle nitpicks crud
* refactor
* fix formatting
* circular import
* black :)
Co-authored-by: callebtc <93376500+callebtc@users.noreply.github.com>
2023-01-19 10:30:47 +01:00
|
|
|
from .utils import check_balance, create_boltz_client, execute_reverse_swap
|
Boltz.exchange Extension (#922)
* initial commit and still draft, ready for review
* forgot to uncomment this line
* fee estimation and blockheight
* resolve conversation with michael, to use mempool websockets instead of boltz status event
* Update lnbits/extensions/boltz/boltz.py
Co-authored-by: michael1011 <me@michael1011.at>
* add status to swaps, add sorting and data into listing
* add swap status checks, change urls to docker test setup, dynamic minimum and maximum limits
* fix docker hosts for development
* add api endpoints to _api_docs
* add wallet name and id, to list and status information
* fix status_update for reverse_swaps
* chore: format with black
* more blackformatting and refactoring create_swap()
* fix variable bug
* check if swap is already refunded
* use create_task instead of ensure_future
* add mempool and boltz urls depending on DEBUG .env
* raise exception in mempool fails
* fix onchain txs, sending funds to wrong address and add a refund address for normal swaps beforehand
* add status to swaps, add sorting and data into listing
* add swap status checks, change urls to docker test setup, dynamic minimum and maximum limits
* add wallet name and id, to list and status information
* fix status_update for reverse_swaps
* chore: format with black
* use create_task instead of ensure_future
* add mempool and boltz urls depending on DEBUG .env
* fix onchain txs, sending funds to wrong address and add a refund address for normal swaps beforehand
* black formatting
* add some logging with loguru, and remove function duplication
* cleanup readme
* updates/suggestions from calle
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* remove unused comments
* Update API Endpoints
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* un-factor get_boltz_pairs
* added a explaination for the onchain tx
* remove unused template file
* rename api endpoints
* fix isort and prettier
* more verbose logging!!
* add boltz to mock_data.zip
* new mockdata
* remove comment
* better readme
* fix mempool urls
* change /refund /check /status to post requests
* first step in tests2
* add first tests
* change refund,check,status to post requests
* next try on tests
* overall code improvements
* just testing tests
* throw http exceptions in views_api
* require admincheck for refund,check,status and added fastapi documentation for those
* added more tests
* black
* many code improvements
* adding tests
* temp fix test
* fix race condition when pay_invoice fails
* test are working
* add boltz env variables
* add startup check, bugfixes, improvements
* improve on status checking
* remove check_invoice_status
* more fixes and tests
* testing testing testing
* make tests run again inside regtest
* fix bad error :O
* fix postgres boolean bug and add swap test
* Update README.md
Update README.md
Update README.md
Update README.md
* some mypy
* blacked
* the missing commit?
* fix api_docs readme link
* better refunding error catching
fix
* check swaps now also shows pending reverse swap, ui improvements, tooltips
* add backend check for boltz limits
fixup
* many improvements, startup check for swaps working, reverse needs more testing
* little last fixes
* remove unused logic
* fastapi documentation
fixup
* formatting and remove unused tests
* fix test
* fix swapstatus model
* Update lnbits/extensions/boltz/tasks.py
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* Update lnbits/extensions/boltz/views_api.py
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* balance check msg, format
* fix mypy data override
* fix swapstatus, remove can refund column
* Update lnbits/extensions/boltz/README.md
Co-authored-by: michael1011 <me@michael1011.at>
* empty lines
* fix error message when swap is not found
* remove preimage_hash from database
* fix api_docs html
fix api_docs html
* catch boltz network exceptions better
* formatting
* check for timeout on swap at get request
Co-authored-by: michael1011 <me@michael1011.at>
Co-authored-by: fusion44 <some.fusion@gmail.com>
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
2022-08-30 12:51:17 +02:00
|
|
|
|
|
|
|
|
|
|
|
@boltz_ext.get(
|
|
|
|
"/api/v1/swap/mempool",
|
|
|
|
name=f"boltz.get /swap/mempool",
|
|
|
|
summary="get a the mempool url",
|
|
|
|
description="""
|
|
|
|
This endpoint gets the URL from mempool.space
|
|
|
|
""",
|
|
|
|
response_description="mempool.space url",
|
|
|
|
response_model=str,
|
|
|
|
)
|
|
|
|
async def api_mempool_url():
|
2022-10-03 16:34:52 +02:00
|
|
|
return settings.boltz_mempool_space_url
|
Boltz.exchange Extension (#922)
* initial commit and still draft, ready for review
* forgot to uncomment this line
* fee estimation and blockheight
* resolve conversation with michael, to use mempool websockets instead of boltz status event
* Update lnbits/extensions/boltz/boltz.py
Co-authored-by: michael1011 <me@michael1011.at>
* add status to swaps, add sorting and data into listing
* add swap status checks, change urls to docker test setup, dynamic minimum and maximum limits
* fix docker hosts for development
* add api endpoints to _api_docs
* add wallet name and id, to list and status information
* fix status_update for reverse_swaps
* chore: format with black
* more blackformatting and refactoring create_swap()
* fix variable bug
* check if swap is already refunded
* use create_task instead of ensure_future
* add mempool and boltz urls depending on DEBUG .env
* raise exception in mempool fails
* fix onchain txs, sending funds to wrong address and add a refund address for normal swaps beforehand
* add status to swaps, add sorting and data into listing
* add swap status checks, change urls to docker test setup, dynamic minimum and maximum limits
* add wallet name and id, to list and status information
* fix status_update for reverse_swaps
* chore: format with black
* use create_task instead of ensure_future
* add mempool and boltz urls depending on DEBUG .env
* fix onchain txs, sending funds to wrong address and add a refund address for normal swaps beforehand
* black formatting
* add some logging with loguru, and remove function duplication
* cleanup readme
* updates/suggestions from calle
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* remove unused comments
* Update API Endpoints
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* un-factor get_boltz_pairs
* added a explaination for the onchain tx
* remove unused template file
* rename api endpoints
* fix isort and prettier
* more verbose logging!!
* add boltz to mock_data.zip
* new mockdata
* remove comment
* better readme
* fix mempool urls
* change /refund /check /status to post requests
* first step in tests2
* add first tests
* change refund,check,status to post requests
* next try on tests
* overall code improvements
* just testing tests
* throw http exceptions in views_api
* require admincheck for refund,check,status and added fastapi documentation for those
* added more tests
* black
* many code improvements
* adding tests
* temp fix test
* fix race condition when pay_invoice fails
* test are working
* add boltz env variables
* add startup check, bugfixes, improvements
* improve on status checking
* remove check_invoice_status
* more fixes and tests
* testing testing testing
* make tests run again inside regtest
* fix bad error :O
* fix postgres boolean bug and add swap test
* Update README.md
Update README.md
Update README.md
Update README.md
* some mypy
* blacked
* the missing commit?
* fix api_docs readme link
* better refunding error catching
fix
* check swaps now also shows pending reverse swap, ui improvements, tooltips
* add backend check for boltz limits
fixup
* many improvements, startup check for swaps working, reverse needs more testing
* little last fixes
* remove unused logic
* fastapi documentation
fixup
* formatting and remove unused tests
* fix test
* fix swapstatus model
* Update lnbits/extensions/boltz/tasks.py
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* Update lnbits/extensions/boltz/views_api.py
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* balance check msg, format
* fix mypy data override
* fix swapstatus, remove can refund column
* Update lnbits/extensions/boltz/README.md
Co-authored-by: michael1011 <me@michael1011.at>
* empty lines
* fix error message when swap is not found
* remove preimage_hash from database
* fix api_docs html
fix api_docs html
* catch boltz network exceptions better
* formatting
* check for timeout on swap at get request
Co-authored-by: michael1011 <me@michael1011.at>
Co-authored-by: fusion44 <some.fusion@gmail.com>
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
2022-08-30 12:51:17 +02:00
|
|
|
|
|
|
|
|
|
|
|
# NORMAL SWAP
|
|
|
|
@boltz_ext.get(
|
|
|
|
"/api/v1/swap",
|
|
|
|
name=f"boltz.get /swap",
|
|
|
|
summary="get a list of swaps a swap",
|
|
|
|
description="""
|
|
|
|
This endpoint gets a list of normal swaps.
|
|
|
|
""",
|
|
|
|
response_description="list of normal swaps",
|
|
|
|
dependencies=[Depends(get_key_type)],
|
|
|
|
response_model=List[SubmarineSwap],
|
|
|
|
)
|
|
|
|
async def api_submarineswap(
|
|
|
|
g: WalletTypeInfo = Depends(get_key_type),
|
|
|
|
all_wallets: bool = Query(False),
|
|
|
|
):
|
|
|
|
wallet_ids = [g.wallet.id]
|
|
|
|
if all_wallets:
|
boltz extension v2, recurring swaps (#981)
* add status to statusdialog
* first commits for boltz update
* formatting
* add latest boltz-clien package
* big refactor, depending on boltz_client package, clean up, mypy issues, not tested yet
* blacking, sorting and stuff
* remove unused req_wrap helper
* remove api docs from frontend
* bug: frontend boltz limits error
* clean up buttons
* update to boltz-client 0.0.8
* fix tests to poetry version 1.3.1
* update requirements
* formatting
* recurring swap works now, need more finetuning
* add exceptions for multiple auto swaps and swapping in with active auto swap
* black
* auto reverse swap actually works :)
* remove swap status dialogs
* update to boltz_client 0.0.9
* update to boltz-client 0.1.1, and fix startup
* update requirement.txt for boltz-client
* fixup columns in table, remove unused payment.extra, change deezy label
* remove balance check for auto swap out
* update boltzc-lient to 0.1.2, fix mypy issue inside boltz package
* nitpicks calle tasks.py
* calle nitpicks crud
* calle nitpicks crud
* refactor
* fix formatting
* circular import
* black :)
Co-authored-by: callebtc <93376500+callebtc@users.noreply.github.com>
2023-01-19 10:30:47 +01:00
|
|
|
user = await get_user(g.wallet.user)
|
|
|
|
wallet_ids = user.wallet_ids if user else []
|
Boltz.exchange Extension (#922)
* initial commit and still draft, ready for review
* forgot to uncomment this line
* fee estimation and blockheight
* resolve conversation with michael, to use mempool websockets instead of boltz status event
* Update lnbits/extensions/boltz/boltz.py
Co-authored-by: michael1011 <me@michael1011.at>
* add status to swaps, add sorting and data into listing
* add swap status checks, change urls to docker test setup, dynamic minimum and maximum limits
* fix docker hosts for development
* add api endpoints to _api_docs
* add wallet name and id, to list and status information
* fix status_update for reverse_swaps
* chore: format with black
* more blackformatting and refactoring create_swap()
* fix variable bug
* check if swap is already refunded
* use create_task instead of ensure_future
* add mempool and boltz urls depending on DEBUG .env
* raise exception in mempool fails
* fix onchain txs, sending funds to wrong address and add a refund address for normal swaps beforehand
* add status to swaps, add sorting and data into listing
* add swap status checks, change urls to docker test setup, dynamic minimum and maximum limits
* add wallet name and id, to list and status information
* fix status_update for reverse_swaps
* chore: format with black
* use create_task instead of ensure_future
* add mempool and boltz urls depending on DEBUG .env
* fix onchain txs, sending funds to wrong address and add a refund address for normal swaps beforehand
* black formatting
* add some logging with loguru, and remove function duplication
* cleanup readme
* updates/suggestions from calle
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* remove unused comments
* Update API Endpoints
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* un-factor get_boltz_pairs
* added a explaination for the onchain tx
* remove unused template file
* rename api endpoints
* fix isort and prettier
* more verbose logging!!
* add boltz to mock_data.zip
* new mockdata
* remove comment
* better readme
* fix mempool urls
* change /refund /check /status to post requests
* first step in tests2
* add first tests
* change refund,check,status to post requests
* next try on tests
* overall code improvements
* just testing tests
* throw http exceptions in views_api
* require admincheck for refund,check,status and added fastapi documentation for those
* added more tests
* black
* many code improvements
* adding tests
* temp fix test
* fix race condition when pay_invoice fails
* test are working
* add boltz env variables
* add startup check, bugfixes, improvements
* improve on status checking
* remove check_invoice_status
* more fixes and tests
* testing testing testing
* make tests run again inside regtest
* fix bad error :O
* fix postgres boolean bug and add swap test
* Update README.md
Update README.md
Update README.md
Update README.md
* some mypy
* blacked
* the missing commit?
* fix api_docs readme link
* better refunding error catching
fix
* check swaps now also shows pending reverse swap, ui improvements, tooltips
* add backend check for boltz limits
fixup
* many improvements, startup check for swaps working, reverse needs more testing
* little last fixes
* remove unused logic
* fastapi documentation
fixup
* formatting and remove unused tests
* fix test
* fix swapstatus model
* Update lnbits/extensions/boltz/tasks.py
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* Update lnbits/extensions/boltz/views_api.py
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* balance check msg, format
* fix mypy data override
* fix swapstatus, remove can refund column
* Update lnbits/extensions/boltz/README.md
Co-authored-by: michael1011 <me@michael1011.at>
* empty lines
* fix error message when swap is not found
* remove preimage_hash from database
* fix api_docs html
fix api_docs html
* catch boltz network exceptions better
* formatting
* check for timeout on swap at get request
Co-authored-by: michael1011 <me@michael1011.at>
Co-authored-by: fusion44 <some.fusion@gmail.com>
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
2022-08-30 12:51:17 +02:00
|
|
|
return [swap.dict() for swap in await get_submarine_swaps(wallet_ids)]
|
|
|
|
|
|
|
|
|
|
|
|
@boltz_ext.post(
|
|
|
|
"/api/v1/swap/refund",
|
|
|
|
name=f"boltz.swap_refund",
|
|
|
|
summary="refund of a swap",
|
|
|
|
description="""
|
|
|
|
This endpoint attempts to refund a normal swaps, creates onchain tx and sets swap status ro refunded.
|
|
|
|
""",
|
|
|
|
response_description="refunded swap with status set to refunded",
|
|
|
|
dependencies=[Depends(require_admin_key)],
|
|
|
|
response_model=SubmarineSwap,
|
|
|
|
responses={
|
|
|
|
400: {"description": "when swap_id is missing"},
|
|
|
|
404: {"description": "when swap is not found"},
|
|
|
|
405: {"description": "when swap is not pending"},
|
|
|
|
500: {
|
|
|
|
"description": "when something goes wrong creating the refund onchain tx"
|
|
|
|
},
|
|
|
|
},
|
|
|
|
)
|
boltz extension v2, recurring swaps (#981)
* add status to statusdialog
* first commits for boltz update
* formatting
* add latest boltz-clien package
* big refactor, depending on boltz_client package, clean up, mypy issues, not tested yet
* blacking, sorting and stuff
* remove unused req_wrap helper
* remove api docs from frontend
* bug: frontend boltz limits error
* clean up buttons
* update to boltz-client 0.0.8
* fix tests to poetry version 1.3.1
* update requirements
* formatting
* recurring swap works now, need more finetuning
* add exceptions for multiple auto swaps and swapping in with active auto swap
* black
* auto reverse swap actually works :)
* remove swap status dialogs
* update to boltz_client 0.0.9
* update to boltz-client 0.1.1, and fix startup
* update requirement.txt for boltz-client
* fixup columns in table, remove unused payment.extra, change deezy label
* remove balance check for auto swap out
* update boltzc-lient to 0.1.2, fix mypy issue inside boltz package
* nitpicks calle tasks.py
* calle nitpicks crud
* calle nitpicks crud
* refactor
* fix formatting
* circular import
* black :)
Co-authored-by: callebtc <93376500+callebtc@users.noreply.github.com>
2023-01-19 10:30:47 +01:00
|
|
|
async def api_submarineswap_refund(swap_id: str):
|
|
|
|
if not swap_id:
|
Boltz.exchange Extension (#922)
* initial commit and still draft, ready for review
* forgot to uncomment this line
* fee estimation and blockheight
* resolve conversation with michael, to use mempool websockets instead of boltz status event
* Update lnbits/extensions/boltz/boltz.py
Co-authored-by: michael1011 <me@michael1011.at>
* add status to swaps, add sorting and data into listing
* add swap status checks, change urls to docker test setup, dynamic minimum and maximum limits
* fix docker hosts for development
* add api endpoints to _api_docs
* add wallet name and id, to list and status information
* fix status_update for reverse_swaps
* chore: format with black
* more blackformatting and refactoring create_swap()
* fix variable bug
* check if swap is already refunded
* use create_task instead of ensure_future
* add mempool and boltz urls depending on DEBUG .env
* raise exception in mempool fails
* fix onchain txs, sending funds to wrong address and add a refund address for normal swaps beforehand
* add status to swaps, add sorting and data into listing
* add swap status checks, change urls to docker test setup, dynamic minimum and maximum limits
* add wallet name and id, to list and status information
* fix status_update for reverse_swaps
* chore: format with black
* use create_task instead of ensure_future
* add mempool and boltz urls depending on DEBUG .env
* fix onchain txs, sending funds to wrong address and add a refund address for normal swaps beforehand
* black formatting
* add some logging with loguru, and remove function duplication
* cleanup readme
* updates/suggestions from calle
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* remove unused comments
* Update API Endpoints
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* un-factor get_boltz_pairs
* added a explaination for the onchain tx
* remove unused template file
* rename api endpoints
* fix isort and prettier
* more verbose logging!!
* add boltz to mock_data.zip
* new mockdata
* remove comment
* better readme
* fix mempool urls
* change /refund /check /status to post requests
* first step in tests2
* add first tests
* change refund,check,status to post requests
* next try on tests
* overall code improvements
* just testing tests
* throw http exceptions in views_api
* require admincheck for refund,check,status and added fastapi documentation for those
* added more tests
* black
* many code improvements
* adding tests
* temp fix test
* fix race condition when pay_invoice fails
* test are working
* add boltz env variables
* add startup check, bugfixes, improvements
* improve on status checking
* remove check_invoice_status
* more fixes and tests
* testing testing testing
* make tests run again inside regtest
* fix bad error :O
* fix postgres boolean bug and add swap test
* Update README.md
Update README.md
Update README.md
Update README.md
* some mypy
* blacked
* the missing commit?
* fix api_docs readme link
* better refunding error catching
fix
* check swaps now also shows pending reverse swap, ui improvements, tooltips
* add backend check for boltz limits
fixup
* many improvements, startup check for swaps working, reverse needs more testing
* little last fixes
* remove unused logic
* fastapi documentation
fixup
* formatting and remove unused tests
* fix test
* fix swapstatus model
* Update lnbits/extensions/boltz/tasks.py
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* Update lnbits/extensions/boltz/views_api.py
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* balance check msg, format
* fix mypy data override
* fix swapstatus, remove can refund column
* Update lnbits/extensions/boltz/README.md
Co-authored-by: michael1011 <me@michael1011.at>
* empty lines
* fix error message when swap is not found
* remove preimage_hash from database
* fix api_docs html
fix api_docs html
* catch boltz network exceptions better
* formatting
* check for timeout on swap at get request
Co-authored-by: michael1011 <me@michael1011.at>
Co-authored-by: fusion44 <some.fusion@gmail.com>
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
2022-08-30 12:51:17 +02:00
|
|
|
raise HTTPException(
|
|
|
|
status_code=HTTPStatus.BAD_REQUEST, detail="swap_id missing"
|
|
|
|
)
|
|
|
|
swap = await get_submarine_swap(swap_id)
|
boltz extension v2, recurring swaps (#981)
* add status to statusdialog
* first commits for boltz update
* formatting
* add latest boltz-clien package
* big refactor, depending on boltz_client package, clean up, mypy issues, not tested yet
* blacking, sorting and stuff
* remove unused req_wrap helper
* remove api docs from frontend
* bug: frontend boltz limits error
* clean up buttons
* update to boltz-client 0.0.8
* fix tests to poetry version 1.3.1
* update requirements
* formatting
* recurring swap works now, need more finetuning
* add exceptions for multiple auto swaps and swapping in with active auto swap
* black
* auto reverse swap actually works :)
* remove swap status dialogs
* update to boltz_client 0.0.9
* update to boltz-client 0.1.1, and fix startup
* update requirement.txt for boltz-client
* fixup columns in table, remove unused payment.extra, change deezy label
* remove balance check for auto swap out
* update boltzc-lient to 0.1.2, fix mypy issue inside boltz package
* nitpicks calle tasks.py
* calle nitpicks crud
* calle nitpicks crud
* refactor
* fix formatting
* circular import
* black :)
Co-authored-by: callebtc <93376500+callebtc@users.noreply.github.com>
2023-01-19 10:30:47 +01:00
|
|
|
if not swap:
|
Boltz.exchange Extension (#922)
* initial commit and still draft, ready for review
* forgot to uncomment this line
* fee estimation and blockheight
* resolve conversation with michael, to use mempool websockets instead of boltz status event
* Update lnbits/extensions/boltz/boltz.py
Co-authored-by: michael1011 <me@michael1011.at>
* add status to swaps, add sorting and data into listing
* add swap status checks, change urls to docker test setup, dynamic minimum and maximum limits
* fix docker hosts for development
* add api endpoints to _api_docs
* add wallet name and id, to list and status information
* fix status_update for reverse_swaps
* chore: format with black
* more blackformatting and refactoring create_swap()
* fix variable bug
* check if swap is already refunded
* use create_task instead of ensure_future
* add mempool and boltz urls depending on DEBUG .env
* raise exception in mempool fails
* fix onchain txs, sending funds to wrong address and add a refund address for normal swaps beforehand
* add status to swaps, add sorting and data into listing
* add swap status checks, change urls to docker test setup, dynamic minimum and maximum limits
* add wallet name and id, to list and status information
* fix status_update for reverse_swaps
* chore: format with black
* use create_task instead of ensure_future
* add mempool and boltz urls depending on DEBUG .env
* fix onchain txs, sending funds to wrong address and add a refund address for normal swaps beforehand
* black formatting
* add some logging with loguru, and remove function duplication
* cleanup readme
* updates/suggestions from calle
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* remove unused comments
* Update API Endpoints
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* un-factor get_boltz_pairs
* added a explaination for the onchain tx
* remove unused template file
* rename api endpoints
* fix isort and prettier
* more verbose logging!!
* add boltz to mock_data.zip
* new mockdata
* remove comment
* better readme
* fix mempool urls
* change /refund /check /status to post requests
* first step in tests2
* add first tests
* change refund,check,status to post requests
* next try on tests
* overall code improvements
* just testing tests
* throw http exceptions in views_api
* require admincheck for refund,check,status and added fastapi documentation for those
* added more tests
* black
* many code improvements
* adding tests
* temp fix test
* fix race condition when pay_invoice fails
* test are working
* add boltz env variables
* add startup check, bugfixes, improvements
* improve on status checking
* remove check_invoice_status
* more fixes and tests
* testing testing testing
* make tests run again inside regtest
* fix bad error :O
* fix postgres boolean bug and add swap test
* Update README.md
Update README.md
Update README.md
Update README.md
* some mypy
* blacked
* the missing commit?
* fix api_docs readme link
* better refunding error catching
fix
* check swaps now also shows pending reverse swap, ui improvements, tooltips
* add backend check for boltz limits
fixup
* many improvements, startup check for swaps working, reverse needs more testing
* little last fixes
* remove unused logic
* fastapi documentation
fixup
* formatting and remove unused tests
* fix test
* fix swapstatus model
* Update lnbits/extensions/boltz/tasks.py
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* Update lnbits/extensions/boltz/views_api.py
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* balance check msg, format
* fix mypy data override
* fix swapstatus, remove can refund column
* Update lnbits/extensions/boltz/README.md
Co-authored-by: michael1011 <me@michael1011.at>
* empty lines
* fix error message when swap is not found
* remove preimage_hash from database
* fix api_docs html
fix api_docs html
* catch boltz network exceptions better
* formatting
* check for timeout on swap at get request
Co-authored-by: michael1011 <me@michael1011.at>
Co-authored-by: fusion44 <some.fusion@gmail.com>
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
2022-08-30 12:51:17 +02:00
|
|
|
raise HTTPException(
|
|
|
|
status_code=HTTPStatus.NOT_FOUND, detail="swap does not exist."
|
|
|
|
)
|
|
|
|
if swap.status != "pending":
|
|
|
|
raise HTTPException(
|
|
|
|
status_code=HTTPStatus.METHOD_NOT_ALLOWED, detail="swap is not pending."
|
|
|
|
)
|
|
|
|
|
boltz extension v2, recurring swaps (#981)
* add status to statusdialog
* first commits for boltz update
* formatting
* add latest boltz-clien package
* big refactor, depending on boltz_client package, clean up, mypy issues, not tested yet
* blacking, sorting and stuff
* remove unused req_wrap helper
* remove api docs from frontend
* bug: frontend boltz limits error
* clean up buttons
* update to boltz-client 0.0.8
* fix tests to poetry version 1.3.1
* update requirements
* formatting
* recurring swap works now, need more finetuning
* add exceptions for multiple auto swaps and swapping in with active auto swap
* black
* auto reverse swap actually works :)
* remove swap status dialogs
* update to boltz_client 0.0.9
* update to boltz-client 0.1.1, and fix startup
* update requirement.txt for boltz-client
* fixup columns in table, remove unused payment.extra, change deezy label
* remove balance check for auto swap out
* update boltzc-lient to 0.1.2, fix mypy issue inside boltz package
* nitpicks calle tasks.py
* calle nitpicks crud
* calle nitpicks crud
* refactor
* fix formatting
* circular import
* black :)
Co-authored-by: callebtc <93376500+callebtc@users.noreply.github.com>
2023-01-19 10:30:47 +01:00
|
|
|
client = create_boltz_client()
|
|
|
|
await client.refund_swap(
|
|
|
|
privkey_wif=swap.refund_privkey,
|
|
|
|
lockup_address=swap.address,
|
|
|
|
receive_address=swap.refund_address,
|
|
|
|
redeem_script_hex=swap.redeem_script,
|
|
|
|
timeout_block_height=swap.timeout_block_height,
|
|
|
|
)
|
Boltz.exchange Extension (#922)
* initial commit and still draft, ready for review
* forgot to uncomment this line
* fee estimation and blockheight
* resolve conversation with michael, to use mempool websockets instead of boltz status event
* Update lnbits/extensions/boltz/boltz.py
Co-authored-by: michael1011 <me@michael1011.at>
* add status to swaps, add sorting and data into listing
* add swap status checks, change urls to docker test setup, dynamic minimum and maximum limits
* fix docker hosts for development
* add api endpoints to _api_docs
* add wallet name and id, to list and status information
* fix status_update for reverse_swaps
* chore: format with black
* more blackformatting and refactoring create_swap()
* fix variable bug
* check if swap is already refunded
* use create_task instead of ensure_future
* add mempool and boltz urls depending on DEBUG .env
* raise exception in mempool fails
* fix onchain txs, sending funds to wrong address and add a refund address for normal swaps beforehand
* add status to swaps, add sorting and data into listing
* add swap status checks, change urls to docker test setup, dynamic minimum and maximum limits
* add wallet name and id, to list and status information
* fix status_update for reverse_swaps
* chore: format with black
* use create_task instead of ensure_future
* add mempool and boltz urls depending on DEBUG .env
* fix onchain txs, sending funds to wrong address and add a refund address for normal swaps beforehand
* black formatting
* add some logging with loguru, and remove function duplication
* cleanup readme
* updates/suggestions from calle
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* remove unused comments
* Update API Endpoints
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* un-factor get_boltz_pairs
* added a explaination for the onchain tx
* remove unused template file
* rename api endpoints
* fix isort and prettier
* more verbose logging!!
* add boltz to mock_data.zip
* new mockdata
* remove comment
* better readme
* fix mempool urls
* change /refund /check /status to post requests
* first step in tests2
* add first tests
* change refund,check,status to post requests
* next try on tests
* overall code improvements
* just testing tests
* throw http exceptions in views_api
* require admincheck for refund,check,status and added fastapi documentation for those
* added more tests
* black
* many code improvements
* adding tests
* temp fix test
* fix race condition when pay_invoice fails
* test are working
* add boltz env variables
* add startup check, bugfixes, improvements
* improve on status checking
* remove check_invoice_status
* more fixes and tests
* testing testing testing
* make tests run again inside regtest
* fix bad error :O
* fix postgres boolean bug and add swap test
* Update README.md
Update README.md
Update README.md
Update README.md
* some mypy
* blacked
* the missing commit?
* fix api_docs readme link
* better refunding error catching
fix
* check swaps now also shows pending reverse swap, ui improvements, tooltips
* add backend check for boltz limits
fixup
* many improvements, startup check for swaps working, reverse needs more testing
* little last fixes
* remove unused logic
* fastapi documentation
fixup
* formatting and remove unused tests
* fix test
* fix swapstatus model
* Update lnbits/extensions/boltz/tasks.py
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* Update lnbits/extensions/boltz/views_api.py
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* balance check msg, format
* fix mypy data override
* fix swapstatus, remove can refund column
* Update lnbits/extensions/boltz/README.md
Co-authored-by: michael1011 <me@michael1011.at>
* empty lines
* fix error message when swap is not found
* remove preimage_hash from database
* fix api_docs html
fix api_docs html
* catch boltz network exceptions better
* formatting
* check for timeout on swap at get request
Co-authored-by: michael1011 <me@michael1011.at>
Co-authored-by: fusion44 <some.fusion@gmail.com>
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
2022-08-30 12:51:17 +02:00
|
|
|
|
|
|
|
await update_swap_status(swap.id, "refunded")
|
|
|
|
return swap
|
|
|
|
|
|
|
|
|
|
|
|
@boltz_ext.post(
|
|
|
|
"/api/v1/swap",
|
|
|
|
status_code=status.HTTP_201_CREATED,
|
|
|
|
name=f"boltz.post /swap",
|
|
|
|
summary="create a submarine swap",
|
|
|
|
description="""
|
|
|
|
This endpoint creates a submarine swap
|
|
|
|
""",
|
|
|
|
response_description="create swap",
|
|
|
|
response_model=SubmarineSwap,
|
boltz extension v2, recurring swaps (#981)
* add status to statusdialog
* first commits for boltz update
* formatting
* add latest boltz-clien package
* big refactor, depending on boltz_client package, clean up, mypy issues, not tested yet
* blacking, sorting and stuff
* remove unused req_wrap helper
* remove api docs from frontend
* bug: frontend boltz limits error
* clean up buttons
* update to boltz-client 0.0.8
* fix tests to poetry version 1.3.1
* update requirements
* formatting
* recurring swap works now, need more finetuning
* add exceptions for multiple auto swaps and swapping in with active auto swap
* black
* auto reverse swap actually works :)
* remove swap status dialogs
* update to boltz_client 0.0.9
* update to boltz-client 0.1.1, and fix startup
* update requirement.txt for boltz-client
* fixup columns in table, remove unused payment.extra, change deezy label
* remove balance check for auto swap out
* update boltzc-lient to 0.1.2, fix mypy issue inside boltz package
* nitpicks calle tasks.py
* calle nitpicks crud
* calle nitpicks crud
* refactor
* fix formatting
* circular import
* black :)
Co-authored-by: callebtc <93376500+callebtc@users.noreply.github.com>
2023-01-19 10:30:47 +01:00
|
|
|
dependencies=[Depends(require_admin_key)],
|
Boltz.exchange Extension (#922)
* initial commit and still draft, ready for review
* forgot to uncomment this line
* fee estimation and blockheight
* resolve conversation with michael, to use mempool websockets instead of boltz status event
* Update lnbits/extensions/boltz/boltz.py
Co-authored-by: michael1011 <me@michael1011.at>
* add status to swaps, add sorting and data into listing
* add swap status checks, change urls to docker test setup, dynamic minimum and maximum limits
* fix docker hosts for development
* add api endpoints to _api_docs
* add wallet name and id, to list and status information
* fix status_update for reverse_swaps
* chore: format with black
* more blackformatting and refactoring create_swap()
* fix variable bug
* check if swap is already refunded
* use create_task instead of ensure_future
* add mempool and boltz urls depending on DEBUG .env
* raise exception in mempool fails
* fix onchain txs, sending funds to wrong address and add a refund address for normal swaps beforehand
* add status to swaps, add sorting and data into listing
* add swap status checks, change urls to docker test setup, dynamic minimum and maximum limits
* add wallet name and id, to list and status information
* fix status_update for reverse_swaps
* chore: format with black
* use create_task instead of ensure_future
* add mempool and boltz urls depending on DEBUG .env
* fix onchain txs, sending funds to wrong address and add a refund address for normal swaps beforehand
* black formatting
* add some logging with loguru, and remove function duplication
* cleanup readme
* updates/suggestions from calle
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* remove unused comments
* Update API Endpoints
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* un-factor get_boltz_pairs
* added a explaination for the onchain tx
* remove unused template file
* rename api endpoints
* fix isort and prettier
* more verbose logging!!
* add boltz to mock_data.zip
* new mockdata
* remove comment
* better readme
* fix mempool urls
* change /refund /check /status to post requests
* first step in tests2
* add first tests
* change refund,check,status to post requests
* next try on tests
* overall code improvements
* just testing tests
* throw http exceptions in views_api
* require admincheck for refund,check,status and added fastapi documentation for those
* added more tests
* black
* many code improvements
* adding tests
* temp fix test
* fix race condition when pay_invoice fails
* test are working
* add boltz env variables
* add startup check, bugfixes, improvements
* improve on status checking
* remove check_invoice_status
* more fixes and tests
* testing testing testing
* make tests run again inside regtest
* fix bad error :O
* fix postgres boolean bug and add swap test
* Update README.md
Update README.md
Update README.md
Update README.md
* some mypy
* blacked
* the missing commit?
* fix api_docs readme link
* better refunding error catching
fix
* check swaps now also shows pending reverse swap, ui improvements, tooltips
* add backend check for boltz limits
fixup
* many improvements, startup check for swaps working, reverse needs more testing
* little last fixes
* remove unused logic
* fastapi documentation
fixup
* formatting and remove unused tests
* fix test
* fix swapstatus model
* Update lnbits/extensions/boltz/tasks.py
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* Update lnbits/extensions/boltz/views_api.py
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* balance check msg, format
* fix mypy data override
* fix swapstatus, remove can refund column
* Update lnbits/extensions/boltz/README.md
Co-authored-by: michael1011 <me@michael1011.at>
* empty lines
* fix error message when swap is not found
* remove preimage_hash from database
* fix api_docs html
fix api_docs html
* catch boltz network exceptions better
* formatting
* check for timeout on swap at get request
Co-authored-by: michael1011 <me@michael1011.at>
Co-authored-by: fusion44 <some.fusion@gmail.com>
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
2022-08-30 12:51:17 +02:00
|
|
|
responses={
|
boltz extension v2, recurring swaps (#981)
* add status to statusdialog
* first commits for boltz update
* formatting
* add latest boltz-clien package
* big refactor, depending on boltz_client package, clean up, mypy issues, not tested yet
* blacking, sorting and stuff
* remove unused req_wrap helper
* remove api docs from frontend
* bug: frontend boltz limits error
* clean up buttons
* update to boltz-client 0.0.8
* fix tests to poetry version 1.3.1
* update requirements
* formatting
* recurring swap works now, need more finetuning
* add exceptions for multiple auto swaps and swapping in with active auto swap
* black
* auto reverse swap actually works :)
* remove swap status dialogs
* update to boltz_client 0.0.9
* update to boltz-client 0.1.1, and fix startup
* update requirement.txt for boltz-client
* fixup columns in table, remove unused payment.extra, change deezy label
* remove balance check for auto swap out
* update boltzc-lient to 0.1.2, fix mypy issue inside boltz package
* nitpicks calle tasks.py
* calle nitpicks crud
* calle nitpicks crud
* refactor
* fix formatting
* circular import
* black :)
Co-authored-by: callebtc <93376500+callebtc@users.noreply.github.com>
2023-01-19 10:30:47 +01:00
|
|
|
405: {
|
|
|
|
"description": "auto reverse swap is active, a swap would immediatly be swapped out again."
|
|
|
|
},
|
Boltz.exchange Extension (#922)
* initial commit and still draft, ready for review
* forgot to uncomment this line
* fee estimation and blockheight
* resolve conversation with michael, to use mempool websockets instead of boltz status event
* Update lnbits/extensions/boltz/boltz.py
Co-authored-by: michael1011 <me@michael1011.at>
* add status to swaps, add sorting and data into listing
* add swap status checks, change urls to docker test setup, dynamic minimum and maximum limits
* fix docker hosts for development
* add api endpoints to _api_docs
* add wallet name and id, to list and status information
* fix status_update for reverse_swaps
* chore: format with black
* more blackformatting and refactoring create_swap()
* fix variable bug
* check if swap is already refunded
* use create_task instead of ensure_future
* add mempool and boltz urls depending on DEBUG .env
* raise exception in mempool fails
* fix onchain txs, sending funds to wrong address and add a refund address for normal swaps beforehand
* add status to swaps, add sorting and data into listing
* add swap status checks, change urls to docker test setup, dynamic minimum and maximum limits
* add wallet name and id, to list and status information
* fix status_update for reverse_swaps
* chore: format with black
* use create_task instead of ensure_future
* add mempool and boltz urls depending on DEBUG .env
* fix onchain txs, sending funds to wrong address and add a refund address for normal swaps beforehand
* black formatting
* add some logging with loguru, and remove function duplication
* cleanup readme
* updates/suggestions from calle
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* remove unused comments
* Update API Endpoints
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* un-factor get_boltz_pairs
* added a explaination for the onchain tx
* remove unused template file
* rename api endpoints
* fix isort and prettier
* more verbose logging!!
* add boltz to mock_data.zip
* new mockdata
* remove comment
* better readme
* fix mempool urls
* change /refund /check /status to post requests
* first step in tests2
* add first tests
* change refund,check,status to post requests
* next try on tests
* overall code improvements
* just testing tests
* throw http exceptions in views_api
* require admincheck for refund,check,status and added fastapi documentation for those
* added more tests
* black
* many code improvements
* adding tests
* temp fix test
* fix race condition when pay_invoice fails
* test are working
* add boltz env variables
* add startup check, bugfixes, improvements
* improve on status checking
* remove check_invoice_status
* more fixes and tests
* testing testing testing
* make tests run again inside regtest
* fix bad error :O
* fix postgres boolean bug and add swap test
* Update README.md
Update README.md
Update README.md
Update README.md
* some mypy
* blacked
* the missing commit?
* fix api_docs readme link
* better refunding error catching
fix
* check swaps now also shows pending reverse swap, ui improvements, tooltips
* add backend check for boltz limits
fixup
* many improvements, startup check for swaps working, reverse needs more testing
* little last fixes
* remove unused logic
* fastapi documentation
fixup
* formatting and remove unused tests
* fix test
* fix swapstatus model
* Update lnbits/extensions/boltz/tasks.py
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* Update lnbits/extensions/boltz/views_api.py
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* balance check msg, format
* fix mypy data override
* fix swapstatus, remove can refund column
* Update lnbits/extensions/boltz/README.md
Co-authored-by: michael1011 <me@michael1011.at>
* empty lines
* fix error message when swap is not found
* remove preimage_hash from database
* fix api_docs html
fix api_docs html
* catch boltz network exceptions better
* formatting
* check for timeout on swap at get request
Co-authored-by: michael1011 <me@michael1011.at>
Co-authored-by: fusion44 <some.fusion@gmail.com>
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
2022-08-30 12:51:17 +02:00
|
|
|
500: {"description": "boltz error"},
|
|
|
|
},
|
|
|
|
)
|
boltz extension v2, recurring swaps (#981)
* add status to statusdialog
* first commits for boltz update
* formatting
* add latest boltz-clien package
* big refactor, depending on boltz_client package, clean up, mypy issues, not tested yet
* blacking, sorting and stuff
* remove unused req_wrap helper
* remove api docs from frontend
* bug: frontend boltz limits error
* clean up buttons
* update to boltz-client 0.0.8
* fix tests to poetry version 1.3.1
* update requirements
* formatting
* recurring swap works now, need more finetuning
* add exceptions for multiple auto swaps and swapping in with active auto swap
* black
* auto reverse swap actually works :)
* remove swap status dialogs
* update to boltz_client 0.0.9
* update to boltz-client 0.1.1, and fix startup
* update requirement.txt for boltz-client
* fixup columns in table, remove unused payment.extra, change deezy label
* remove balance check for auto swap out
* update boltzc-lient to 0.1.2, fix mypy issue inside boltz package
* nitpicks calle tasks.py
* calle nitpicks crud
* calle nitpicks crud
* refactor
* fix formatting
* circular import
* black :)
Co-authored-by: callebtc <93376500+callebtc@users.noreply.github.com>
2023-01-19 10:30:47 +01:00
|
|
|
async def api_submarineswap_create(data: CreateSubmarineSwap):
|
|
|
|
|
|
|
|
auto_swap = await get_auto_reverse_submarine_swap_by_wallet(data.wallet)
|
|
|
|
if auto_swap:
|
Boltz.exchange Extension (#922)
* initial commit and still draft, ready for review
* forgot to uncomment this line
* fee estimation and blockheight
* resolve conversation with michael, to use mempool websockets instead of boltz status event
* Update lnbits/extensions/boltz/boltz.py
Co-authored-by: michael1011 <me@michael1011.at>
* add status to swaps, add sorting and data into listing
* add swap status checks, change urls to docker test setup, dynamic minimum and maximum limits
* fix docker hosts for development
* add api endpoints to _api_docs
* add wallet name and id, to list and status information
* fix status_update for reverse_swaps
* chore: format with black
* more blackformatting and refactoring create_swap()
* fix variable bug
* check if swap is already refunded
* use create_task instead of ensure_future
* add mempool and boltz urls depending on DEBUG .env
* raise exception in mempool fails
* fix onchain txs, sending funds to wrong address and add a refund address for normal swaps beforehand
* add status to swaps, add sorting and data into listing
* add swap status checks, change urls to docker test setup, dynamic minimum and maximum limits
* add wallet name and id, to list and status information
* fix status_update for reverse_swaps
* chore: format with black
* use create_task instead of ensure_future
* add mempool and boltz urls depending on DEBUG .env
* fix onchain txs, sending funds to wrong address and add a refund address for normal swaps beforehand
* black formatting
* add some logging with loguru, and remove function duplication
* cleanup readme
* updates/suggestions from calle
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* remove unused comments
* Update API Endpoints
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* un-factor get_boltz_pairs
* added a explaination for the onchain tx
* remove unused template file
* rename api endpoints
* fix isort and prettier
* more verbose logging!!
* add boltz to mock_data.zip
* new mockdata
* remove comment
* better readme
* fix mempool urls
* change /refund /check /status to post requests
* first step in tests2
* add first tests
* change refund,check,status to post requests
* next try on tests
* overall code improvements
* just testing tests
* throw http exceptions in views_api
* require admincheck for refund,check,status and added fastapi documentation for those
* added more tests
* black
* many code improvements
* adding tests
* temp fix test
* fix race condition when pay_invoice fails
* test are working
* add boltz env variables
* add startup check, bugfixes, improvements
* improve on status checking
* remove check_invoice_status
* more fixes and tests
* testing testing testing
* make tests run again inside regtest
* fix bad error :O
* fix postgres boolean bug and add swap test
* Update README.md
Update README.md
Update README.md
Update README.md
* some mypy
* blacked
* the missing commit?
* fix api_docs readme link
* better refunding error catching
fix
* check swaps now also shows pending reverse swap, ui improvements, tooltips
* add backend check for boltz limits
fixup
* many improvements, startup check for swaps working, reverse needs more testing
* little last fixes
* remove unused logic
* fastapi documentation
fixup
* formatting and remove unused tests
* fix test
* fix swapstatus model
* Update lnbits/extensions/boltz/tasks.py
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* Update lnbits/extensions/boltz/views_api.py
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* balance check msg, format
* fix mypy data override
* fix swapstatus, remove can refund column
* Update lnbits/extensions/boltz/README.md
Co-authored-by: michael1011 <me@michael1011.at>
* empty lines
* fix error message when swap is not found
* remove preimage_hash from database
* fix api_docs html
fix api_docs html
* catch boltz network exceptions better
* formatting
* check for timeout on swap at get request
Co-authored-by: michael1011 <me@michael1011.at>
Co-authored-by: fusion44 <some.fusion@gmail.com>
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
2022-08-30 12:51:17 +02:00
|
|
|
raise HTTPException(
|
boltz extension v2, recurring swaps (#981)
* add status to statusdialog
* first commits for boltz update
* formatting
* add latest boltz-clien package
* big refactor, depending on boltz_client package, clean up, mypy issues, not tested yet
* blacking, sorting and stuff
* remove unused req_wrap helper
* remove api docs from frontend
* bug: frontend boltz limits error
* clean up buttons
* update to boltz-client 0.0.8
* fix tests to poetry version 1.3.1
* update requirements
* formatting
* recurring swap works now, need more finetuning
* add exceptions for multiple auto swaps and swapping in with active auto swap
* black
* auto reverse swap actually works :)
* remove swap status dialogs
* update to boltz_client 0.0.9
* update to boltz-client 0.1.1, and fix startup
* update requirement.txt for boltz-client
* fixup columns in table, remove unused payment.extra, change deezy label
* remove balance check for auto swap out
* update boltzc-lient to 0.1.2, fix mypy issue inside boltz package
* nitpicks calle tasks.py
* calle nitpicks crud
* calle nitpicks crud
* refactor
* fix formatting
* circular import
* black :)
Co-authored-by: callebtc <93376500+callebtc@users.noreply.github.com>
2023-01-19 10:30:47 +01:00
|
|
|
status_code=HTTPStatus.METHOD_NOT_ALLOWED,
|
|
|
|
detail="auto reverse swap is active, a swap would immediatly be swapped out again.",
|
Boltz.exchange Extension (#922)
* initial commit and still draft, ready for review
* forgot to uncomment this line
* fee estimation and blockheight
* resolve conversation with michael, to use mempool websockets instead of boltz status event
* Update lnbits/extensions/boltz/boltz.py
Co-authored-by: michael1011 <me@michael1011.at>
* add status to swaps, add sorting and data into listing
* add swap status checks, change urls to docker test setup, dynamic minimum and maximum limits
* fix docker hosts for development
* add api endpoints to _api_docs
* add wallet name and id, to list and status information
* fix status_update for reverse_swaps
* chore: format with black
* more blackformatting and refactoring create_swap()
* fix variable bug
* check if swap is already refunded
* use create_task instead of ensure_future
* add mempool and boltz urls depending on DEBUG .env
* raise exception in mempool fails
* fix onchain txs, sending funds to wrong address and add a refund address for normal swaps beforehand
* add status to swaps, add sorting and data into listing
* add swap status checks, change urls to docker test setup, dynamic minimum and maximum limits
* add wallet name and id, to list and status information
* fix status_update for reverse_swaps
* chore: format with black
* use create_task instead of ensure_future
* add mempool and boltz urls depending on DEBUG .env
* fix onchain txs, sending funds to wrong address and add a refund address for normal swaps beforehand
* black formatting
* add some logging with loguru, and remove function duplication
* cleanup readme
* updates/suggestions from calle
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* remove unused comments
* Update API Endpoints
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* un-factor get_boltz_pairs
* added a explaination for the onchain tx
* remove unused template file
* rename api endpoints
* fix isort and prettier
* more verbose logging!!
* add boltz to mock_data.zip
* new mockdata
* remove comment
* better readme
* fix mempool urls
* change /refund /check /status to post requests
* first step in tests2
* add first tests
* change refund,check,status to post requests
* next try on tests
* overall code improvements
* just testing tests
* throw http exceptions in views_api
* require admincheck for refund,check,status and added fastapi documentation for those
* added more tests
* black
* many code improvements
* adding tests
* temp fix test
* fix race condition when pay_invoice fails
* test are working
* add boltz env variables
* add startup check, bugfixes, improvements
* improve on status checking
* remove check_invoice_status
* more fixes and tests
* testing testing testing
* make tests run again inside regtest
* fix bad error :O
* fix postgres boolean bug and add swap test
* Update README.md
Update README.md
Update README.md
Update README.md
* some mypy
* blacked
* the missing commit?
* fix api_docs readme link
* better refunding error catching
fix
* check swaps now also shows pending reverse swap, ui improvements, tooltips
* add backend check for boltz limits
fixup
* many improvements, startup check for swaps working, reverse needs more testing
* little last fixes
* remove unused logic
* fastapi documentation
fixup
* formatting and remove unused tests
* fix test
* fix swapstatus model
* Update lnbits/extensions/boltz/tasks.py
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* Update lnbits/extensions/boltz/views_api.py
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* balance check msg, format
* fix mypy data override
* fix swapstatus, remove can refund column
* Update lnbits/extensions/boltz/README.md
Co-authored-by: michael1011 <me@michael1011.at>
* empty lines
* fix error message when swap is not found
* remove preimage_hash from database
* fix api_docs html
fix api_docs html
* catch boltz network exceptions better
* formatting
* check for timeout on swap at get request
Co-authored-by: michael1011 <me@michael1011.at>
Co-authored-by: fusion44 <some.fusion@gmail.com>
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
2022-08-30 12:51:17 +02:00
|
|
|
)
|
boltz extension v2, recurring swaps (#981)
* add status to statusdialog
* first commits for boltz update
* formatting
* add latest boltz-clien package
* big refactor, depending on boltz_client package, clean up, mypy issues, not tested yet
* blacking, sorting and stuff
* remove unused req_wrap helper
* remove api docs from frontend
* bug: frontend boltz limits error
* clean up buttons
* update to boltz-client 0.0.8
* fix tests to poetry version 1.3.1
* update requirements
* formatting
* recurring swap works now, need more finetuning
* add exceptions for multiple auto swaps and swapping in with active auto swap
* black
* auto reverse swap actually works :)
* remove swap status dialogs
* update to boltz_client 0.0.9
* update to boltz-client 0.1.1, and fix startup
* update requirement.txt for boltz-client
* fixup columns in table, remove unused payment.extra, change deezy label
* remove balance check for auto swap out
* update boltzc-lient to 0.1.2, fix mypy issue inside boltz package
* nitpicks calle tasks.py
* calle nitpicks crud
* calle nitpicks crud
* refactor
* fix formatting
* circular import
* black :)
Co-authored-by: callebtc <93376500+callebtc@users.noreply.github.com>
2023-01-19 10:30:47 +01:00
|
|
|
|
|
|
|
client = create_boltz_client()
|
|
|
|
swap_id = urlsafe_short_hash()
|
|
|
|
payment_hash, payment_request = await create_invoice(
|
|
|
|
wallet_id=data.wallet,
|
|
|
|
amount=data.amount,
|
|
|
|
memo=f"swap of {data.amount} sats on boltz.exchange",
|
|
|
|
extra={"tag": "boltz", "swap_id": swap_id},
|
|
|
|
)
|
|
|
|
refund_privkey_wif, swap = client.create_swap(payment_request)
|
|
|
|
new_swap = await create_submarine_swap(
|
|
|
|
data, swap, swap_id, refund_privkey_wif, payment_hash
|
|
|
|
)
|
|
|
|
return new_swap.dict() if new_swap else None
|
Boltz.exchange Extension (#922)
* initial commit and still draft, ready for review
* forgot to uncomment this line
* fee estimation and blockheight
* resolve conversation with michael, to use mempool websockets instead of boltz status event
* Update lnbits/extensions/boltz/boltz.py
Co-authored-by: michael1011 <me@michael1011.at>
* add status to swaps, add sorting and data into listing
* add swap status checks, change urls to docker test setup, dynamic minimum and maximum limits
* fix docker hosts for development
* add api endpoints to _api_docs
* add wallet name and id, to list and status information
* fix status_update for reverse_swaps
* chore: format with black
* more blackformatting and refactoring create_swap()
* fix variable bug
* check if swap is already refunded
* use create_task instead of ensure_future
* add mempool and boltz urls depending on DEBUG .env
* raise exception in mempool fails
* fix onchain txs, sending funds to wrong address and add a refund address for normal swaps beforehand
* add status to swaps, add sorting and data into listing
* add swap status checks, change urls to docker test setup, dynamic minimum and maximum limits
* add wallet name and id, to list and status information
* fix status_update for reverse_swaps
* chore: format with black
* use create_task instead of ensure_future
* add mempool and boltz urls depending on DEBUG .env
* fix onchain txs, sending funds to wrong address and add a refund address for normal swaps beforehand
* black formatting
* add some logging with loguru, and remove function duplication
* cleanup readme
* updates/suggestions from calle
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* remove unused comments
* Update API Endpoints
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* un-factor get_boltz_pairs
* added a explaination for the onchain tx
* remove unused template file
* rename api endpoints
* fix isort and prettier
* more verbose logging!!
* add boltz to mock_data.zip
* new mockdata
* remove comment
* better readme
* fix mempool urls
* change /refund /check /status to post requests
* first step in tests2
* add first tests
* change refund,check,status to post requests
* next try on tests
* overall code improvements
* just testing tests
* throw http exceptions in views_api
* require admincheck for refund,check,status and added fastapi documentation for those
* added more tests
* black
* many code improvements
* adding tests
* temp fix test
* fix race condition when pay_invoice fails
* test are working
* add boltz env variables
* add startup check, bugfixes, improvements
* improve on status checking
* remove check_invoice_status
* more fixes and tests
* testing testing testing
* make tests run again inside regtest
* fix bad error :O
* fix postgres boolean bug and add swap test
* Update README.md
Update README.md
Update README.md
Update README.md
* some mypy
* blacked
* the missing commit?
* fix api_docs readme link
* better refunding error catching
fix
* check swaps now also shows pending reverse swap, ui improvements, tooltips
* add backend check for boltz limits
fixup
* many improvements, startup check for swaps working, reverse needs more testing
* little last fixes
* remove unused logic
* fastapi documentation
fixup
* formatting and remove unused tests
* fix test
* fix swapstatus model
* Update lnbits/extensions/boltz/tasks.py
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* Update lnbits/extensions/boltz/views_api.py
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* balance check msg, format
* fix mypy data override
* fix swapstatus, remove can refund column
* Update lnbits/extensions/boltz/README.md
Co-authored-by: michael1011 <me@michael1011.at>
* empty lines
* fix error message when swap is not found
* remove preimage_hash from database
* fix api_docs html
fix api_docs html
* catch boltz network exceptions better
* formatting
* check for timeout on swap at get request
Co-authored-by: michael1011 <me@michael1011.at>
Co-authored-by: fusion44 <some.fusion@gmail.com>
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
2022-08-30 12:51:17 +02:00
|
|
|
|
|
|
|
|
|
|
|
# REVERSE SWAP
|
|
|
|
@boltz_ext.get(
|
|
|
|
"/api/v1/swap/reverse",
|
|
|
|
name=f"boltz.get /swap/reverse",
|
boltz extension v2, recurring swaps (#981)
* add status to statusdialog
* first commits for boltz update
* formatting
* add latest boltz-clien package
* big refactor, depending on boltz_client package, clean up, mypy issues, not tested yet
* blacking, sorting and stuff
* remove unused req_wrap helper
* remove api docs from frontend
* bug: frontend boltz limits error
* clean up buttons
* update to boltz-client 0.0.8
* fix tests to poetry version 1.3.1
* update requirements
* formatting
* recurring swap works now, need more finetuning
* add exceptions for multiple auto swaps and swapping in with active auto swap
* black
* auto reverse swap actually works :)
* remove swap status dialogs
* update to boltz_client 0.0.9
* update to boltz-client 0.1.1, and fix startup
* update requirement.txt for boltz-client
* fixup columns in table, remove unused payment.extra, change deezy label
* remove balance check for auto swap out
* update boltzc-lient to 0.1.2, fix mypy issue inside boltz package
* nitpicks calle tasks.py
* calle nitpicks crud
* calle nitpicks crud
* refactor
* fix formatting
* circular import
* black :)
Co-authored-by: callebtc <93376500+callebtc@users.noreply.github.com>
2023-01-19 10:30:47 +01:00
|
|
|
summary="get a list of reverse swaps",
|
Boltz.exchange Extension (#922)
* initial commit and still draft, ready for review
* forgot to uncomment this line
* fee estimation and blockheight
* resolve conversation with michael, to use mempool websockets instead of boltz status event
* Update lnbits/extensions/boltz/boltz.py
Co-authored-by: michael1011 <me@michael1011.at>
* add status to swaps, add sorting and data into listing
* add swap status checks, change urls to docker test setup, dynamic minimum and maximum limits
* fix docker hosts for development
* add api endpoints to _api_docs
* add wallet name and id, to list and status information
* fix status_update for reverse_swaps
* chore: format with black
* more blackformatting and refactoring create_swap()
* fix variable bug
* check if swap is already refunded
* use create_task instead of ensure_future
* add mempool and boltz urls depending on DEBUG .env
* raise exception in mempool fails
* fix onchain txs, sending funds to wrong address and add a refund address for normal swaps beforehand
* add status to swaps, add sorting and data into listing
* add swap status checks, change urls to docker test setup, dynamic minimum and maximum limits
* add wallet name and id, to list and status information
* fix status_update for reverse_swaps
* chore: format with black
* use create_task instead of ensure_future
* add mempool and boltz urls depending on DEBUG .env
* fix onchain txs, sending funds to wrong address and add a refund address for normal swaps beforehand
* black formatting
* add some logging with loguru, and remove function duplication
* cleanup readme
* updates/suggestions from calle
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* remove unused comments
* Update API Endpoints
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* un-factor get_boltz_pairs
* added a explaination for the onchain tx
* remove unused template file
* rename api endpoints
* fix isort and prettier
* more verbose logging!!
* add boltz to mock_data.zip
* new mockdata
* remove comment
* better readme
* fix mempool urls
* change /refund /check /status to post requests
* first step in tests2
* add first tests
* change refund,check,status to post requests
* next try on tests
* overall code improvements
* just testing tests
* throw http exceptions in views_api
* require admincheck for refund,check,status and added fastapi documentation for those
* added more tests
* black
* many code improvements
* adding tests
* temp fix test
* fix race condition when pay_invoice fails
* test are working
* add boltz env variables
* add startup check, bugfixes, improvements
* improve on status checking
* remove check_invoice_status
* more fixes and tests
* testing testing testing
* make tests run again inside regtest
* fix bad error :O
* fix postgres boolean bug and add swap test
* Update README.md
Update README.md
Update README.md
Update README.md
* some mypy
* blacked
* the missing commit?
* fix api_docs readme link
* better refunding error catching
fix
* check swaps now also shows pending reverse swap, ui improvements, tooltips
* add backend check for boltz limits
fixup
* many improvements, startup check for swaps working, reverse needs more testing
* little last fixes
* remove unused logic
* fastapi documentation
fixup
* formatting and remove unused tests
* fix test
* fix swapstatus model
* Update lnbits/extensions/boltz/tasks.py
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* Update lnbits/extensions/boltz/views_api.py
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* balance check msg, format
* fix mypy data override
* fix swapstatus, remove can refund column
* Update lnbits/extensions/boltz/README.md
Co-authored-by: michael1011 <me@michael1011.at>
* empty lines
* fix error message when swap is not found
* remove preimage_hash from database
* fix api_docs html
fix api_docs html
* catch boltz network exceptions better
* formatting
* check for timeout on swap at get request
Co-authored-by: michael1011 <me@michael1011.at>
Co-authored-by: fusion44 <some.fusion@gmail.com>
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
2022-08-30 12:51:17 +02:00
|
|
|
description="""
|
|
|
|
This endpoint gets a list of reverse swaps.
|
|
|
|
""",
|
|
|
|
response_description="list of reverse swaps",
|
|
|
|
dependencies=[Depends(get_key_type)],
|
|
|
|
response_model=List[ReverseSubmarineSwap],
|
|
|
|
)
|
|
|
|
async def api_reverse_submarineswap(
|
boltz extension v2, recurring swaps (#981)
* add status to statusdialog
* first commits for boltz update
* formatting
* add latest boltz-clien package
* big refactor, depending on boltz_client package, clean up, mypy issues, not tested yet
* blacking, sorting and stuff
* remove unused req_wrap helper
* remove api docs from frontend
* bug: frontend boltz limits error
* clean up buttons
* update to boltz-client 0.0.8
* fix tests to poetry version 1.3.1
* update requirements
* formatting
* recurring swap works now, need more finetuning
* add exceptions for multiple auto swaps and swapping in with active auto swap
* black
* auto reverse swap actually works :)
* remove swap status dialogs
* update to boltz_client 0.0.9
* update to boltz-client 0.1.1, and fix startup
* update requirement.txt for boltz-client
* fixup columns in table, remove unused payment.extra, change deezy label
* remove balance check for auto swap out
* update boltzc-lient to 0.1.2, fix mypy issue inside boltz package
* nitpicks calle tasks.py
* calle nitpicks crud
* calle nitpicks crud
* refactor
* fix formatting
* circular import
* black :)
Co-authored-by: callebtc <93376500+callebtc@users.noreply.github.com>
2023-01-19 10:30:47 +01:00
|
|
|
g: WalletTypeInfo = Depends(get_key_type),
|
Boltz.exchange Extension (#922)
* initial commit and still draft, ready for review
* forgot to uncomment this line
* fee estimation and blockheight
* resolve conversation with michael, to use mempool websockets instead of boltz status event
* Update lnbits/extensions/boltz/boltz.py
Co-authored-by: michael1011 <me@michael1011.at>
* add status to swaps, add sorting and data into listing
* add swap status checks, change urls to docker test setup, dynamic minimum and maximum limits
* fix docker hosts for development
* add api endpoints to _api_docs
* add wallet name and id, to list and status information
* fix status_update for reverse_swaps
* chore: format with black
* more blackformatting and refactoring create_swap()
* fix variable bug
* check if swap is already refunded
* use create_task instead of ensure_future
* add mempool and boltz urls depending on DEBUG .env
* raise exception in mempool fails
* fix onchain txs, sending funds to wrong address and add a refund address for normal swaps beforehand
* add status to swaps, add sorting and data into listing
* add swap status checks, change urls to docker test setup, dynamic minimum and maximum limits
* add wallet name and id, to list and status information
* fix status_update for reverse_swaps
* chore: format with black
* use create_task instead of ensure_future
* add mempool and boltz urls depending on DEBUG .env
* fix onchain txs, sending funds to wrong address and add a refund address for normal swaps beforehand
* black formatting
* add some logging with loguru, and remove function duplication
* cleanup readme
* updates/suggestions from calle
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* remove unused comments
* Update API Endpoints
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* un-factor get_boltz_pairs
* added a explaination for the onchain tx
* remove unused template file
* rename api endpoints
* fix isort and prettier
* more verbose logging!!
* add boltz to mock_data.zip
* new mockdata
* remove comment
* better readme
* fix mempool urls
* change /refund /check /status to post requests
* first step in tests2
* add first tests
* change refund,check,status to post requests
* next try on tests
* overall code improvements
* just testing tests
* throw http exceptions in views_api
* require admincheck for refund,check,status and added fastapi documentation for those
* added more tests
* black
* many code improvements
* adding tests
* temp fix test
* fix race condition when pay_invoice fails
* test are working
* add boltz env variables
* add startup check, bugfixes, improvements
* improve on status checking
* remove check_invoice_status
* more fixes and tests
* testing testing testing
* make tests run again inside regtest
* fix bad error :O
* fix postgres boolean bug and add swap test
* Update README.md
Update README.md
Update README.md
Update README.md
* some mypy
* blacked
* the missing commit?
* fix api_docs readme link
* better refunding error catching
fix
* check swaps now also shows pending reverse swap, ui improvements, tooltips
* add backend check for boltz limits
fixup
* many improvements, startup check for swaps working, reverse needs more testing
* little last fixes
* remove unused logic
* fastapi documentation
fixup
* formatting and remove unused tests
* fix test
* fix swapstatus model
* Update lnbits/extensions/boltz/tasks.py
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* Update lnbits/extensions/boltz/views_api.py
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* balance check msg, format
* fix mypy data override
* fix swapstatus, remove can refund column
* Update lnbits/extensions/boltz/README.md
Co-authored-by: michael1011 <me@michael1011.at>
* empty lines
* fix error message when swap is not found
* remove preimage_hash from database
* fix api_docs html
fix api_docs html
* catch boltz network exceptions better
* formatting
* check for timeout on swap at get request
Co-authored-by: michael1011 <me@michael1011.at>
Co-authored-by: fusion44 <some.fusion@gmail.com>
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
2022-08-30 12:51:17 +02:00
|
|
|
all_wallets: bool = Query(False),
|
|
|
|
):
|
|
|
|
wallet_ids = [g.wallet.id]
|
|
|
|
if all_wallets:
|
boltz extension v2, recurring swaps (#981)
* add status to statusdialog
* first commits for boltz update
* formatting
* add latest boltz-clien package
* big refactor, depending on boltz_client package, clean up, mypy issues, not tested yet
* blacking, sorting and stuff
* remove unused req_wrap helper
* remove api docs from frontend
* bug: frontend boltz limits error
* clean up buttons
* update to boltz-client 0.0.8
* fix tests to poetry version 1.3.1
* update requirements
* formatting
* recurring swap works now, need more finetuning
* add exceptions for multiple auto swaps and swapping in with active auto swap
* black
* auto reverse swap actually works :)
* remove swap status dialogs
* update to boltz_client 0.0.9
* update to boltz-client 0.1.1, and fix startup
* update requirement.txt for boltz-client
* fixup columns in table, remove unused payment.extra, change deezy label
* remove balance check for auto swap out
* update boltzc-lient to 0.1.2, fix mypy issue inside boltz package
* nitpicks calle tasks.py
* calle nitpicks crud
* calle nitpicks crud
* refactor
* fix formatting
* circular import
* black :)
Co-authored-by: callebtc <93376500+callebtc@users.noreply.github.com>
2023-01-19 10:30:47 +01:00
|
|
|
user = await get_user(g.wallet.user)
|
|
|
|
wallet_ids = user.wallet_ids if user else []
|
|
|
|
return [swap for swap in await get_reverse_submarine_swaps(wallet_ids)]
|
Boltz.exchange Extension (#922)
* initial commit and still draft, ready for review
* forgot to uncomment this line
* fee estimation and blockheight
* resolve conversation with michael, to use mempool websockets instead of boltz status event
* Update lnbits/extensions/boltz/boltz.py
Co-authored-by: michael1011 <me@michael1011.at>
* add status to swaps, add sorting and data into listing
* add swap status checks, change urls to docker test setup, dynamic minimum and maximum limits
* fix docker hosts for development
* add api endpoints to _api_docs
* add wallet name and id, to list and status information
* fix status_update for reverse_swaps
* chore: format with black
* more blackformatting and refactoring create_swap()
* fix variable bug
* check if swap is already refunded
* use create_task instead of ensure_future
* add mempool and boltz urls depending on DEBUG .env
* raise exception in mempool fails
* fix onchain txs, sending funds to wrong address and add a refund address for normal swaps beforehand
* add status to swaps, add sorting and data into listing
* add swap status checks, change urls to docker test setup, dynamic minimum and maximum limits
* add wallet name and id, to list and status information
* fix status_update for reverse_swaps
* chore: format with black
* use create_task instead of ensure_future
* add mempool and boltz urls depending on DEBUG .env
* fix onchain txs, sending funds to wrong address and add a refund address for normal swaps beforehand
* black formatting
* add some logging with loguru, and remove function duplication
* cleanup readme
* updates/suggestions from calle
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* remove unused comments
* Update API Endpoints
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* un-factor get_boltz_pairs
* added a explaination for the onchain tx
* remove unused template file
* rename api endpoints
* fix isort and prettier
* more verbose logging!!
* add boltz to mock_data.zip
* new mockdata
* remove comment
* better readme
* fix mempool urls
* change /refund /check /status to post requests
* first step in tests2
* add first tests
* change refund,check,status to post requests
* next try on tests
* overall code improvements
* just testing tests
* throw http exceptions in views_api
* require admincheck for refund,check,status and added fastapi documentation for those
* added more tests
* black
* many code improvements
* adding tests
* temp fix test
* fix race condition when pay_invoice fails
* test are working
* add boltz env variables
* add startup check, bugfixes, improvements
* improve on status checking
* remove check_invoice_status
* more fixes and tests
* testing testing testing
* make tests run again inside regtest
* fix bad error :O
* fix postgres boolean bug and add swap test
* Update README.md
Update README.md
Update README.md
Update README.md
* some mypy
* blacked
* the missing commit?
* fix api_docs readme link
* better refunding error catching
fix
* check swaps now also shows pending reverse swap, ui improvements, tooltips
* add backend check for boltz limits
fixup
* many improvements, startup check for swaps working, reverse needs more testing
* little last fixes
* remove unused logic
* fastapi documentation
fixup
* formatting and remove unused tests
* fix test
* fix swapstatus model
* Update lnbits/extensions/boltz/tasks.py
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* Update lnbits/extensions/boltz/views_api.py
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* balance check msg, format
* fix mypy data override
* fix swapstatus, remove can refund column
* Update lnbits/extensions/boltz/README.md
Co-authored-by: michael1011 <me@michael1011.at>
* empty lines
* fix error message when swap is not found
* remove preimage_hash from database
* fix api_docs html
fix api_docs html
* catch boltz network exceptions better
* formatting
* check for timeout on swap at get request
Co-authored-by: michael1011 <me@michael1011.at>
Co-authored-by: fusion44 <some.fusion@gmail.com>
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
2022-08-30 12:51:17 +02:00
|
|
|
|
|
|
|
|
|
|
|
@boltz_ext.post(
|
|
|
|
"/api/v1/swap/reverse",
|
|
|
|
status_code=status.HTTP_201_CREATED,
|
|
|
|
name=f"boltz.post /swap/reverse",
|
|
|
|
summary="create a reverse submarine swap",
|
|
|
|
description="""
|
|
|
|
This endpoint creates a reverse submarine swap
|
|
|
|
""",
|
|
|
|
response_description="create reverse swap",
|
|
|
|
response_model=ReverseSubmarineSwap,
|
boltz extension v2, recurring swaps (#981)
* add status to statusdialog
* first commits for boltz update
* formatting
* add latest boltz-clien package
* big refactor, depending on boltz_client package, clean up, mypy issues, not tested yet
* blacking, sorting and stuff
* remove unused req_wrap helper
* remove api docs from frontend
* bug: frontend boltz limits error
* clean up buttons
* update to boltz-client 0.0.8
* fix tests to poetry version 1.3.1
* update requirements
* formatting
* recurring swap works now, need more finetuning
* add exceptions for multiple auto swaps and swapping in with active auto swap
* black
* auto reverse swap actually works :)
* remove swap status dialogs
* update to boltz_client 0.0.9
* update to boltz-client 0.1.1, and fix startup
* update requirement.txt for boltz-client
* fixup columns in table, remove unused payment.extra, change deezy label
* remove balance check for auto swap out
* update boltzc-lient to 0.1.2, fix mypy issue inside boltz package
* nitpicks calle tasks.py
* calle nitpicks crud
* calle nitpicks crud
* refactor
* fix formatting
* circular import
* black :)
Co-authored-by: callebtc <93376500+callebtc@users.noreply.github.com>
2023-01-19 10:30:47 +01:00
|
|
|
dependencies=[Depends(require_admin_key)],
|
Boltz.exchange Extension (#922)
* initial commit and still draft, ready for review
* forgot to uncomment this line
* fee estimation and blockheight
* resolve conversation with michael, to use mempool websockets instead of boltz status event
* Update lnbits/extensions/boltz/boltz.py
Co-authored-by: michael1011 <me@michael1011.at>
* add status to swaps, add sorting and data into listing
* add swap status checks, change urls to docker test setup, dynamic minimum and maximum limits
* fix docker hosts for development
* add api endpoints to _api_docs
* add wallet name and id, to list and status information
* fix status_update for reverse_swaps
* chore: format with black
* more blackformatting and refactoring create_swap()
* fix variable bug
* check if swap is already refunded
* use create_task instead of ensure_future
* add mempool and boltz urls depending on DEBUG .env
* raise exception in mempool fails
* fix onchain txs, sending funds to wrong address and add a refund address for normal swaps beforehand
* add status to swaps, add sorting and data into listing
* add swap status checks, change urls to docker test setup, dynamic minimum and maximum limits
* add wallet name and id, to list and status information
* fix status_update for reverse_swaps
* chore: format with black
* use create_task instead of ensure_future
* add mempool and boltz urls depending on DEBUG .env
* fix onchain txs, sending funds to wrong address and add a refund address for normal swaps beforehand
* black formatting
* add some logging with loguru, and remove function duplication
* cleanup readme
* updates/suggestions from calle
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* remove unused comments
* Update API Endpoints
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* un-factor get_boltz_pairs
* added a explaination for the onchain tx
* remove unused template file
* rename api endpoints
* fix isort and prettier
* more verbose logging!!
* add boltz to mock_data.zip
* new mockdata
* remove comment
* better readme
* fix mempool urls
* change /refund /check /status to post requests
* first step in tests2
* add first tests
* change refund,check,status to post requests
* next try on tests
* overall code improvements
* just testing tests
* throw http exceptions in views_api
* require admincheck for refund,check,status and added fastapi documentation for those
* added more tests
* black
* many code improvements
* adding tests
* temp fix test
* fix race condition when pay_invoice fails
* test are working
* add boltz env variables
* add startup check, bugfixes, improvements
* improve on status checking
* remove check_invoice_status
* more fixes and tests
* testing testing testing
* make tests run again inside regtest
* fix bad error :O
* fix postgres boolean bug and add swap test
* Update README.md
Update README.md
Update README.md
Update README.md
* some mypy
* blacked
* the missing commit?
* fix api_docs readme link
* better refunding error catching
fix
* check swaps now also shows pending reverse swap, ui improvements, tooltips
* add backend check for boltz limits
fixup
* many improvements, startup check for swaps working, reverse needs more testing
* little last fixes
* remove unused logic
* fastapi documentation
fixup
* formatting and remove unused tests
* fix test
* fix swapstatus model
* Update lnbits/extensions/boltz/tasks.py
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* Update lnbits/extensions/boltz/views_api.py
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* balance check msg, format
* fix mypy data override
* fix swapstatus, remove can refund column
* Update lnbits/extensions/boltz/README.md
Co-authored-by: michael1011 <me@michael1011.at>
* empty lines
* fix error message when swap is not found
* remove preimage_hash from database
* fix api_docs html
fix api_docs html
* catch boltz network exceptions better
* formatting
* check for timeout on swap at get request
Co-authored-by: michael1011 <me@michael1011.at>
Co-authored-by: fusion44 <some.fusion@gmail.com>
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
2022-08-30 12:51:17 +02:00
|
|
|
responses={
|
|
|
|
405: {"description": "not allowed method, insufficient balance"},
|
|
|
|
500: {"description": "boltz error"},
|
|
|
|
},
|
|
|
|
)
|
|
|
|
async def api_reverse_submarineswap_create(
|
|
|
|
data: CreateReverseSubmarineSwap,
|
boltz extension v2, recurring swaps (#981)
* add status to statusdialog
* first commits for boltz update
* formatting
* add latest boltz-clien package
* big refactor, depending on boltz_client package, clean up, mypy issues, not tested yet
* blacking, sorting and stuff
* remove unused req_wrap helper
* remove api docs from frontend
* bug: frontend boltz limits error
* clean up buttons
* update to boltz-client 0.0.8
* fix tests to poetry version 1.3.1
* update requirements
* formatting
* recurring swap works now, need more finetuning
* add exceptions for multiple auto swaps and swapping in with active auto swap
* black
* auto reverse swap actually works :)
* remove swap status dialogs
* update to boltz_client 0.0.9
* update to boltz-client 0.1.1, and fix startup
* update requirement.txt for boltz-client
* fixup columns in table, remove unused payment.extra, change deezy label
* remove balance check for auto swap out
* update boltzc-lient to 0.1.2, fix mypy issue inside boltz package
* nitpicks calle tasks.py
* calle nitpicks crud
* calle nitpicks crud
* refactor
* fix formatting
* circular import
* black :)
Co-authored-by: callebtc <93376500+callebtc@users.noreply.github.com>
2023-01-19 10:30:47 +01:00
|
|
|
) -> ReverseSubmarineSwap:
|
Boltz.exchange Extension (#922)
* initial commit and still draft, ready for review
* forgot to uncomment this line
* fee estimation and blockheight
* resolve conversation with michael, to use mempool websockets instead of boltz status event
* Update lnbits/extensions/boltz/boltz.py
Co-authored-by: michael1011 <me@michael1011.at>
* add status to swaps, add sorting and data into listing
* add swap status checks, change urls to docker test setup, dynamic minimum and maximum limits
* fix docker hosts for development
* add api endpoints to _api_docs
* add wallet name and id, to list and status information
* fix status_update for reverse_swaps
* chore: format with black
* more blackformatting and refactoring create_swap()
* fix variable bug
* check if swap is already refunded
* use create_task instead of ensure_future
* add mempool and boltz urls depending on DEBUG .env
* raise exception in mempool fails
* fix onchain txs, sending funds to wrong address and add a refund address for normal swaps beforehand
* add status to swaps, add sorting and data into listing
* add swap status checks, change urls to docker test setup, dynamic minimum and maximum limits
* add wallet name and id, to list and status information
* fix status_update for reverse_swaps
* chore: format with black
* use create_task instead of ensure_future
* add mempool and boltz urls depending on DEBUG .env
* fix onchain txs, sending funds to wrong address and add a refund address for normal swaps beforehand
* black formatting
* add some logging with loguru, and remove function duplication
* cleanup readme
* updates/suggestions from calle
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* remove unused comments
* Update API Endpoints
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* un-factor get_boltz_pairs
* added a explaination for the onchain tx
* remove unused template file
* rename api endpoints
* fix isort and prettier
* more verbose logging!!
* add boltz to mock_data.zip
* new mockdata
* remove comment
* better readme
* fix mempool urls
* change /refund /check /status to post requests
* first step in tests2
* add first tests
* change refund,check,status to post requests
* next try on tests
* overall code improvements
* just testing tests
* throw http exceptions in views_api
* require admincheck for refund,check,status and added fastapi documentation for those
* added more tests
* black
* many code improvements
* adding tests
* temp fix test
* fix race condition when pay_invoice fails
* test are working
* add boltz env variables
* add startup check, bugfixes, improvements
* improve on status checking
* remove check_invoice_status
* more fixes and tests
* testing testing testing
* make tests run again inside regtest
* fix bad error :O
* fix postgres boolean bug and add swap test
* Update README.md
Update README.md
Update README.md
Update README.md
* some mypy
* blacked
* the missing commit?
* fix api_docs readme link
* better refunding error catching
fix
* check swaps now also shows pending reverse swap, ui improvements, tooltips
* add backend check for boltz limits
fixup
* many improvements, startup check for swaps working, reverse needs more testing
* little last fixes
* remove unused logic
* fastapi documentation
fixup
* formatting and remove unused tests
* fix test
* fix swapstatus model
* Update lnbits/extensions/boltz/tasks.py
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* Update lnbits/extensions/boltz/views_api.py
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* balance check msg, format
* fix mypy data override
* fix swapstatus, remove can refund column
* Update lnbits/extensions/boltz/README.md
Co-authored-by: michael1011 <me@michael1011.at>
* empty lines
* fix error message when swap is not found
* remove preimage_hash from database
* fix api_docs html
fix api_docs html
* catch boltz network exceptions better
* formatting
* check for timeout on swap at get request
Co-authored-by: michael1011 <me@michael1011.at>
Co-authored-by: fusion44 <some.fusion@gmail.com>
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
2022-08-30 12:51:17 +02:00
|
|
|
|
|
|
|
if not await check_balance(data):
|
|
|
|
raise HTTPException(
|
|
|
|
status_code=HTTPStatus.METHOD_NOT_ALLOWED, detail="Insufficient balance."
|
|
|
|
)
|
boltz extension v2, recurring swaps (#981)
* add status to statusdialog
* first commits for boltz update
* formatting
* add latest boltz-clien package
* big refactor, depending on boltz_client package, clean up, mypy issues, not tested yet
* blacking, sorting and stuff
* remove unused req_wrap helper
* remove api docs from frontend
* bug: frontend boltz limits error
* clean up buttons
* update to boltz-client 0.0.8
* fix tests to poetry version 1.3.1
* update requirements
* formatting
* recurring swap works now, need more finetuning
* add exceptions for multiple auto swaps and swapping in with active auto swap
* black
* auto reverse swap actually works :)
* remove swap status dialogs
* update to boltz_client 0.0.9
* update to boltz-client 0.1.1, and fix startup
* update requirement.txt for boltz-client
* fixup columns in table, remove unused payment.extra, change deezy label
* remove balance check for auto swap out
* update boltzc-lient to 0.1.2, fix mypy issue inside boltz package
* nitpicks calle tasks.py
* calle nitpicks crud
* calle nitpicks crud
* refactor
* fix formatting
* circular import
* black :)
Co-authored-by: callebtc <93376500+callebtc@users.noreply.github.com>
2023-01-19 10:30:47 +01:00
|
|
|
client = create_boltz_client()
|
|
|
|
claim_privkey_wif, preimage_hex, swap = client.create_reverse_swap(
|
|
|
|
amount=data.amount
|
|
|
|
)
|
|
|
|
new_swap = await create_reverse_submarine_swap(
|
|
|
|
data, claim_privkey_wif, preimage_hex, swap
|
|
|
|
)
|
|
|
|
await execute_reverse_swap(client, new_swap)
|
|
|
|
return new_swap
|
Boltz.exchange Extension (#922)
* initial commit and still draft, ready for review
* forgot to uncomment this line
* fee estimation and blockheight
* resolve conversation with michael, to use mempool websockets instead of boltz status event
* Update lnbits/extensions/boltz/boltz.py
Co-authored-by: michael1011 <me@michael1011.at>
* add status to swaps, add sorting and data into listing
* add swap status checks, change urls to docker test setup, dynamic minimum and maximum limits
* fix docker hosts for development
* add api endpoints to _api_docs
* add wallet name and id, to list and status information
* fix status_update for reverse_swaps
* chore: format with black
* more blackformatting and refactoring create_swap()
* fix variable bug
* check if swap is already refunded
* use create_task instead of ensure_future
* add mempool and boltz urls depending on DEBUG .env
* raise exception in mempool fails
* fix onchain txs, sending funds to wrong address and add a refund address for normal swaps beforehand
* add status to swaps, add sorting and data into listing
* add swap status checks, change urls to docker test setup, dynamic minimum and maximum limits
* add wallet name and id, to list and status information
* fix status_update for reverse_swaps
* chore: format with black
* use create_task instead of ensure_future
* add mempool and boltz urls depending on DEBUG .env
* fix onchain txs, sending funds to wrong address and add a refund address for normal swaps beforehand
* black formatting
* add some logging with loguru, and remove function duplication
* cleanup readme
* updates/suggestions from calle
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* remove unused comments
* Update API Endpoints
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* un-factor get_boltz_pairs
* added a explaination for the onchain tx
* remove unused template file
* rename api endpoints
* fix isort and prettier
* more verbose logging!!
* add boltz to mock_data.zip
* new mockdata
* remove comment
* better readme
* fix mempool urls
* change /refund /check /status to post requests
* first step in tests2
* add first tests
* change refund,check,status to post requests
* next try on tests
* overall code improvements
* just testing tests
* throw http exceptions in views_api
* require admincheck for refund,check,status and added fastapi documentation for those
* added more tests
* black
* many code improvements
* adding tests
* temp fix test
* fix race condition when pay_invoice fails
* test are working
* add boltz env variables
* add startup check, bugfixes, improvements
* improve on status checking
* remove check_invoice_status
* more fixes and tests
* testing testing testing
* make tests run again inside regtest
* fix bad error :O
* fix postgres boolean bug and add swap test
* Update README.md
Update README.md
Update README.md
Update README.md
* some mypy
* blacked
* the missing commit?
* fix api_docs readme link
* better refunding error catching
fix
* check swaps now also shows pending reverse swap, ui improvements, tooltips
* add backend check for boltz limits
fixup
* many improvements, startup check for swaps working, reverse needs more testing
* little last fixes
* remove unused logic
* fastapi documentation
fixup
* formatting and remove unused tests
* fix test
* fix swapstatus model
* Update lnbits/extensions/boltz/tasks.py
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* Update lnbits/extensions/boltz/views_api.py
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* balance check msg, format
* fix mypy data override
* fix swapstatus, remove can refund column
* Update lnbits/extensions/boltz/README.md
Co-authored-by: michael1011 <me@michael1011.at>
* empty lines
* fix error message when swap is not found
* remove preimage_hash from database
* fix api_docs html
fix api_docs html
* catch boltz network exceptions better
* formatting
* check for timeout on swap at get request
Co-authored-by: michael1011 <me@michael1011.at>
Co-authored-by: fusion44 <some.fusion@gmail.com>
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
2022-08-30 12:51:17 +02:00
|
|
|
|
boltz extension v2, recurring swaps (#981)
* add status to statusdialog
* first commits for boltz update
* formatting
* add latest boltz-clien package
* big refactor, depending on boltz_client package, clean up, mypy issues, not tested yet
* blacking, sorting and stuff
* remove unused req_wrap helper
* remove api docs from frontend
* bug: frontend boltz limits error
* clean up buttons
* update to boltz-client 0.0.8
* fix tests to poetry version 1.3.1
* update requirements
* formatting
* recurring swap works now, need more finetuning
* add exceptions for multiple auto swaps and swapping in with active auto swap
* black
* auto reverse swap actually works :)
* remove swap status dialogs
* update to boltz_client 0.0.9
* update to boltz-client 0.1.1, and fix startup
* update requirement.txt for boltz-client
* fixup columns in table, remove unused payment.extra, change deezy label
* remove balance check for auto swap out
* update boltzc-lient to 0.1.2, fix mypy issue inside boltz package
* nitpicks calle tasks.py
* calle nitpicks crud
* calle nitpicks crud
* refactor
* fix formatting
* circular import
* black :)
Co-authored-by: callebtc <93376500+callebtc@users.noreply.github.com>
2023-01-19 10:30:47 +01:00
|
|
|
|
|
|
|
@boltz_ext.get(
|
|
|
|
"/api/v1/swap/reverse/auto",
|
|
|
|
name=f"boltz.get /swap/reverse/auto",
|
|
|
|
summary="get a list of auto reverse swaps",
|
|
|
|
description="""
|
|
|
|
This endpoint gets a list of auto reverse swaps.
|
|
|
|
""",
|
|
|
|
response_description="list of auto reverse swaps",
|
|
|
|
dependencies=[Depends(get_key_type)],
|
|
|
|
response_model=List[AutoReverseSubmarineSwap],
|
|
|
|
)
|
|
|
|
async def api_auto_reverse_submarineswap(
|
|
|
|
g: WalletTypeInfo = Depends(get_key_type),
|
|
|
|
all_wallets: bool = Query(False),
|
|
|
|
):
|
|
|
|
wallet_ids = [g.wallet.id]
|
|
|
|
if all_wallets:
|
|
|
|
user = await get_user(g.wallet.user)
|
|
|
|
wallet_ids = user.wallet_ids if user else []
|
|
|
|
return [swap.dict() for swap in await get_auto_reverse_submarine_swaps(wallet_ids)]
|
|
|
|
|
|
|
|
|
|
|
|
@boltz_ext.post(
|
|
|
|
"/api/v1/swap/reverse/auto",
|
|
|
|
status_code=status.HTTP_201_CREATED,
|
|
|
|
name=f"boltz.post /swap/reverse/auto",
|
|
|
|
summary="create a auto reverse submarine swap",
|
|
|
|
description="""
|
|
|
|
This endpoint creates a auto reverse submarine swap
|
|
|
|
""",
|
|
|
|
response_description="create auto reverse swap",
|
|
|
|
response_model=AutoReverseSubmarineSwap,
|
|
|
|
dependencies=[Depends(require_admin_key)],
|
|
|
|
responses={
|
|
|
|
405: {
|
|
|
|
"description": "auto reverse swap is active, only 1 swap per wallet possible."
|
|
|
|
},
|
|
|
|
},
|
|
|
|
)
|
|
|
|
async def api_auto_reverse_submarineswap_create(data: CreateAutoReverseSubmarineSwap):
|
|
|
|
|
|
|
|
auto_swap = await get_auto_reverse_submarine_swap_by_wallet(data.wallet)
|
|
|
|
if auto_swap:
|
Boltz.exchange Extension (#922)
* initial commit and still draft, ready for review
* forgot to uncomment this line
* fee estimation and blockheight
* resolve conversation with michael, to use mempool websockets instead of boltz status event
* Update lnbits/extensions/boltz/boltz.py
Co-authored-by: michael1011 <me@michael1011.at>
* add status to swaps, add sorting and data into listing
* add swap status checks, change urls to docker test setup, dynamic minimum and maximum limits
* fix docker hosts for development
* add api endpoints to _api_docs
* add wallet name and id, to list and status information
* fix status_update for reverse_swaps
* chore: format with black
* more blackformatting and refactoring create_swap()
* fix variable bug
* check if swap is already refunded
* use create_task instead of ensure_future
* add mempool and boltz urls depending on DEBUG .env
* raise exception in mempool fails
* fix onchain txs, sending funds to wrong address and add a refund address for normal swaps beforehand
* add status to swaps, add sorting and data into listing
* add swap status checks, change urls to docker test setup, dynamic minimum and maximum limits
* add wallet name and id, to list and status information
* fix status_update for reverse_swaps
* chore: format with black
* use create_task instead of ensure_future
* add mempool and boltz urls depending on DEBUG .env
* fix onchain txs, sending funds to wrong address and add a refund address for normal swaps beforehand
* black formatting
* add some logging with loguru, and remove function duplication
* cleanup readme
* updates/suggestions from calle
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* remove unused comments
* Update API Endpoints
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* un-factor get_boltz_pairs
* added a explaination for the onchain tx
* remove unused template file
* rename api endpoints
* fix isort and prettier
* more verbose logging!!
* add boltz to mock_data.zip
* new mockdata
* remove comment
* better readme
* fix mempool urls
* change /refund /check /status to post requests
* first step in tests2
* add first tests
* change refund,check,status to post requests
* next try on tests
* overall code improvements
* just testing tests
* throw http exceptions in views_api
* require admincheck for refund,check,status and added fastapi documentation for those
* added more tests
* black
* many code improvements
* adding tests
* temp fix test
* fix race condition when pay_invoice fails
* test are working
* add boltz env variables
* add startup check, bugfixes, improvements
* improve on status checking
* remove check_invoice_status
* more fixes and tests
* testing testing testing
* make tests run again inside regtest
* fix bad error :O
* fix postgres boolean bug and add swap test
* Update README.md
Update README.md
Update README.md
Update README.md
* some mypy
* blacked
* the missing commit?
* fix api_docs readme link
* better refunding error catching
fix
* check swaps now also shows pending reverse swap, ui improvements, tooltips
* add backend check for boltz limits
fixup
* many improvements, startup check for swaps working, reverse needs more testing
* little last fixes
* remove unused logic
* fastapi documentation
fixup
* formatting and remove unused tests
* fix test
* fix swapstatus model
* Update lnbits/extensions/boltz/tasks.py
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* Update lnbits/extensions/boltz/views_api.py
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* balance check msg, format
* fix mypy data override
* fix swapstatus, remove can refund column
* Update lnbits/extensions/boltz/README.md
Co-authored-by: michael1011 <me@michael1011.at>
* empty lines
* fix error message when swap is not found
* remove preimage_hash from database
* fix api_docs html
fix api_docs html
* catch boltz network exceptions better
* formatting
* check for timeout on swap at get request
Co-authored-by: michael1011 <me@michael1011.at>
Co-authored-by: fusion44 <some.fusion@gmail.com>
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
2022-08-30 12:51:17 +02:00
|
|
|
raise HTTPException(
|
boltz extension v2, recurring swaps (#981)
* add status to statusdialog
* first commits for boltz update
* formatting
* add latest boltz-clien package
* big refactor, depending on boltz_client package, clean up, mypy issues, not tested yet
* blacking, sorting and stuff
* remove unused req_wrap helper
* remove api docs from frontend
* bug: frontend boltz limits error
* clean up buttons
* update to boltz-client 0.0.8
* fix tests to poetry version 1.3.1
* update requirements
* formatting
* recurring swap works now, need more finetuning
* add exceptions for multiple auto swaps and swapping in with active auto swap
* black
* auto reverse swap actually works :)
* remove swap status dialogs
* update to boltz_client 0.0.9
* update to boltz-client 0.1.1, and fix startup
* update requirement.txt for boltz-client
* fixup columns in table, remove unused payment.extra, change deezy label
* remove balance check for auto swap out
* update boltzc-lient to 0.1.2, fix mypy issue inside boltz package
* nitpicks calle tasks.py
* calle nitpicks crud
* calle nitpicks crud
* refactor
* fix formatting
* circular import
* black :)
Co-authored-by: callebtc <93376500+callebtc@users.noreply.github.com>
2023-01-19 10:30:47 +01:00
|
|
|
status_code=HTTPStatus.METHOD_NOT_ALLOWED,
|
|
|
|
detail="auto reverse swap is active, only 1 swap per wallet possible.",
|
Boltz.exchange Extension (#922)
* initial commit and still draft, ready for review
* forgot to uncomment this line
* fee estimation and blockheight
* resolve conversation with michael, to use mempool websockets instead of boltz status event
* Update lnbits/extensions/boltz/boltz.py
Co-authored-by: michael1011 <me@michael1011.at>
* add status to swaps, add sorting and data into listing
* add swap status checks, change urls to docker test setup, dynamic minimum and maximum limits
* fix docker hosts for development
* add api endpoints to _api_docs
* add wallet name and id, to list and status information
* fix status_update for reverse_swaps
* chore: format with black
* more blackformatting and refactoring create_swap()
* fix variable bug
* check if swap is already refunded
* use create_task instead of ensure_future
* add mempool and boltz urls depending on DEBUG .env
* raise exception in mempool fails
* fix onchain txs, sending funds to wrong address and add a refund address for normal swaps beforehand
* add status to swaps, add sorting and data into listing
* add swap status checks, change urls to docker test setup, dynamic minimum and maximum limits
* add wallet name and id, to list and status information
* fix status_update for reverse_swaps
* chore: format with black
* use create_task instead of ensure_future
* add mempool and boltz urls depending on DEBUG .env
* fix onchain txs, sending funds to wrong address and add a refund address for normal swaps beforehand
* black formatting
* add some logging with loguru, and remove function duplication
* cleanup readme
* updates/suggestions from calle
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* remove unused comments
* Update API Endpoints
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* un-factor get_boltz_pairs
* added a explaination for the onchain tx
* remove unused template file
* rename api endpoints
* fix isort and prettier
* more verbose logging!!
* add boltz to mock_data.zip
* new mockdata
* remove comment
* better readme
* fix mempool urls
* change /refund /check /status to post requests
* first step in tests2
* add first tests
* change refund,check,status to post requests
* next try on tests
* overall code improvements
* just testing tests
* throw http exceptions in views_api
* require admincheck for refund,check,status and added fastapi documentation for those
* added more tests
* black
* many code improvements
* adding tests
* temp fix test
* fix race condition when pay_invoice fails
* test are working
* add boltz env variables
* add startup check, bugfixes, improvements
* improve on status checking
* remove check_invoice_status
* more fixes and tests
* testing testing testing
* make tests run again inside regtest
* fix bad error :O
* fix postgres boolean bug and add swap test
* Update README.md
Update README.md
Update README.md
Update README.md
* some mypy
* blacked
* the missing commit?
* fix api_docs readme link
* better refunding error catching
fix
* check swaps now also shows pending reverse swap, ui improvements, tooltips
* add backend check for boltz limits
fixup
* many improvements, startup check for swaps working, reverse needs more testing
* little last fixes
* remove unused logic
* fastapi documentation
fixup
* formatting and remove unused tests
* fix test
* fix swapstatus model
* Update lnbits/extensions/boltz/tasks.py
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* Update lnbits/extensions/boltz/views_api.py
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* balance check msg, format
* fix mypy data override
* fix swapstatus, remove can refund column
* Update lnbits/extensions/boltz/README.md
Co-authored-by: michael1011 <me@michael1011.at>
* empty lines
* fix error message when swap is not found
* remove preimage_hash from database
* fix api_docs html
fix api_docs html
* catch boltz network exceptions better
* formatting
* check for timeout on swap at get request
Co-authored-by: michael1011 <me@michael1011.at>
Co-authored-by: fusion44 <some.fusion@gmail.com>
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
2022-08-30 12:51:17 +02:00
|
|
|
)
|
|
|
|
|
boltz extension v2, recurring swaps (#981)
* add status to statusdialog
* first commits for boltz update
* formatting
* add latest boltz-clien package
* big refactor, depending on boltz_client package, clean up, mypy issues, not tested yet
* blacking, sorting and stuff
* remove unused req_wrap helper
* remove api docs from frontend
* bug: frontend boltz limits error
* clean up buttons
* update to boltz-client 0.0.8
* fix tests to poetry version 1.3.1
* update requirements
* formatting
* recurring swap works now, need more finetuning
* add exceptions for multiple auto swaps and swapping in with active auto swap
* black
* auto reverse swap actually works :)
* remove swap status dialogs
* update to boltz_client 0.0.9
* update to boltz-client 0.1.1, and fix startup
* update requirement.txt for boltz-client
* fixup columns in table, remove unused payment.extra, change deezy label
* remove balance check for auto swap out
* update boltzc-lient to 0.1.2, fix mypy issue inside boltz package
* nitpicks calle tasks.py
* calle nitpicks crud
* calle nitpicks crud
* refactor
* fix formatting
* circular import
* black :)
Co-authored-by: callebtc <93376500+callebtc@users.noreply.github.com>
2023-01-19 10:30:47 +01:00
|
|
|
swap = await create_auto_reverse_submarine_swap(data)
|
|
|
|
return swap.dict() if swap else None
|
|
|
|
|
|
|
|
|
|
|
|
@boltz_ext.delete(
|
|
|
|
"/api/v1/swap/reverse/auto/{swap_id}",
|
|
|
|
name=f"boltz.delete /swap/reverse/auto",
|
|
|
|
summary="delete a auto reverse submarine swap",
|
|
|
|
description="""
|
|
|
|
This endpoint deletes a auto reverse submarine swap
|
|
|
|
""",
|
|
|
|
response_description="delete auto reverse swap",
|
|
|
|
dependencies=[Depends(require_admin_key)],
|
|
|
|
)
|
|
|
|
async def api_auto_reverse_submarineswap_delete(swap_id: str):
|
|
|
|
await delete_auto_reverse_submarine_swap(swap_id)
|
|
|
|
return "OK"
|
Boltz.exchange Extension (#922)
* initial commit and still draft, ready for review
* forgot to uncomment this line
* fee estimation and blockheight
* resolve conversation with michael, to use mempool websockets instead of boltz status event
* Update lnbits/extensions/boltz/boltz.py
Co-authored-by: michael1011 <me@michael1011.at>
* add status to swaps, add sorting and data into listing
* add swap status checks, change urls to docker test setup, dynamic minimum and maximum limits
* fix docker hosts for development
* add api endpoints to _api_docs
* add wallet name and id, to list and status information
* fix status_update for reverse_swaps
* chore: format with black
* more blackformatting and refactoring create_swap()
* fix variable bug
* check if swap is already refunded
* use create_task instead of ensure_future
* add mempool and boltz urls depending on DEBUG .env
* raise exception in mempool fails
* fix onchain txs, sending funds to wrong address and add a refund address for normal swaps beforehand
* add status to swaps, add sorting and data into listing
* add swap status checks, change urls to docker test setup, dynamic minimum and maximum limits
* add wallet name and id, to list and status information
* fix status_update for reverse_swaps
* chore: format with black
* use create_task instead of ensure_future
* add mempool and boltz urls depending on DEBUG .env
* fix onchain txs, sending funds to wrong address and add a refund address for normal swaps beforehand
* black formatting
* add some logging with loguru, and remove function duplication
* cleanup readme
* updates/suggestions from calle
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* remove unused comments
* Update API Endpoints
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* un-factor get_boltz_pairs
* added a explaination for the onchain tx
* remove unused template file
* rename api endpoints
* fix isort and prettier
* more verbose logging!!
* add boltz to mock_data.zip
* new mockdata
* remove comment
* better readme
* fix mempool urls
* change /refund /check /status to post requests
* first step in tests2
* add first tests
* change refund,check,status to post requests
* next try on tests
* overall code improvements
* just testing tests
* throw http exceptions in views_api
* require admincheck for refund,check,status and added fastapi documentation for those
* added more tests
* black
* many code improvements
* adding tests
* temp fix test
* fix race condition when pay_invoice fails
* test are working
* add boltz env variables
* add startup check, bugfixes, improvements
* improve on status checking
* remove check_invoice_status
* more fixes and tests
* testing testing testing
* make tests run again inside regtest
* fix bad error :O
* fix postgres boolean bug and add swap test
* Update README.md
Update README.md
Update README.md
Update README.md
* some mypy
* blacked
* the missing commit?
* fix api_docs readme link
* better refunding error catching
fix
* check swaps now also shows pending reverse swap, ui improvements, tooltips
* add backend check for boltz limits
fixup
* many improvements, startup check for swaps working, reverse needs more testing
* little last fixes
* remove unused logic
* fastapi documentation
fixup
* formatting and remove unused tests
* fix test
* fix swapstatus model
* Update lnbits/extensions/boltz/tasks.py
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* Update lnbits/extensions/boltz/views_api.py
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* balance check msg, format
* fix mypy data override
* fix swapstatus, remove can refund column
* Update lnbits/extensions/boltz/README.md
Co-authored-by: michael1011 <me@michael1011.at>
* empty lines
* fix error message when swap is not found
* remove preimage_hash from database
* fix api_docs html
fix api_docs html
* catch boltz network exceptions better
* formatting
* check for timeout on swap at get request
Co-authored-by: michael1011 <me@michael1011.at>
Co-authored-by: fusion44 <some.fusion@gmail.com>
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
2022-08-30 12:51:17 +02:00
|
|
|
|
|
|
|
|
|
|
|
@boltz_ext.post(
|
|
|
|
"/api/v1/swap/status",
|
|
|
|
name=f"boltz.swap_status",
|
|
|
|
summary="shows the status of a swap",
|
|
|
|
description="""
|
|
|
|
This endpoint attempts to get the status of the swap.
|
|
|
|
""",
|
|
|
|
response_description="status of swap json",
|
boltz extension v2, recurring swaps (#981)
* add status to statusdialog
* first commits for boltz update
* formatting
* add latest boltz-clien package
* big refactor, depending on boltz_client package, clean up, mypy issues, not tested yet
* blacking, sorting and stuff
* remove unused req_wrap helper
* remove api docs from frontend
* bug: frontend boltz limits error
* clean up buttons
* update to boltz-client 0.0.8
* fix tests to poetry version 1.3.1
* update requirements
* formatting
* recurring swap works now, need more finetuning
* add exceptions for multiple auto swaps and swapping in with active auto swap
* black
* auto reverse swap actually works :)
* remove swap status dialogs
* update to boltz_client 0.0.9
* update to boltz-client 0.1.1, and fix startup
* update requirement.txt for boltz-client
* fixup columns in table, remove unused payment.extra, change deezy label
* remove balance check for auto swap out
* update boltzc-lient to 0.1.2, fix mypy issue inside boltz package
* nitpicks calle tasks.py
* calle nitpicks crud
* calle nitpicks crud
* refactor
* fix formatting
* circular import
* black :)
Co-authored-by: callebtc <93376500+callebtc@users.noreply.github.com>
2023-01-19 10:30:47 +01:00
|
|
|
dependencies=[Depends(require_admin_key)],
|
Boltz.exchange Extension (#922)
* initial commit and still draft, ready for review
* forgot to uncomment this line
* fee estimation and blockheight
* resolve conversation with michael, to use mempool websockets instead of boltz status event
* Update lnbits/extensions/boltz/boltz.py
Co-authored-by: michael1011 <me@michael1011.at>
* add status to swaps, add sorting and data into listing
* add swap status checks, change urls to docker test setup, dynamic minimum and maximum limits
* fix docker hosts for development
* add api endpoints to _api_docs
* add wallet name and id, to list and status information
* fix status_update for reverse_swaps
* chore: format with black
* more blackformatting and refactoring create_swap()
* fix variable bug
* check if swap is already refunded
* use create_task instead of ensure_future
* add mempool and boltz urls depending on DEBUG .env
* raise exception in mempool fails
* fix onchain txs, sending funds to wrong address and add a refund address for normal swaps beforehand
* add status to swaps, add sorting and data into listing
* add swap status checks, change urls to docker test setup, dynamic minimum and maximum limits
* add wallet name and id, to list and status information
* fix status_update for reverse_swaps
* chore: format with black
* use create_task instead of ensure_future
* add mempool and boltz urls depending on DEBUG .env
* fix onchain txs, sending funds to wrong address and add a refund address for normal swaps beforehand
* black formatting
* add some logging with loguru, and remove function duplication
* cleanup readme
* updates/suggestions from calle
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* remove unused comments
* Update API Endpoints
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* un-factor get_boltz_pairs
* added a explaination for the onchain tx
* remove unused template file
* rename api endpoints
* fix isort and prettier
* more verbose logging!!
* add boltz to mock_data.zip
* new mockdata
* remove comment
* better readme
* fix mempool urls
* change /refund /check /status to post requests
* first step in tests2
* add first tests
* change refund,check,status to post requests
* next try on tests
* overall code improvements
* just testing tests
* throw http exceptions in views_api
* require admincheck for refund,check,status and added fastapi documentation for those
* added more tests
* black
* many code improvements
* adding tests
* temp fix test
* fix race condition when pay_invoice fails
* test are working
* add boltz env variables
* add startup check, bugfixes, improvements
* improve on status checking
* remove check_invoice_status
* more fixes and tests
* testing testing testing
* make tests run again inside regtest
* fix bad error :O
* fix postgres boolean bug and add swap test
* Update README.md
Update README.md
Update README.md
Update README.md
* some mypy
* blacked
* the missing commit?
* fix api_docs readme link
* better refunding error catching
fix
* check swaps now also shows pending reverse swap, ui improvements, tooltips
* add backend check for boltz limits
fixup
* many improvements, startup check for swaps working, reverse needs more testing
* little last fixes
* remove unused logic
* fastapi documentation
fixup
* formatting and remove unused tests
* fix test
* fix swapstatus model
* Update lnbits/extensions/boltz/tasks.py
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* Update lnbits/extensions/boltz/views_api.py
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* balance check msg, format
* fix mypy data override
* fix swapstatus, remove can refund column
* Update lnbits/extensions/boltz/README.md
Co-authored-by: michael1011 <me@michael1011.at>
* empty lines
* fix error message when swap is not found
* remove preimage_hash from database
* fix api_docs html
fix api_docs html
* catch boltz network exceptions better
* formatting
* check for timeout on swap at get request
Co-authored-by: michael1011 <me@michael1011.at>
Co-authored-by: fusion44 <some.fusion@gmail.com>
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
2022-08-30 12:51:17 +02:00
|
|
|
responses={
|
|
|
|
404: {"description": "when swap_id is not found"},
|
|
|
|
},
|
|
|
|
)
|
boltz extension v2, recurring swaps (#981)
* add status to statusdialog
* first commits for boltz update
* formatting
* add latest boltz-clien package
* big refactor, depending on boltz_client package, clean up, mypy issues, not tested yet
* blacking, sorting and stuff
* remove unused req_wrap helper
* remove api docs from frontend
* bug: frontend boltz limits error
* clean up buttons
* update to boltz-client 0.0.8
* fix tests to poetry version 1.3.1
* update requirements
* formatting
* recurring swap works now, need more finetuning
* add exceptions for multiple auto swaps and swapping in with active auto swap
* black
* auto reverse swap actually works :)
* remove swap status dialogs
* update to boltz_client 0.0.9
* update to boltz-client 0.1.1, and fix startup
* update requirement.txt for boltz-client
* fixup columns in table, remove unused payment.extra, change deezy label
* remove balance check for auto swap out
* update boltzc-lient to 0.1.2, fix mypy issue inside boltz package
* nitpicks calle tasks.py
* calle nitpicks crud
* calle nitpicks crud
* refactor
* fix formatting
* circular import
* black :)
Co-authored-by: callebtc <93376500+callebtc@users.noreply.github.com>
2023-01-19 10:30:47 +01:00
|
|
|
async def api_swap_status(swap_id: str):
|
Boltz.exchange Extension (#922)
* initial commit and still draft, ready for review
* forgot to uncomment this line
* fee estimation and blockheight
* resolve conversation with michael, to use mempool websockets instead of boltz status event
* Update lnbits/extensions/boltz/boltz.py
Co-authored-by: michael1011 <me@michael1011.at>
* add status to swaps, add sorting and data into listing
* add swap status checks, change urls to docker test setup, dynamic minimum and maximum limits
* fix docker hosts for development
* add api endpoints to _api_docs
* add wallet name and id, to list and status information
* fix status_update for reverse_swaps
* chore: format with black
* more blackformatting and refactoring create_swap()
* fix variable bug
* check if swap is already refunded
* use create_task instead of ensure_future
* add mempool and boltz urls depending on DEBUG .env
* raise exception in mempool fails
* fix onchain txs, sending funds to wrong address and add a refund address for normal swaps beforehand
* add status to swaps, add sorting and data into listing
* add swap status checks, change urls to docker test setup, dynamic minimum and maximum limits
* add wallet name and id, to list and status information
* fix status_update for reverse_swaps
* chore: format with black
* use create_task instead of ensure_future
* add mempool and boltz urls depending on DEBUG .env
* fix onchain txs, sending funds to wrong address and add a refund address for normal swaps beforehand
* black formatting
* add some logging with loguru, and remove function duplication
* cleanup readme
* updates/suggestions from calle
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* remove unused comments
* Update API Endpoints
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* un-factor get_boltz_pairs
* added a explaination for the onchain tx
* remove unused template file
* rename api endpoints
* fix isort and prettier
* more verbose logging!!
* add boltz to mock_data.zip
* new mockdata
* remove comment
* better readme
* fix mempool urls
* change /refund /check /status to post requests
* first step in tests2
* add first tests
* change refund,check,status to post requests
* next try on tests
* overall code improvements
* just testing tests
* throw http exceptions in views_api
* require admincheck for refund,check,status and added fastapi documentation for those
* added more tests
* black
* many code improvements
* adding tests
* temp fix test
* fix race condition when pay_invoice fails
* test are working
* add boltz env variables
* add startup check, bugfixes, improvements
* improve on status checking
* remove check_invoice_status
* more fixes and tests
* testing testing testing
* make tests run again inside regtest
* fix bad error :O
* fix postgres boolean bug and add swap test
* Update README.md
Update README.md
Update README.md
Update README.md
* some mypy
* blacked
* the missing commit?
* fix api_docs readme link
* better refunding error catching
fix
* check swaps now also shows pending reverse swap, ui improvements, tooltips
* add backend check for boltz limits
fixup
* many improvements, startup check for swaps working, reverse needs more testing
* little last fixes
* remove unused logic
* fastapi documentation
fixup
* formatting and remove unused tests
* fix test
* fix swapstatus model
* Update lnbits/extensions/boltz/tasks.py
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* Update lnbits/extensions/boltz/views_api.py
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* balance check msg, format
* fix mypy data override
* fix swapstatus, remove can refund column
* Update lnbits/extensions/boltz/README.md
Co-authored-by: michael1011 <me@michael1011.at>
* empty lines
* fix error message when swap is not found
* remove preimage_hash from database
* fix api_docs html
fix api_docs html
* catch boltz network exceptions better
* formatting
* check for timeout on swap at get request
Co-authored-by: michael1011 <me@michael1011.at>
Co-authored-by: fusion44 <some.fusion@gmail.com>
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
2022-08-30 12:51:17 +02:00
|
|
|
swap = await get_submarine_swap(swap_id) or await get_reverse_submarine_swap(
|
|
|
|
swap_id
|
|
|
|
)
|
boltz extension v2, recurring swaps (#981)
* add status to statusdialog
* first commits for boltz update
* formatting
* add latest boltz-clien package
* big refactor, depending on boltz_client package, clean up, mypy issues, not tested yet
* blacking, sorting and stuff
* remove unused req_wrap helper
* remove api docs from frontend
* bug: frontend boltz limits error
* clean up buttons
* update to boltz-client 0.0.8
* fix tests to poetry version 1.3.1
* update requirements
* formatting
* recurring swap works now, need more finetuning
* add exceptions for multiple auto swaps and swapping in with active auto swap
* black
* auto reverse swap actually works :)
* remove swap status dialogs
* update to boltz_client 0.0.9
* update to boltz-client 0.1.1, and fix startup
* update requirement.txt for boltz-client
* fixup columns in table, remove unused payment.extra, change deezy label
* remove balance check for auto swap out
* update boltzc-lient to 0.1.2, fix mypy issue inside boltz package
* nitpicks calle tasks.py
* calle nitpicks crud
* calle nitpicks crud
* refactor
* fix formatting
* circular import
* black :)
Co-authored-by: callebtc <93376500+callebtc@users.noreply.github.com>
2023-01-19 10:30:47 +01:00
|
|
|
if not swap:
|
Boltz.exchange Extension (#922)
* initial commit and still draft, ready for review
* forgot to uncomment this line
* fee estimation and blockheight
* resolve conversation with michael, to use mempool websockets instead of boltz status event
* Update lnbits/extensions/boltz/boltz.py
Co-authored-by: michael1011 <me@michael1011.at>
* add status to swaps, add sorting and data into listing
* add swap status checks, change urls to docker test setup, dynamic minimum and maximum limits
* fix docker hosts for development
* add api endpoints to _api_docs
* add wallet name and id, to list and status information
* fix status_update for reverse_swaps
* chore: format with black
* more blackformatting and refactoring create_swap()
* fix variable bug
* check if swap is already refunded
* use create_task instead of ensure_future
* add mempool and boltz urls depending on DEBUG .env
* raise exception in mempool fails
* fix onchain txs, sending funds to wrong address and add a refund address for normal swaps beforehand
* add status to swaps, add sorting and data into listing
* add swap status checks, change urls to docker test setup, dynamic minimum and maximum limits
* add wallet name and id, to list and status information
* fix status_update for reverse_swaps
* chore: format with black
* use create_task instead of ensure_future
* add mempool and boltz urls depending on DEBUG .env
* fix onchain txs, sending funds to wrong address and add a refund address for normal swaps beforehand
* black formatting
* add some logging with loguru, and remove function duplication
* cleanup readme
* updates/suggestions from calle
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* remove unused comments
* Update API Endpoints
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* un-factor get_boltz_pairs
* added a explaination for the onchain tx
* remove unused template file
* rename api endpoints
* fix isort and prettier
* more verbose logging!!
* add boltz to mock_data.zip
* new mockdata
* remove comment
* better readme
* fix mempool urls
* change /refund /check /status to post requests
* first step in tests2
* add first tests
* change refund,check,status to post requests
* next try on tests
* overall code improvements
* just testing tests
* throw http exceptions in views_api
* require admincheck for refund,check,status and added fastapi documentation for those
* added more tests
* black
* many code improvements
* adding tests
* temp fix test
* fix race condition when pay_invoice fails
* test are working
* add boltz env variables
* add startup check, bugfixes, improvements
* improve on status checking
* remove check_invoice_status
* more fixes and tests
* testing testing testing
* make tests run again inside regtest
* fix bad error :O
* fix postgres boolean bug and add swap test
* Update README.md
Update README.md
Update README.md
Update README.md
* some mypy
* blacked
* the missing commit?
* fix api_docs readme link
* better refunding error catching
fix
* check swaps now also shows pending reverse swap, ui improvements, tooltips
* add backend check for boltz limits
fixup
* many improvements, startup check for swaps working, reverse needs more testing
* little last fixes
* remove unused logic
* fastapi documentation
fixup
* formatting and remove unused tests
* fix test
* fix swapstatus model
* Update lnbits/extensions/boltz/tasks.py
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* Update lnbits/extensions/boltz/views_api.py
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* balance check msg, format
* fix mypy data override
* fix swapstatus, remove can refund column
* Update lnbits/extensions/boltz/README.md
Co-authored-by: michael1011 <me@michael1011.at>
* empty lines
* fix error message when swap is not found
* remove preimage_hash from database
* fix api_docs html
fix api_docs html
* catch boltz network exceptions better
* formatting
* check for timeout on swap at get request
Co-authored-by: michael1011 <me@michael1011.at>
Co-authored-by: fusion44 <some.fusion@gmail.com>
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
2022-08-30 12:51:17 +02:00
|
|
|
raise HTTPException(
|
|
|
|
status_code=HTTPStatus.NOT_FOUND, detail="swap does not exist."
|
|
|
|
)
|
|
|
|
|
boltz extension v2, recurring swaps (#981)
* add status to statusdialog
* first commits for boltz update
* formatting
* add latest boltz-clien package
* big refactor, depending on boltz_client package, clean up, mypy issues, not tested yet
* blacking, sorting and stuff
* remove unused req_wrap helper
* remove api docs from frontend
* bug: frontend boltz limits error
* clean up buttons
* update to boltz-client 0.0.8
* fix tests to poetry version 1.3.1
* update requirements
* formatting
* recurring swap works now, need more finetuning
* add exceptions for multiple auto swaps and swapping in with active auto swap
* black
* auto reverse swap actually works :)
* remove swap status dialogs
* update to boltz_client 0.0.9
* update to boltz-client 0.1.1, and fix startup
* update requirement.txt for boltz-client
* fixup columns in table, remove unused payment.extra, change deezy label
* remove balance check for auto swap out
* update boltzc-lient to 0.1.2, fix mypy issue inside boltz package
* nitpicks calle tasks.py
* calle nitpicks crud
* calle nitpicks crud
* refactor
* fix formatting
* circular import
* black :)
Co-authored-by: callebtc <93376500+callebtc@users.noreply.github.com>
2023-01-19 10:30:47 +01:00
|
|
|
client = create_boltz_client()
|
|
|
|
status = client.swap_status(swap.boltz_id)
|
Boltz.exchange Extension (#922)
* initial commit and still draft, ready for review
* forgot to uncomment this line
* fee estimation and blockheight
* resolve conversation with michael, to use mempool websockets instead of boltz status event
* Update lnbits/extensions/boltz/boltz.py
Co-authored-by: michael1011 <me@michael1011.at>
* add status to swaps, add sorting and data into listing
* add swap status checks, change urls to docker test setup, dynamic minimum and maximum limits
* fix docker hosts for development
* add api endpoints to _api_docs
* add wallet name and id, to list and status information
* fix status_update for reverse_swaps
* chore: format with black
* more blackformatting and refactoring create_swap()
* fix variable bug
* check if swap is already refunded
* use create_task instead of ensure_future
* add mempool and boltz urls depending on DEBUG .env
* raise exception in mempool fails
* fix onchain txs, sending funds to wrong address and add a refund address for normal swaps beforehand
* add status to swaps, add sorting and data into listing
* add swap status checks, change urls to docker test setup, dynamic minimum and maximum limits
* add wallet name and id, to list and status information
* fix status_update for reverse_swaps
* chore: format with black
* use create_task instead of ensure_future
* add mempool and boltz urls depending on DEBUG .env
* fix onchain txs, sending funds to wrong address and add a refund address for normal swaps beforehand
* black formatting
* add some logging with loguru, and remove function duplication
* cleanup readme
* updates/suggestions from calle
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* remove unused comments
* Update API Endpoints
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* un-factor get_boltz_pairs
* added a explaination for the onchain tx
* remove unused template file
* rename api endpoints
* fix isort and prettier
* more verbose logging!!
* add boltz to mock_data.zip
* new mockdata
* remove comment
* better readme
* fix mempool urls
* change /refund /check /status to post requests
* first step in tests2
* add first tests
* change refund,check,status to post requests
* next try on tests
* overall code improvements
* just testing tests
* throw http exceptions in views_api
* require admincheck for refund,check,status and added fastapi documentation for those
* added more tests
* black
* many code improvements
* adding tests
* temp fix test
* fix race condition when pay_invoice fails
* test are working
* add boltz env variables
* add startup check, bugfixes, improvements
* improve on status checking
* remove check_invoice_status
* more fixes and tests
* testing testing testing
* make tests run again inside regtest
* fix bad error :O
* fix postgres boolean bug and add swap test
* Update README.md
Update README.md
Update README.md
Update README.md
* some mypy
* blacked
* the missing commit?
* fix api_docs readme link
* better refunding error catching
fix
* check swaps now also shows pending reverse swap, ui improvements, tooltips
* add backend check for boltz limits
fixup
* many improvements, startup check for swaps working, reverse needs more testing
* little last fixes
* remove unused logic
* fastapi documentation
fixup
* formatting and remove unused tests
* fix test
* fix swapstatus model
* Update lnbits/extensions/boltz/tasks.py
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* Update lnbits/extensions/boltz/views_api.py
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
* balance check msg, format
* fix mypy data override
* fix swapstatus, remove can refund column
* Update lnbits/extensions/boltz/README.md
Co-authored-by: michael1011 <me@michael1011.at>
* empty lines
* fix error message when swap is not found
* remove preimage_hash from database
* fix api_docs html
fix api_docs html
* catch boltz network exceptions better
* formatting
* check for timeout on swap at get request
Co-authored-by: michael1011 <me@michael1011.at>
Co-authored-by: fusion44 <some.fusion@gmail.com>
Co-authored-by: calle <93376500+callebtc@users.noreply.github.com>
2022-08-30 12:51:17 +02:00
|
|
|
return status
|
|
|
|
|
|
|
|
|
|
|
|
@boltz_ext.get(
|
|
|
|
"/api/v1/swap/boltz",
|
|
|
|
name=f"boltz.get /swap/boltz",
|
|
|
|
summary="get a boltz configuration",
|
|
|
|
description="""
|
|
|
|
This endpoint gets configuration for boltz. (limits, fees...)
|
|
|
|
""",
|
|
|
|
response_description="dict of boltz config",
|
|
|
|
response_model=dict,
|
|
|
|
)
|
|
|
|
async def api_boltz_config():
|
boltz extension v2, recurring swaps (#981)
* add status to statusdialog
* first commits for boltz update
* formatting
* add latest boltz-clien package
* big refactor, depending on boltz_client package, clean up, mypy issues, not tested yet
* blacking, sorting and stuff
* remove unused req_wrap helper
* remove api docs from frontend
* bug: frontend boltz limits error
* clean up buttons
* update to boltz-client 0.0.8
* fix tests to poetry version 1.3.1
* update requirements
* formatting
* recurring swap works now, need more finetuning
* add exceptions for multiple auto swaps and swapping in with active auto swap
* black
* auto reverse swap actually works :)
* remove swap status dialogs
* update to boltz_client 0.0.9
* update to boltz-client 0.1.1, and fix startup
* update requirement.txt for boltz-client
* fixup columns in table, remove unused payment.extra, change deezy label
* remove balance check for auto swap out
* update boltzc-lient to 0.1.2, fix mypy issue inside boltz package
* nitpicks calle tasks.py
* calle nitpicks crud
* calle nitpicks crud
* refactor
* fix formatting
* circular import
* black :)
Co-authored-by: callebtc <93376500+callebtc@users.noreply.github.com>
2023-01-19 10:30:47 +01:00
|
|
|
client = create_boltz_client()
|
2023-01-23 10:43:31 +01:00
|
|
|
return {
|
|
|
|
"minimal": client.limit_minimal,
|
|
|
|
"maximal": client.limit_maximal,
|
|
|
|
"fee_percentage": client.fee_percentage,
|
|
|
|
}
|