Commit Graph

372 Commits

Author SHA1 Message Date
Andrew Camilleri
7652d2c7e3 LN Address - db schema fix method (#3638)
* LN Address - db schema fix method

* pr changes

* shorten
2022-04-19 16:58:31 +09:00
d11n
7ec978fcdb Dashboard (#3530)
* Add dashboard and chart basics

* More widgets

* Make widgets responsive

* Layout dashboard

* Prepare ExplorerClient

* Switch to Chartist

* Dynamic data for store numbers and recent transactions tiles

* Dynamic data for recent invoices tile

* Improvements

* Plug NBXPlorer DB

* Properly filter by code

* Reorder cheat mode button

* AJAX update for graph data

* Fix create invoice button

* Retry connection on transient issues

* App Top Items stats

* Design updates

* App Sales stats

* Add points for weekly histogram, set last point to current balance

Co-authored-by: nicolas.dorier <nicolas.dorier@gmail.com>
2022-04-12 16:55:10 +09:00
Kukks
77da261fea Allow plugins to extend swagger docs and fix pull payment test 2022-03-29 20:29:27 +02:00
Dennis Reimann
749c22a0c3 Refactoring: Extract HttpRequest extensions 2022-03-08 08:17:39 +00:00
Dennis Reimann
4abc6eb387 Refactoring: Allow GreenfieldExtensions to be used by plugins 2022-03-01 09:14:51 +01:00
hhanh00
f4153ade92 Zcash integration (#3400)
* zcash

* Use Channel instead of Queue
2022-02-14 17:04:34 +09:00
nicolas.dorier
9e2f7fb048 Do not register services of altcoins if not used 2022-02-10 12:36:07 +09:00
Kukks
5c6a0f22c0 fix ln address
fixes #3367
2022-01-27 17:17:20 +01:00
Nicolas Dorier
090da6cfb6 Add configurable BOLT11Expiration for refunds (Fix #3281) (#3341)
* Add configurable BOLT11Expiration for refunds (Fix #3281)

* Add BOLT11Expiration configuration in Payment
2022-01-24 20:17:09 +09:00
nicolas.dorier
d667b8ae8b Add LNURL support to Crowdfund 2022-01-18 12:26:15 +01:00
Nicolas Dorier
14da3023d8 Merge pull request #3310 from NicolasDorier/niceurl
Use nicer urls, part2 (Fix #921)
2022-01-17 11:41:20 +09:00
nicolas.dorier
b9fdd54538 Use nicer urls, part2 (Fix #921) 2022-01-15 14:54:06 +09:00
Kukks
7243aec213 Support LNURL Auth 2022-01-14 13:26:30 +01:00
nicolas.dorier
50d4b55f73 Warning if not using 'simple using' 2022-01-14 17:50:29 +09:00
nicolas.dorier
23a96c07ae Rename GreenField -> Greenfield 2022-01-14 13:46:04 +09:00
nicolas.dorier
7a787fc945 Rename UI controllers 2022-01-14 13:46:03 +09:00
nicolas.dorier
eaf47d3739 Rename controllers Bitpay controllers 2022-01-14 12:21:06 +09:00
Nicolas Dorier
5eebdb6774 Use nicer urls (Fix #921) (#3304) 2022-01-14 12:20:50 +09:00
nicolas.dorier
20c8916610 Make BTCPayServer insensitive to the working directory in which it is started (Fix #1894) 2022-01-12 20:20:26 +09:00
nicolas.dorier
6999abe1ca Rename WebhookNotificationManager -> WebhookSender 2022-01-11 13:21:38 +09:00
nicolas.dorier
cb295e20d4 Rename InvoiceNotificationManager -> BitpayIPNSender 2022-01-11 13:21:38 +09:00
nicolas.dorier
8bea3dd21e [Greenfield] if some json property are invalid, throw nice error instead of an exception (fix #2795) 2022-01-10 22:11:04 +09:00
nicolas.dorier
47d8d3cdb1 Validate the name of controllers when LinkGenerator 2022-01-08 14:16:17 +09:00
nicolas.dorier
88bc1c64d2 Fix tests 2022-01-07 21:47:19 +09:00
nicolas.dorier
81c1cc6728 Add rockstar friendly error 403 2022-01-07 19:46:38 +09:00
nicolas.dorier
ab3aab9c22 Make BTCPayServer works with dotnet watch hot reload 2022-01-01 22:05:51 +09:00
Nicolas Dorier
04b8eafacb Run dotnet format (#3244) 2021-12-31 16:59:02 +09:00
d11n
e2d0b7c5f7 Store centric UI: Part 3 (#3224)
* Set store context in cookie

* Fix page id usages in view

* Move Pay Button to nav

* Move integrations to plugins nav

* Store switch links to wallet if present

* Test fixes

* Nav fixes

* Fix altcoin view

* Main nav updates

* Wallet setttings nav update

* Move storeId cookie fallback to cookie auth handler

* View fixes

* Test fixes

* Fix profile check

* Rename integrations nav extension point to store-integrations-nav-list

* Allow strings for Active page/category for plugins

* Make invoice list filter based on store context

* Do not set context if we are running authorizer through tag helper

* Fix test and unfiltered invoices

* Add permission helper for wallet links

* Add sanity checks for payment requests and invoices

* Store context in home controller

* Fix PayjoinViaUI test

* Store context for notifications

* Minor UI improvements

* Store context for userstores and vault controller

* Bring back integrations page

* Rename notifications nav pages file

* Fix user stores controller policies

* Controller policy fixes from code review

* CookieAuthHandler: Simplify CanViewInvoices case

* Revert "Controller policy fixes from code review"

This reverts commit 97e8b8379c2f2f373bac15a96632d2c8913ef4bd.

* Simplify LayoutSimple

* Fix CanViewInvoices condition

Co-authored-by: Kukks <evilkukka@gmail.com>
2021-12-31 16:36:38 +09:00
Nicolas Dorier
0dcfbe8581 Remove internal socks http proxy and use .net60 socks support (#3240) 2021-12-28 18:57:22 +09:00
Andrew Camilleri
48ac996d77 Sign in with other device (quick mobile login) (#2504)
Co-authored-by: Dennis Reimann <mail@dennisreimann.de>
Co-authored-by: Nicolas Dorier <nicolas.dorier@gmail.com>
2021-12-24 09:27:00 +01:00
Wouter Samaey
6de4f6a3ac Mention the missing API permission in the response of a Greenfield request (#3195)
* Mention the missing API permission in the response header or body

* Fixes + Added a unit test. 1 TODO remains.

* Added MissingPermissionDescription to the error

* Update BTCPayServer.Tests/GreenfieldAPITests.cs

Co-authored-by: Nicolas Dorier <nicolas.dorier@gmail.com>

* Fix tests

* [GreenField]: Make sure we are sending fully typed errors

Co-authored-by: Nicolas Dorier <nicolas.dorier@gmail.com>
2021-12-16 23:04:06 +09:00
nicolas.dorier
4f7eeea14e Greenfield: Improve error message, do not use internal lightning node on store's lightning API 2021-12-16 14:27:34 +09:00
Nicolas Dorier
bd2f35a241 Remove Ethereum support (#3182) 2021-12-11 14:31:41 +09:00
Samuel Adams
ec68d2a0e6 Remove Confirmed state in UI (#3090)
* Remove Confirmed state in UI

Closes #1789.

* Add infobox & improve refund tooltip

* Update BTCPayServer/Views/Invoice/ListInvoices.cshtml

Add @dennisreimann suggestion

Co-authored-by: d11n <mail@dennisreimann.de>

* Add "don't show again" button

Adds a "Don't Show Again" button to the infobox. Also a bugfix that was preventing the new status from showing in the invoice details page.

* Add User blob and move invoice status notice to it

Co-authored-by: d11n <mail@dennisreimann.de>
Co-authored-by: Kukks <evilkukka@gmail.com>
2021-11-26 23:13:41 +09:00
Dennis Reimann
e42ef4b2f8 Plugins: Update startup for plugin compatibility 2021-11-25 10:24:14 +01:00
nicolas.dorier
35aad4ebf9 Remove Logs static singletons 2021-11-23 13:55:34 +09:00
Andrew Camilleri
fc8a5ff95f Lightning address support (#2804)
Co-authored-by: Dennis Reimann <mail@dennisreimann.de>
2021-10-29 11:01:16 +02:00
Kukks
eee8008bb2 Make sure migration for apps does not crash 2021-10-28 12:23:21 +02:00
Andrew Camilleri
951bfeefb1 LNURL Payment Method Support (#2897)
* LNURL Payment Method Support

* Merge recent Lightning controller related changes

* Fix build

* Create separate payment settings section for stores

* Improve LNURL configuration

* Prevent duplicate array entries when merging Swagger JSON

* Fix CanSetPaymentMethodLimitsLightning

* Fix CanUsePayjoinViaUI

* Adapt test for new cancel bolt invoice feature

* rebase fixes

* Fixes after rebase

* Test fixes

* Do not turn LNURL on by default, Off-Chain payment criteria should affects both BOLT11 and LNURL, Payment criteria of unset payment method shouldn't be shown

* Send better error if payment method not found

* Revert "Prevent duplicate array entries when merging Swagger JSON"

This reverts commit 5783db9eda17c29908a60fdef2c3ebe130a8b059.

* Fix LNUrl doc

* Fix some warnings

Co-authored-by: Dennis Reimann <mail@dennisreimann.de>
Co-authored-by: nicolas.dorier <nicolas.dorier@gmail.com>
2021-10-25 15:18:02 +09:00
Andrew Camilleri
db038723f4 Payout Destination Handling (#2985)
* Payout Destination Handling

fixes #2765
This PR:
* reactivates the BIP21 support for payouts.
* allows LNUrl destinations to be reusable.
* allows addresses to be reused in claims as long as the other claims are in a final state

* Ensure bolt amount matches the payout amount

* fixes

* reduce duplicate parsing of bolt

* make hash the id of bolt

* better bolt11 tostring

* use cached payment request from lnurl
2021-10-22 00:43:02 +09:00
Andrew Camilleri
cf206e64a7 Add Lightning payout support (#2517)
* Add Lightning payout support

* Adjust Greenfield API to allow other payment types for Payouts

* Pull payment view: Improve payment method select

* Pull payments view: Update JS

* Pull payments view: Table improvements

* Pull payment form: Remove duplicate name field

* Cleanup Lightning branch after rebasing

* Update swagger documnetation for Lightning support

* Remove required requirement for amount in pull payments

* Adapt Refund endpoint to support multiple playment methods

* Support LNURL Pay for Pull Payments

* Revert "Remove required requirement for amount in pull payments"

This reverts commit 96cb78939d43b7be61ee2d257800ccd1cce45c4c.

* Support Lightning address payout claims

* Fix lightning claim handling and provide better error messages

* Fix tests

Co-authored-by: Dennis Reimann <mail@dennisreimann.de>
2021-10-18 12:37:59 +09:00
Kukks
9592a77cff use more concrete types for price type in app items 2021-10-15 12:53:45 +02:00
nicolas.dorier
6c688b9684 Make sure cheater scan rpc capabilities 2021-10-11 17:49:04 +09:00
Nicolas Dorier
d7a7382d00 Introduce cheat mode (#2965) 2021-10-11 12:32:09 +09:00
Andrew Camilleri
6e3d6125c2 Payment Settled Webhook event (#2944)
* Payment Settled Webhook event

resolves #2691

* Move payment methods to payment services
2021-10-05 18:10:41 +09:00
nicolas.dorier
ad7b62fa3d Fix CSP when there is a theme 2021-09-10 00:14:26 +09:00
Nicolas Dorier
fc4e47cec6 Add CSP at the website level (#2863) 2021-09-09 21:51:28 +09:00
nicolas.dorier
bc4945c584 Fix hotwallet migration 2 2021-08-10 12:13:00 +09:00
nicolas.dorier
fa96deb1de Fix hotwallet migration 2021-08-10 12:07:13 +09:00
Andrew Camilleri
ba165ddd4f Local Greenfield Client for Plugins (#2410)
* wip

* Local GreenField Client for Plugins

* support notification handlers being missing

* Initial support for scoped btcpay client

* test out scoped local client

* wip

* small fix

* Throw exception if using local greenfield client and it has not been implemented yet

* adapt based on new changes in BTCPay

* update

* fix tests

* Allow Local client to bypass authorization handler

* Add Misc endpoints to Local API Client

* Add new endpoints

* Apply code review changes
2021-07-27 21:11:47 +09:00