mirror of
https://github.com/btcpayserver/btcpayserver.git
synced 2025-02-23 14:40:36 +01:00
* Prepare existing layouts and views * Add icon view component and sprite svg * Add wallet setup basics * Add import method view basics * Use external sprite file instead of inline svg * Refactor hardware wallet setup flow * Manually enter an xpub * Prepare other views * Update views and models * Finalize wallet setup flow * Updat tests, part 1 * Update tests, part 2 * Vaul: Fix missing retry button * Add better Scan QR subtext Still tbd. * Make wallet account an advanced setting * Prevent empty xpub * Use textarea for seed input * Remove redundant error message for missing file upload * Confirm store updates after generating a new wallet * Update wording * Modify existing wallets * Fix proposed method name * Suggest using ColdCard Electrum export option only Advise the user to use the electrum export of the coldcard instead of saying either electrum or wasabi export file … the electurm one contains more info, e.g. the wasabi one doesn't include the account key path. * More concise WalletSetupMethod setting * Test fix * Update wallet removal code * Fix back navigation quirk in change wallet case * Fix behaviour on wallet enable/disable * Fix initial wallet setup * Improve modify view and messages * Test fixes * Seed import fix Uses the correct form url for confirming addresses * Quickfixes from design meeting * Add enable toggle switch on modify page * Confirm wallet removal * Update setup view * Update import view * Icon finetuning * Improve import options page * Refactor QR code scanner Allow for usage with and without modal * Update copy and instructions on import pages * Split generate options: Hot wallet and watch-only * Implement hot wallet options correctly * Minor test changes * Navbar improvements * Fix tables * Fix badge color * Routing related updates Thanks @kukks for the suggestions! * Wording updates Thanks @kukks for the suggestions! * Extend address types table for xpub import Thanks @kukks for the suggestions! * Rename controller * Unify precondition checks * Improve removal warning for hot wallets * Add tooltip on why seed import is not recommended * Add tooltip icon * Add Specter import info
453 lines
8.5 KiB
CSS
453 lines
8.5 KiB
CSS
/* General and site-wide Bootstrap modifications */
|
|
html {
|
|
position: relative;
|
|
min-height: 100%;
|
|
font-size: var(--btcpay-font-size-base);
|
|
-webkit-font-smoothing: antialiased;
|
|
-moz-osx-font-smoothing: grayscale;
|
|
}
|
|
|
|
.logo {
|
|
height: 45px;
|
|
}
|
|
|
|
.logo-brand-text {
|
|
fill: currentColor;
|
|
}
|
|
|
|
.hide-when-js,
|
|
.input-group-clear {
|
|
display: none;
|
|
}
|
|
|
|
.wraptextAuto {
|
|
max-width: 300px;
|
|
text-overflow: ellipsis;
|
|
overflow: hidden;
|
|
display: block;
|
|
white-space: nowrap;
|
|
}
|
|
|
|
@media (min-width: 768px) {
|
|
.wraptextAuto {
|
|
max-width: 600px;
|
|
}
|
|
}
|
|
|
|
.smMaxWidth {
|
|
max-width: 150px;
|
|
}
|
|
|
|
@media (min-width: 768px) {
|
|
.smMaxWidth {
|
|
max-width: 300px;
|
|
}
|
|
}
|
|
|
|
a {
|
|
transition-duration: 0.2s;
|
|
transition-property: background, color;
|
|
}
|
|
|
|
ol {
|
|
padding-left: 1.125em;
|
|
}
|
|
|
|
ul {
|
|
padding-left: 1em;
|
|
}
|
|
|
|
ul li {
|
|
padding-top: .2em;
|
|
padding-bottom: .2em;
|
|
}
|
|
|
|
.bg-tile {
|
|
background-color: var(--btcpay-bg-tile);
|
|
}
|
|
|
|
.navbar .onion {
|
|
margin-right: auto;
|
|
}
|
|
|
|
.navbar-brand,
|
|
.navbar-brand:hover,
|
|
.navbar-brand:focus {
|
|
color: inherit;
|
|
}
|
|
|
|
.navbar-toggler {
|
|
color: inherit;
|
|
border-color: inherit;
|
|
opacity: .5;
|
|
}
|
|
|
|
.dropdown-toggle-split,
|
|
.dropdown-toggle-split:hover {
|
|
border-left: 1px solid var(--btcpay-color-white);
|
|
}
|
|
|
|
/* Admin Sidebar Navigation */
|
|
a.nav-link {
|
|
color: var(--btcpay-nav-color-link, var(--btcpay-color-neutral-600));
|
|
background: var(--btcpay-bg-nav-link, transparent);
|
|
}
|
|
|
|
a.nav-link:focus,
|
|
a.nav-link:hover {
|
|
color: var(--btcpay-nav-color-link-accent, var(--btcpay-color-neutral-700));
|
|
background: var(--btcpay-bg-nav-link-hover, transparent);
|
|
}
|
|
|
|
.col-md-3 .nav-pills {
|
|
margin-left: -1rem;
|
|
}
|
|
|
|
.nav-pills .nav-link.active,
|
|
.nav-pills .show > .nav-link {
|
|
color: var(--btcpay-nav-color-link-active, var(--btcpay-color-neutral-900));
|
|
background: var(--btcpay-bg-nav-link-active, var(--btcpay-color-primary-backdrop));
|
|
font-weight: 500;
|
|
border-left: 5px solid var(--btcpay-color-primary);
|
|
}
|
|
|
|
/* Homepage */
|
|
#services img {
|
|
margin-bottom: 1rem;
|
|
}
|
|
|
|
.social-row {
|
|
margin: 2rem 0;
|
|
}
|
|
|
|
.social-row > div {
|
|
margin-bottom: 3rem;
|
|
}
|
|
|
|
.social-row img {
|
|
height: 50px;
|
|
}
|
|
|
|
.social-row span {
|
|
display: block;
|
|
margin-top: 1rem;
|
|
}
|
|
|
|
/* Footer */
|
|
.footer {
|
|
position: absolute;
|
|
left: 0;
|
|
right: 0;
|
|
bottom: 0;
|
|
font-size: 12px;
|
|
overflow: hidden;
|
|
padding: .5em 0;
|
|
color: var(--btcpay-footer-color, var(--btcpay-color-neutral-100));
|
|
background: var(--btcpay-footer-bg, var(--btcpay-bg-dark));
|
|
}
|
|
|
|
/* Prevent layout from breaking on hyperlinks with very long URLs as the visible text */
|
|
.invoice-details a {
|
|
word-break: break-word;
|
|
}
|
|
|
|
#qrCode {
|
|
padding: 10px;
|
|
background: white;
|
|
display: inline-block;
|
|
}
|
|
|
|
pre {
|
|
color: var(--btcpay-preformatted-text-color);
|
|
}
|
|
|
|
.feedback-icon-loading {
|
|
color: orange;
|
|
}
|
|
.feedback-icon-success {
|
|
color: green;
|
|
}
|
|
.feedback-icon-failed {
|
|
color: red;
|
|
}
|
|
.pin-button {
|
|
height: 135px;
|
|
margin-top: 20px;
|
|
background-color: white;
|
|
border: solid lightgray 4px;
|
|
cursor: pointer;
|
|
}
|
|
|
|
.pin-button:hover {
|
|
background-color: lightgray;
|
|
}
|
|
|
|
/* Fix for small table showing unnecessary scrollbars */
|
|
.table-responsive .table-sm {
|
|
width: 100% !important;
|
|
}
|
|
|
|
[v-cloak] { display:none }
|
|
[v-cloak-loading] > * { display:none }
|
|
[v-cloak-loading]::before { content: "loading…" }
|
|
|
|
.cursor-pointer{
|
|
cursor: pointer;
|
|
}
|
|
|
|
.list-group-item a:not(.btn) {
|
|
color: inherit;
|
|
}
|
|
|
|
.alerts-badge {
|
|
position: absolute;
|
|
margin-top: -36px;
|
|
margin-left: 16px;
|
|
}
|
|
|
|
.alert hr {
|
|
display: block;
|
|
width: unset;
|
|
height: 1px;
|
|
background: none;
|
|
}
|
|
|
|
.account-form {
|
|
max-width: 36em;
|
|
}
|
|
|
|
.content-wrapper {
|
|
padding: 50px 0;
|
|
}
|
|
|
|
@media screen and (min-width: 768px) {
|
|
.content-wrapper {
|
|
padding: 75px 0;
|
|
}
|
|
}
|
|
|
|
.btn-outline-onion {
|
|
background-image: none;
|
|
background-color: transparent;
|
|
border: 0;
|
|
}
|
|
|
|
.btn-outline-onion:hover {
|
|
color: #fff;
|
|
background-color: #7D4698;
|
|
}
|
|
|
|
.btn-outline-onion:focus,
|
|
.btn-outline-onion.focus {
|
|
color: #fff;
|
|
background-color: #7D4698;
|
|
box-shadow: 0 0 0 0.2rem #e6d5ee;
|
|
}
|
|
|
|
.btn-outline-onion:hover img,
|
|
.btn-outline-onion:focus img,
|
|
.btn-outline-onion.focus img {
|
|
filter: contrast(0) brightness(200%);
|
|
}
|
|
|
|
[class*="field-validation"]:not(:empty) {
|
|
display: inline-block;
|
|
margin-top: .5rem;
|
|
}
|
|
|
|
.w-100px { width: 100px; }
|
|
.w-125px { width: 125px; }
|
|
.w-150px { width: 150px; }
|
|
.w-175px { width: 175px; }
|
|
.w-200px { width: 200px; }
|
|
|
|
.fw-semibold {
|
|
font-weight: 600;
|
|
}
|
|
|
|
.text-monospace {
|
|
font-size: .95rem;
|
|
}
|
|
|
|
input.w-auto,
|
|
select.w-auto,
|
|
textarea.w-auto {
|
|
max-width: 100%;
|
|
}
|
|
|
|
/* Chrome, Safari, Edge, Opera */
|
|
input[type=number].hide-number-spin::-webkit-outer-spin-button,
|
|
input[type=number].hide-number-spin::-webkit-inner-spin-button {
|
|
-webkit-appearance: none;
|
|
margin: 0;
|
|
}
|
|
|
|
/* Firefox */
|
|
input[type=number].hide-number-spin {
|
|
-moz-appearance: textfield;
|
|
}
|
|
|
|
/* Bootstrap Responsive Helper */
|
|
html[data-devenv]:before {
|
|
display: inline-block;
|
|
position: fixed;
|
|
z-index: 1000;
|
|
right: 0;
|
|
bottom: 0;
|
|
background: var(--btcpay-color-secondary-backdrop);
|
|
color: var(--btcpay-color-secondary-text);
|
|
opacity: .7;
|
|
padding: 4px 5px 3px 7px;
|
|
font-size: 10px;
|
|
border-top-left-radius: 4px;
|
|
}
|
|
|
|
@media (max-width: 575px) { html[data-devenv]:before { content: 'XS'; } }
|
|
@media (min-width: 576px) and (max-width: 767px) { html[data-devenv]:before { content: 'SM'; } }
|
|
@media (min-width: 768px) and (max-width: 991px) { html[data-devenv]:before { content: 'MD'; } }
|
|
@media (min-width: 992px) and (max-width: 1199px) { html[data-devenv]:before { content: 'LG'; } }
|
|
@media (min-width: 1200px) { html[data-devenv]:before { content: 'XL'; } }
|
|
@media print { html[data-devenv]:before { content: none; } }
|
|
|
|
/* Print */
|
|
@media print {
|
|
.table td,
|
|
.table th {
|
|
background: transparent;
|
|
}
|
|
.jumbotron {
|
|
padding: 1rem 0 !important;
|
|
}
|
|
.text-print-default {
|
|
color: inherit !important;
|
|
}
|
|
a {
|
|
text-decoration: none !important;
|
|
}
|
|
.toasted-container {
|
|
display: none !important;
|
|
}
|
|
}
|
|
|
|
/* Richtext editor */
|
|
.note-editor .table.table-sm {
|
|
border-collapse: collapse !important;
|
|
}
|
|
|
|
.note-editor .table.table-sm th,
|
|
.note-editor .table.table-sm td {
|
|
border: 1px dotted var(--btcpay-color-neutral-400);
|
|
}
|
|
|
|
/* Custom */
|
|
.btcpay-status {
|
|
display: inline-flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
border: .25em solid transparent;
|
|
border-radius: 50%;
|
|
width: 19px;
|
|
height: 19px;
|
|
}
|
|
.btcpay-status:before {
|
|
content: '';
|
|
border-radius: 50%;
|
|
width: 9px;
|
|
height: 9px;
|
|
}
|
|
.btcpay-status--enabled {
|
|
background-color: rgba(0, 182, 52, .3);
|
|
}
|
|
.btcpay-status--enabled:before {
|
|
background-color: #00B634;
|
|
}
|
|
.btcpay-status--disabled {
|
|
background-color: rgba(251, 56, 61, .3);
|
|
}
|
|
.btcpay-status--disabled:before {
|
|
background-color: #FB383D;
|
|
}
|
|
|
|
|
|
.btcpay-toggle {
|
|
--border-size: 2px;
|
|
--toggle-width: 40px;
|
|
--toggle-height: 24px;
|
|
--switch-size: calc(var(--toggle-height) - 2 * var(--border-size));
|
|
|
|
position: relative;
|
|
display: inline-block;
|
|
width: var(--toggle-width);
|
|
height: var(--toggle-height);
|
|
border: 0;
|
|
border-radius: calc(var(--toggle-height) / 2);
|
|
background: var(--btcpay-color-neutral-500);
|
|
font-size: 0;
|
|
}
|
|
|
|
input.btcpay-toggle {
|
|
appearance: none;
|
|
-moz-appearance: none;
|
|
-webkit-appearance: none;
|
|
}
|
|
|
|
input.btcpay-toggle:checked,
|
|
.btcpay-toggle.btcpay-toggle--active {
|
|
background: var(--btcpay-color-primary);
|
|
}
|
|
|
|
.btcpay-toggle::after {
|
|
content: "";
|
|
position: absolute;
|
|
border-radius: 50%;
|
|
top: var(--border-size);
|
|
left: var(--border-size);
|
|
width: var(--switch-size);
|
|
height: var(--switch-size);
|
|
background-color: var(--btcpay-color-white);
|
|
}
|
|
|
|
.btcpay-toggle,
|
|
.btcpay-toggle::after {
|
|
transition: all 0.2s;
|
|
}
|
|
input.btcpay-toggle:checked::after,
|
|
.btcpay-toggle.btcpay-toggle--active::after {
|
|
left: calc(var(--toggle-width) - var(--switch-size) - var(--border-size));
|
|
}
|
|
|
|
label + input.btcpay-toggle {
|
|
position: relative;
|
|
top: .45rem;
|
|
}
|
|
|
|
|
|
svg.icon {
|
|
display: inline-block;
|
|
width: 16px;
|
|
height: 16px;
|
|
}
|
|
|
|
svg.icon-note {
|
|
color: var(--btcpay-color-neutral-500);
|
|
}
|
|
|
|
/* Custom notification dropdown styling */
|
|
.notification-dropdown {
|
|
border: 0;
|
|
border-radius: 4px;
|
|
box-shadow: 0 2px 16px rgba(0, 0, 0, 0.08);
|
|
padding: 0;
|
|
}
|
|
|
|
@media (min-width: 992px) {
|
|
.notification-dropdown {
|
|
width: 420px;
|
|
top: 64px;
|
|
right: -32px;
|
|
}
|
|
}
|
|
|
|
.notification:hover {
|
|
background-color: var(--btcpay-body-bg);
|
|
}
|