* Editorconfig: Add space_before_self_closing setting
This was a difference between the way dotnet-format and Rider format code. See https://www.jetbrains.com/help/rider/EditorConfig_Index.html
* Editorconfig: Keep 4 spaces indentation for Swagger JSON files
They are all formatted that way, let's keep it like that.
* Apply dotnet-format, mostly white-space related changes
* Enable NETAnalyzers for whole project
- remove obsolete analyzers so that the .NET Core SDK NETAnalyzers can be used
- enable NETAnalyzers for all projects so that developers can use them by defining the AnalysisMode on individual projects
This is because if we set AnalysisMode to minimal, recommended or all it would spam with warning.
The idea is to be able to turn them on during development to fix recommended stuff without polluting the build output.
Following commits will implement some of the Code Analysis findings
* Performance hints for using char overloads for single characters (CA1834 and CA1847)
CA1834: Use StringBuilder.Append(char) for single character strings
CA1847: Use string.Contains(char) instead of string.Contains(string) with single characters
We're keeping the `store-integrations-list` extension point name for backwards compatibility, otherwise I renamed all "integration" occurences in the views and also the routes.
Note: We still refer to external software like WooCommerce, Drupal, Magento and such as "integrations", I think that distinction makes sense.
Closes#3594.
* Store Selector: Create first store button
* Add setup guide to homepage
* Policy update for stores list
* Fix test
* Initial create store button as primary
* Add notifications list to homepage
* Remove back to list from store create view
* Adapt content padding on desktop
* Add store home view with setup guide
* Fix active page nav highlighting
* Test fix
* Remove What's Next section
* Rename Store Home to Dashboard
* Fix Lightning setup link
* Add tests for store setup guide
* Update BTCPayServer/Views/Home/Home.cshtml
Co-authored-by: Pavlenex <pavle@pavle.org>
* Update BTCPayServer/Views/Stores/Dashboard.cshtml
Co-authored-by: Pavlenex <pavle@pavle.org>
* Remove setup guide on global homepage
* Remove Shopify setup link from nav
* Fix content container max-width on desktop
Co-authored-by: Pavlenex <pavle@pavle.org>
* 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 97e8b8379c.
* Simplify LayoutSimple
* Fix CanViewInvoices condition
Co-authored-by: Kukks <evilkukka@gmail.com>
* Use Outstanding amount for shopify order invoices
* consider shopify order may have multiple transactions
* Use presentment currency not just currency
fixes#2683
* Decouple Shopify from Store
* Decouple shopify from store blob
* Update BTCPayServer.Tests.csproj
* Make sure shopify obj is set
* make shopify a system plugin