mirror of
				https://github.com/paperless-ngx/paperless-ngx.git
				synced 2025-10-30 03:56:23 -05:00 
			
		
		
		
	many layout and theme changes
This commit is contained in:
		| @@ -1,24 +1,14 @@ | |||||||
| <nav class="navbar navbar-dark sticky-top bg-dark flex-md-nowrap p-0 shadow"> | <nav class="navbar navbar-dark sticky-top bg-primary flex-md-nowrap p-0 shadow"> | ||||||
|   <span class="navbar-brand col-md-3 col-lg-2 mr-0 px-3" href="#">Paperless-ng</span> |   <span class="navbar-brand col-md-3 col-lg-2 mr-0 px-3" href="#">Paperless-ng</span> | ||||||
|   <button class="navbar-toggler position-absolute d-md-none collapsed" type="button" data-toggle="collapse" |   <button class="navbar-toggler position-absolute d-md-none collapsed" type="button" data-toggle="collapse" | ||||||
|     data-target="#sidebarMenu" aria-controls="sidebarMenu" aria-expanded="false" aria-label="Toggle navigation" |     data-target="#sidebarMenu" aria-controls="sidebarMenu" aria-expanded="false" aria-label="Toggle navigation" | ||||||
|     (click)="isMenuCollapsed = !isMenuCollapsed"> |     (click)="isMenuCollapsed = !isMenuCollapsed"> | ||||||
|     <span class="navbar-toggler-icon"></span> |     <span class="navbar-toggler-icon"></span> | ||||||
|   </button> |   </button> | ||||||
|   <form (ngSubmit)="search()" class="w-100"> |   <form (ngSubmit)="search()" class="w-100 m-1"> | ||||||
|     <input class="form-control form-control-dark" type="text" placeholder="Search" aria-label="Search" |     <input class="form-control form-control-dark" type="text" placeholder="Search" aria-label="Search" | ||||||
|       [formControl]="searchField" [ngbTypeahead]="searchAutoComplete" (selectItem)="itemSelected($event)"> |       [formControl]="searchField" [ngbTypeahead]="searchAutoComplete" (selectItem)="itemSelected($event)"> | ||||||
|   </form> |   </form> | ||||||
|   <ul class="navbar-nav px-3"> |  | ||||||
|     <li class="nav-item text-nowrap"> |  | ||||||
|       <a class="nav-link" href="accounts/logout/"> |  | ||||||
|         <svg class="buttonicon" fill="currentColor"> |  | ||||||
|           <use xlink:href="assets/bootstrap-icons.svg#door-closed"/> |  | ||||||
|         </svg> |  | ||||||
|         Logout |  | ||||||
|       </a> |  | ||||||
|     </li> |  | ||||||
|   </ul> |  | ||||||
| </nav> | </nav> | ||||||
|  |  | ||||||
| <div class="container-fluid"> | <div class="container-fluid"> | ||||||
| @@ -151,7 +141,15 @@ | |||||||
|               <svg class="sidebaricon" fill="currentColor"> |               <svg class="sidebaricon" fill="currentColor"> | ||||||
|                 <use xlink:href="assets/bootstrap-icons.svg#link"/> |                 <use xlink:href="assets/bootstrap-icons.svg#link"/> | ||||||
|               </svg> |               </svg> | ||||||
|               Github |               GitHub | ||||||
|  |             </a> | ||||||
|  |           </li> | ||||||
|  |           <li class="nav-item"> | ||||||
|  |             <a class="nav-link" href="accounts/logout/"> | ||||||
|  |               <svg class="sidebaricon" fill="currentColor"> | ||||||
|  |                 <use xlink:href="assets/bootstrap-icons.svg#door-open"/> | ||||||
|  |               </svg> | ||||||
|  |               Logout | ||||||
|             </a> |             </a> | ||||||
|           </li> |           </li> | ||||||
|         </ul> |         </ul> | ||||||
|   | |||||||
| @@ -1,4 +1,6 @@ | |||||||
|  |  | ||||||
|  | @import "/src/theme"; | ||||||
|  |  | ||||||
|   /* |   /* | ||||||
|  * Sidebar |  * Sidebar | ||||||
|  */ |  */ | ||||||
| @@ -15,14 +17,15 @@ | |||||||
|  |  | ||||||
| @media (max-width: 767.98px) { | @media (max-width: 767.98px) { | ||||||
|   .sidebar { |   .sidebar { | ||||||
|     top: 5rem; |     top: 3rem; | ||||||
|   } |   } | ||||||
| } | } | ||||||
|  |  | ||||||
| .sidebar-sticky { | .sidebar-sticky { | ||||||
|   position: relative; |   position: relative; | ||||||
|   top: 0; |   top: 0; | ||||||
|   height: calc(100vh - 48px); |   /* height: calc(100vh - 48px); */ | ||||||
|  |   height: 100%; | ||||||
|   padding-top: .5rem; |   padding-top: .5rem; | ||||||
|   overflow-x: hidden; |   overflow-x: hidden; | ||||||
|   overflow-y: auto; /* Scrollable contents if viewport is shorter than content. */ |   overflow-y: auto; /* Scrollable contents if viewport is shorter than content. */ | ||||||
| @@ -46,7 +49,7 @@ | |||||||
| } | } | ||||||
|  |  | ||||||
| .sidebar .nav-link.active { | .sidebar .nav-link.active { | ||||||
|   color: #007bff; |   color: $primary; | ||||||
| } | } | ||||||
|  |  | ||||||
| .sidebar .nav-link:hover .sidebaricon, | .sidebar .nav-link:hover .sidebaricon, | ||||||
|   | |||||||
| @@ -1,5 +1,5 @@ | |||||||
| <div class="form-group form-check"> | <div class="form-group custom-control custom-checkbox"> | ||||||
|   <input type="checkbox" class="form-check-input" [id]="inputId" [(ngModel)]="value" (change)="onChange(value)" (blur)="onTouched()" [disabled]="disabled"> |   <input type="checkbox" class="custom-control-input" [id]="inputId" [(ngModel)]="value" (change)="onChange(value)" (blur)="onTouched()" [disabled]="disabled"> | ||||||
|   <label class="form-check-label" [for]="inputId">{{title}}</label> |   <label class="custom-control-label" [for]="inputId">{{title}}</label> | ||||||
|   <small *ngIf="hint" class="form-text text-muted">{{hint}}</small> |   <small *ngIf="hint" class="form-text text-muted">{{hint}}</small> | ||||||
| </div> | </div> | ||||||
| @@ -1,6 +1,7 @@ | |||||||
| <div class="row pt-3 pb-1 mb-3 border-bottom align-items-center" > | <div class="row pt-3 pb-1 mb-3 border-bottom align-items-center" > | ||||||
|   <div class="col text-truncate"> |   <div class="col-md text-truncate"> | ||||||
|     <h1 class="h2 text-truncate" style="line-height: 1.4">{{title}}</h1> |     <p class="h2 text-truncate" style="line-height: 1.4">{{title}}</p> | ||||||
|  |     <p *ngIf="subTitle" class="h5 text-truncate" style="line-height: 1.4">{{subTitle}}</p> | ||||||
|   </div> |   </div> | ||||||
|   <div class="btn-toolbar col-auto"> |   <div class="btn-toolbar col-auto"> | ||||||
|     <ng-content></ng-content> |     <ng-content></ng-content> | ||||||
|   | |||||||
| @@ -12,6 +12,9 @@ export class PageHeaderComponent implements OnInit { | |||||||
|   @Input() |   @Input() | ||||||
|   title: string = "" |   title: string = "" | ||||||
|  |  | ||||||
|  |   @Input() | ||||||
|  |   subTitle: string = "" | ||||||
|  |  | ||||||
|   ngOnInit(): void { |   ngOnInit(): void { | ||||||
|   } |   } | ||||||
|  |  | ||||||
|   | |||||||
| @@ -1,13 +1,16 @@ | |||||||
|  | <app-page-header title="Dashboard" subTitle="Welcome to paperless-ng!"> | ||||||
| <app-page-header title="Dashboard"> |   <img src="assets/logo.svg" height="80" class="m-2"> | ||||||
| </app-page-header> | </app-page-header> | ||||||
|  |  | ||||||
| <p>Welcome to paperless-ng!</p> |  | ||||||
|  |  | ||||||
| <div class='row'> | <div class='row'> | ||||||
|   <div class="col-lg"> |   <div class="col-lg"> | ||||||
|     <ng-container *ngFor="let v of savedDashboardViews"> |     <ng-container *ngFor="let v of savedDashboardViews"> | ||||||
|       <h4>{{v.viewConfig.title}}</h4> |  | ||||||
|  |       <div class="card mb-3"> | ||||||
|  |         <div class="card-header"> | ||||||
|  |           <h5 class="card-title mb-0">{{v.viewConfig.title}}</h5> | ||||||
|  |         </div> | ||||||
|  |         <div class="card-body text-dark"> | ||||||
|  |  | ||||||
|           <table class="table table-sm table-hover table-borderless"> |           <table class="table table-sm table-hover table-borderless"> | ||||||
|             <thead> |             <thead> | ||||||
| @@ -23,28 +26,49 @@ | |||||||
|               </tr> |               </tr> | ||||||
|             </tbody> |             </tbody> | ||||||
|           </table> |           </table> | ||||||
|  |         </div> | ||||||
|  |       </div> | ||||||
|     </ng-container> |     </ng-container> | ||||||
|     <ng-container *ngIf="savedDashboardViews.length == 0"> |     <ng-container *ngIf="savedDashboardViews.length == 0"> | ||||||
|       <h4>Saved views</h4> |       <div class="card mb-3"> | ||||||
|       <p>This space is reserved to display your saved views. Go to your documents and save a view to have it displayed here!</p> |         <div class="card-header"> | ||||||
|  |           <h5 class="card-title mb-0">Saved views</h5> | ||||||
|  |         </div> | ||||||
|  |         <div class="card-body text-dark"> | ||||||
|  |           <p class="card-text">This space is reserved to display your saved views. Go to your documents and save a view | ||||||
|  |             to have it displayed | ||||||
|  |             here!</p> | ||||||
|  |         </div> | ||||||
|  |       </div> | ||||||
|  |  | ||||||
|     </ng-container> |     </ng-container> | ||||||
|  |  | ||||||
|   </div> |   </div> | ||||||
|   <div class="col-lg"> |   <div class="col-lg"> | ||||||
|     <h4>Statistics</h4> |  | ||||||
|     <p>Documents in inbox: {{statistics.documents_inbox}}</p> |     <div class="card mb-3"> | ||||||
|     <p>Total documents: {{statistics.documents_total}}</p> |       <div class="card-header"> | ||||||
|     <h4>Upload new Document</h4> |         <h5 class="card-title mb-0">Statistics</h5> | ||||||
|  |       </div> | ||||||
|  |       <div class="card-body text-dark"> | ||||||
|  |         <p class="card-text">Documents in inbox: {{statistics.documents_inbox}}</p> | ||||||
|  |         <p class="card-text">Total documents: {{statistics.documents_total}}</p> | ||||||
|  |       </div> | ||||||
|  |     </div> | ||||||
|  |  | ||||||
|  |     <div class="card mb-3"> | ||||||
|  |       <div class="card-header"> | ||||||
|  |         <h5 class="card-title mb-0">Upload new documents</h5> | ||||||
|  |       </div> | ||||||
|  |       <div class="card-body text-dark"> | ||||||
|         <form> |         <form> | ||||||
|       <ngx-file-drop |           <ngx-file-drop dropZoneLabel="Drop documents here" (onFileDrop)="dropped($event)" | ||||||
|         dropZoneLabel="Drop documents here" |             (onFileOver)="fileOver($event)" (onFileLeave)="fileLeave($event)" dropZoneClassName="bg-light mt-4 card"> | ||||||
|         (onFileDrop)="dropped($event)" |  | ||||||
|         (onFileOver)="fileOver($event)" |  | ||||||
|         (onFileLeave)="fileLeave($event)" |  | ||||||
|         dropZoneClassName="bg-light mt-4 card"> |  | ||||||
|  |  | ||||||
|           </ngx-file-drop> |           </ngx-file-drop> | ||||||
|         </form> |         </form> | ||||||
|       </div> |       </div> | ||||||
|     </div> |     </div> | ||||||
|  |  | ||||||
|  |   </div> | ||||||
|  | </div> | ||||||
| @@ -5,13 +5,13 @@ | |||||||
|         </svg> |         </svg> | ||||||
|         <span class="d-none d-lg-inline"> Delete</span> |         <span class="d-none d-lg-inline"> Delete</span> | ||||||
|     </button> |     </button> | ||||||
|     <a [href]="downloadUrl" class="btn btn-sm btn-outline-secondary mr-2"> |     <a [href]="downloadUrl" class="btn btn-sm btn-outline-primary mr-2"> | ||||||
|         <svg class="buttonicon" fill="currentColor"> |         <svg class="buttonicon" fill="currentColor"> | ||||||
|             <use xlink:href="assets/bootstrap-icons.svg#download" /> |             <use xlink:href="assets/bootstrap-icons.svg#download" /> | ||||||
|         </svg> |         </svg> | ||||||
|         <span class="d-none d-lg-inline"> Download</span> |         <span class="d-none d-lg-inline"> Download</span> | ||||||
|     </a> |     </a> | ||||||
|     <button type="button" class="btn btn-sm btn-outline-secondary" (click)="close()"> |     <button type="button" class="btn btn-sm btn-outline-primary" (click)="close()"> | ||||||
|         <svg class="buttonicon" fill="currentColor"> |         <svg class="buttonicon" fill="currentColor"> | ||||||
|             <use xlink:href="assets/bootstrap-icons.svg#x" /> |             <use xlink:href="assets/bootstrap-icons.svg#x" /> | ||||||
|         </svg> |         </svg> | ||||||
|   | |||||||
| @@ -2,19 +2,19 @@ | |||||||
|  |  | ||||||
|   <div class="btn-group btn-group-toggle mr-2" ngbRadioGroup [(ngModel)]="displayMode" |   <div class="btn-group btn-group-toggle mr-2" ngbRadioGroup [(ngModel)]="displayMode" | ||||||
|     (ngModelChange)="saveDisplayMode()"> |     (ngModelChange)="saveDisplayMode()"> | ||||||
|     <label ngbButtonLabel class="btn-outline-secondary btn-sm"> |     <label ngbButtonLabel class="btn-outline-primary btn-sm"> | ||||||
|       <input ngbButton type="radio" class="btn btn-sm" value="details"> |       <input ngbButton type="radio" class="btn btn-sm" value="details"> | ||||||
|       <svg class="toolbaricon" fill="currentColor"> |       <svg class="toolbaricon" fill="currentColor"> | ||||||
|         <use xlink:href="assets/bootstrap-icons.svg#list-ul" /> |         <use xlink:href="assets/bootstrap-icons.svg#list-ul" /> | ||||||
|       </svg> |       </svg> | ||||||
|     </label> |     </label> | ||||||
|     <label ngbButtonLabel class="btn-outline-secondary btn-sm"> |     <label ngbButtonLabel class="btn-outline-primary btn-sm"> | ||||||
|       <input ngbButton type="radio" class="btn btn-sm" value="smallCards"> |       <input ngbButton type="radio" class="btn btn-sm" value="smallCards"> | ||||||
|       <svg class="toolbaricon" fill="currentColor"> |       <svg class="toolbaricon" fill="currentColor"> | ||||||
|         <use xlink:href="assets/bootstrap-icons.svg#grid" /> |         <use xlink:href="assets/bootstrap-icons.svg#grid" /> | ||||||
|       </svg> |       </svg> | ||||||
|     </label> |     </label> | ||||||
|     <label ngbButtonLabel class="btn-outline-secondary btn-sm"> |     <label ngbButtonLabel class="btn-outline-primary btn-sm"> | ||||||
|       <input ngbButton type="radio" class="btn btn-sm" value="largeCards"> |       <input ngbButton type="radio" class="btn btn-sm" value="largeCards"> | ||||||
|       <svg class="toolbaricon" fill="currentColor"> |       <svg class="toolbaricon" fill="currentColor"> | ||||||
|         <use xlink:href="assets/bootstrap-icons.svg#hdd-stack" /> |         <use xlink:href="assets/bootstrap-icons.svg#hdd-stack" /> | ||||||
| @@ -24,19 +24,19 @@ | |||||||
|   <div class="btn-group btn-group-toggle mr-2" ngbRadioGroup [(ngModel)]="docs.sortDirection" |   <div class="btn-group btn-group-toggle mr-2" ngbRadioGroup [(ngModel)]="docs.sortDirection" | ||||||
|     *ngIf="!docs.viewId"> |     *ngIf="!docs.viewId"> | ||||||
|     <div ngbDropdown class="btn-group"> |     <div ngbDropdown class="btn-group"> | ||||||
|       <button class="btn btn-outline-secondary btn-sm" id="dropdownBasic1" ngbDropdownToggle>Sort by</button> |       <button class="btn btn-outline-primary btn-sm" id="dropdownBasic1" ngbDropdownToggle>Sort by</button> | ||||||
|       <div ngbDropdownMenu aria-labelledby="dropdownBasic1"> |       <div ngbDropdownMenu aria-labelledby="dropdownBasic1"> | ||||||
|         <button *ngFor="let f of getSortFields()" ngbDropdownItem (click)="setSort(f.field)" |         <button *ngFor="let f of getSortFields()" ngbDropdownItem (click)="setSort(f.field)" | ||||||
|           [class.active]="docs.sortField == f.field">{{f.name}}</button> |           [class.active]="docs.sortField == f.field">{{f.name}}</button> | ||||||
|       </div> |       </div> | ||||||
|     </div> |     </div> | ||||||
|     <label ngbButtonLabel class="btn-outline-secondary btn-sm"> |     <label ngbButtonLabel class="btn-outline-primary btn-sm"> | ||||||
|       <input ngbButton type="radio" class="btn btn-sm" value="asc"> |       <input ngbButton type="radio" class="btn btn-sm" value="asc"> | ||||||
|       <svg class="toolbaricon" fill="currentColor"> |       <svg class="toolbaricon" fill="currentColor"> | ||||||
|         <use xlink:href="assets/bootstrap-icons.svg#sort-alpha-down" /> |         <use xlink:href="assets/bootstrap-icons.svg#sort-alpha-down" /> | ||||||
|       </svg> |       </svg> | ||||||
|     </label> |     </label> | ||||||
|     <label ngbButtonLabel class="btn-outline-secondary btn-sm"> |     <label ngbButtonLabel class="btn-outline-primary btn-sm"> | ||||||
|       <input ngbButton type="radio" class="btn btn-sm" value="des"> |       <input ngbButton type="radio" class="btn btn-sm" value="des"> | ||||||
|       <svg class="toolbaricon" fill="currentColor"> |       <svg class="toolbaricon" fill="currentColor"> | ||||||
|         <use xlink:href="assets/bootstrap-icons.svg#sort-alpha-up-alt" /> |         <use xlink:href="assets/bootstrap-icons.svg#sort-alpha-up-alt" /> | ||||||
| @@ -45,7 +45,7 @@ | |||||||
|   </div> |   </div> | ||||||
|   <div class="btn-group" *ngIf="!docs.viewId"> |   <div class="btn-group" *ngIf="!docs.viewId"> | ||||||
|  |  | ||||||
|     <button type="button" class="btn btn-sm btn-outline-secondary" (click)="showFilter=!showFilter"> |     <button type="button" class="btn btn-sm btn-outline-primary" (click)="showFilter=!showFilter"> | ||||||
|       <svg class="toolbaricon" fill="currentColor"> |       <svg class="toolbaricon" fill="currentColor"> | ||||||
|         <use xlink:href="assets/bootstrap-icons.svg#funnel" /> |         <use xlink:href="assets/bootstrap-icons.svg#funnel" /> | ||||||
|       </svg> |       </svg> | ||||||
| @@ -53,7 +53,7 @@ | |||||||
|     </button> |     </button> | ||||||
|  |  | ||||||
|     <div class="btn-group" ngbDropdown role="group"> |     <div class="btn-group" ngbDropdown role="group"> | ||||||
|       <button class="btn btn-sm btn-outline-secondary dropdown-toggle-split" ngbDropdownToggle></button> |       <button class="btn btn-sm btn-outline-primary dropdown-toggle-split" ngbDropdownToggle></button> | ||||||
|       <div class="dropdown-menu" ngbDropdownMenu> |       <div class="dropdown-menu" ngbDropdownMenu> | ||||||
|         <button ngbDropdownItem *ngFor="let config of savedViewConfigService.getConfigs()" (click)="loadViewConfig(config)">{{config.title}}</button> |         <button ngbDropdownItem *ngFor="let config of savedViewConfigService.getConfigs()" (click)="loadViewConfig(config)">{{config.title}}</button> | ||||||
|         <div class="dropdown-divider" *ngIf="savedViewConfigService.getConfigs().length > 0"></div> |         <div class="dropdown-divider" *ngIf="savedViewConfigService.getConfigs().length > 0"></div> | ||||||
| @@ -72,7 +72,7 @@ | |||||||
| </div> | </div> | ||||||
|  |  | ||||||
| <ngb-pagination [pageSize]="docs.currentPageSize" [collectionSize]="docs.collectionSize" [(page)]="docs.currentPage" [maxSize]="5" | <ngb-pagination [pageSize]="docs.currentPageSize" [collectionSize]="docs.collectionSize" [(page)]="docs.currentPage" [maxSize]="5" | ||||||
|   [rotate]="true" [boundaryLinks]="true" (pageChange)="reload()" aria-label="Default pagination"></ngb-pagination> |   [rotate]="true" (pageChange)="reload()" aria-label="Default pagination"></ngb-pagination> | ||||||
|  |  | ||||||
| <div *ngIf="displayMode == 'largeCards'"> | <div *ngIf="displayMode == 'largeCards'"> | ||||||
|   <app-document-card-large *ngFor="let d of docs.documents" [document]="d" [details]="d.content"> |   <app-document-card-large *ngFor="let d of docs.documents" [document]="d" [details]="d.content"> | ||||||
|   | |||||||
| @@ -1,5 +1,5 @@ | |||||||
| <app-page-header title="Correspondents"> | <app-page-header title="Correspondents"> | ||||||
|   <button type="button" class="btn btn-sm btn-outline-secondary" (click)="openCreateDialog()"> |   <button type="button" class="btn btn-sm btn-outline-primary" (click)="openCreateDialog()"> | ||||||
|     Create |     Create | ||||||
|   </button> |   </button> | ||||||
| </app-page-header> | </app-page-header> | ||||||
|   | |||||||
| @@ -1,5 +1,5 @@ | |||||||
| <app-page-header title="Document types"> | <app-page-header title="Document types"> | ||||||
|   <button type="button" class="btn btn-sm btn-outline-secondary" (click)="openCreateDialog()"> |   <button type="button" class="btn btn-sm btn-outline-primary" (click)="openCreateDialog()"> | ||||||
|     Create |     Create | ||||||
|   </button> |   </button> | ||||||
| </app-page-header> | </app-page-header> | ||||||
|   | |||||||
| @@ -1,7 +1,7 @@ | |||||||
| <app-page-header title="Logs"> | <app-page-header title="Logs"> | ||||||
|  |  | ||||||
|   <div ngbDropdown class="btn-group"> |   <div ngbDropdown class="btn-group"> | ||||||
|     <button class="btn btn-outline-secondary btn-sm" id="dropdownBasic1" ngbDropdownToggle> |     <button class="btn btn-outline-primary btn-sm" id="dropdownBasic1" ngbDropdownToggle> | ||||||
|       <svg class="toolbaricon" fill="currentColor"> |       <svg class="toolbaricon" fill="currentColor"> | ||||||
|         <use xlink:href="assets/bootstrap-icons.svg#funnel" /> |         <use xlink:href="assets/bootstrap-icons.svg#funnel" /> | ||||||
|       </svg> |       </svg> | ||||||
|   | |||||||
| @@ -1,5 +1,5 @@ | |||||||
| <app-page-header title="Tags"> | <app-page-header title="Tags"> | ||||||
|   <button type="button" class="btn btn-sm btn-outline-secondary" (click)="openCreateDialog()"> |   <button type="button" class="btn btn-sm btn-outline-primary" (click)="openCreateDialog()"> | ||||||
|     Create |     Create | ||||||
|   </button> |   </button> | ||||||
| </app-page-header> | </app-page-header> | ||||||
|   | |||||||
| @@ -4,7 +4,7 @@ | |||||||
|   <meta charset="utf-8"> |   <meta charset="utf-8"> | ||||||
|   <title>PaperlessUi</title> |   <title>PaperlessUi</title> | ||||||
|   <base href="/"> |   <base href="/"> | ||||||
|   <meta name="viewport" content="width=device-width, initial-scale=1"> |   <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> | ||||||
|   <link rel="icon" type="image/x-icon" href="favicon.ico"> |   <link rel="icon" type="image/x-icon" href="favicon.ico"> | ||||||
| </head> | </head> | ||||||
| <body> | <body> | ||||||
|   | |||||||
| @@ -1,4 +1,6 @@ | |||||||
| @import "bootstrap"; | @import "theme"; | ||||||
|  |  | ||||||
|  | @import "node_modules/bootstrap/scss/bootstrap"; | ||||||
|  |  | ||||||
|  |  | ||||||
| .toolbaricon { | .toolbaricon { | ||||||
| @@ -27,12 +29,15 @@ body { | |||||||
|   border-color: rgba(255, 255, 255, .1); |   border-color: rgba(255, 255, 255, .1); | ||||||
| } | } | ||||||
|  |  | ||||||
|  | .form-control-dark::placeholder { | ||||||
|  |   color: #fff; | ||||||
|  | } | ||||||
|  |  | ||||||
| .form-control-dark:focus { | .form-control-dark:focus { | ||||||
|   border-color: transparent; |   border-color: transparent; | ||||||
|   box-shadow: 0 0 0 3px rgba(255, 255, 255, .25); |   box-shadow: 0 0 0 3px rgba(255, 255, 255, .25); | ||||||
| } | } | ||||||
|  |  | ||||||
|  |  | ||||||
| .asc { | .asc { | ||||||
|   background-color: #f8f9fa!important; |   background-color: #f8f9fa!important; | ||||||
| } | } | ||||||
|   | |||||||
							
								
								
									
										6
									
								
								src-ui/src/theme.scss
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								src-ui/src/theme.scss
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,6 @@ | |||||||
|  | $paperless-green: #17541f; | ||||||
|  | $primary: #17541f; | ||||||
|  |  | ||||||
|  | $theme-colors: ( | ||||||
|  |   "primary": $primary | ||||||
|  | ); | ||||||
		Reference in New Issue
	
	Block a user
	 Jonas Winkler
					Jonas Winkler