Browse Source

fixed #8404 - missing SFTP progressbar

Eugene Pankov 2 years ago
parent
commit
1112766ac0

+ 2 - 0
app/src/plugins.ts

@@ -27,6 +27,8 @@ const cachedBuiltinModules = {
     '@angular/compiler': require('@angular/compiler'),
     '@angular/core': require('@angular/core'),
     '@angular/forms': require('@angular/forms'),
+    '@angular/localize': require('@angular/localize'),
+    '@angular/localize/init': require('@angular/localize/init'),
     '@angular/platform-browser': require('@angular/platform-browser'),
     '@angular/platform-browser/animations': require('@angular/platform-browser/animations'),
     '@angular/platform-browser-dynamic': require('@angular/platform-browser-dynamic'),

+ 1 - 0
package.json

@@ -7,6 +7,7 @@
     "@angular/compiler-cli": "^15.2.6",
     "@angular/core": "^15.2.6",
     "@angular/forms": "^15.2.6",
+    "@angular/localize": "^15.2.9",
     "@angular/platform-browser": "^15.2.6",
     "@angular/platform-browser-dynamic": "^15.2.6",
     "@biesbjerg/ngx-translate-extract-marker": "^1.0.0",

+ 1 - 1
tabby-core/src/components/appRoot.component.pug

@@ -51,7 +51,7 @@ title-bar(
                 #activeTransfersDropdown='ngbDropdown'
             )
                 button.btn.btn-secondary.btn-tab-bar(
-                    *ngIf='activeTransfers.length > 0',
+                    [hidden]='activeTransfers.length == 0',
                     title='File transfers',
                     ngbDropdownToggle
                 ) !{require('../icons/transfers.svg')}

+ 1 - 6
tabby-core/src/components/transfersMenu.component.pug

@@ -6,12 +6,7 @@
     .icon(*ngIf='!isDownload(transfer)') !{require('../icons/upload.svg')}
     .main
         label.no-wrap([title]='transfer.getName()') {{transfer.getName()}}
-        .status(*ngIf='transfer.isComplete()')
-            ngb-progressbar(type='success', [value]='100')
-        .status(*ngIf='transfer.isCancelled()')
-            ngb-progressbar(type='danger', [value]='100')
-        .status(*ngIf='!transfer.isComplete() && !transfer.isCancelled()')
-            ngb-progressbar(type='info', [value]='getProgress(transfer)')
+        ngb-progressbar([type]='transfer.isComplete() ? "success" : transfer.isCancelled() ? "danger" : "info"', [value]='getProgress(transfer)')
         .metadata
             .size {{transfer.getSize()|filesize}}
             .speed(*ngIf='transfer.getSpeed()') {{transfer.getSpeed()|filesize}}/s

+ 2 - 0
tabby-core/src/index.ts

@@ -8,6 +8,8 @@ import { DragDropModule } from '@angular/cdk/drag-drop'
 import { TranslateModule, TranslateCompiler, TranslateService, MissingTranslationHandler } from '@ngx-translate/core'
 import { TranslateMessageFormatCompiler, MESSAGE_FORMAT_CONFIG } from 'ngx-translate-messageformat-compiler'
 
+import '@angular/localize/init'
+
 import { AppRootComponent } from './components/appRoot.component'
 import { CheckboxComponent } from './components/checkbox.component'
 import { TabBodyComponent } from './components/tabBody.component'

+ 7 - 0
tabby-core/src/theme.new.scss

@@ -171,6 +171,13 @@ body {
     }
 }
 
+.dropdown-menu {
+    --bs-dropdown-bg: var(--theme-bg-more);
+}
+
+.progress {
+    --bs-progress-height: 3px;
+}
 
 tab-body {
     terminal-toolbar {

+ 2 - 0
web/polyfills.ts

@@ -138,6 +138,8 @@ Tabby.registerModule('@angular/platform-browser', require('@angular/platform-bro
 Tabby.registerModule('@angular/platform-browser/animations', require('@angular/platform-browser/animations'))
 Tabby.registerModule('@angular/platform-browser-dynamic', require('@angular/platform-browser-dynamic'))
 Tabby.registerModule('@angular/animations', require('@angular/animations'))
+Tabby.registerModule('@angular/localize', require('@angular/localize'))
+Tabby.registerModule('@angular/localize/init', require('@angular/localize/init'))
 Tabby.registerModule('@ng-bootstrap/ng-bootstrap', require('@ng-bootstrap/ng-bootstrap'))
 Tabby.registerModule('ngx-toastr', require('ngx-toastr'))
 Tabby.registerModule('deepmerge', require('deepmerge'))

+ 20 - 0
yarn.lock

@@ -75,6 +75,15 @@
   dependencies:
     tslib "^2.3.0"
 
+"@angular/localize@^15.2.9":
+  version "15.2.9"
+  resolved "https://registry.yarnpkg.com/@angular/localize/-/localize-15.2.9.tgz#9fd960b5b6daab597c816b33e2f00977719c673f"
+  integrity sha512-7ZGK3BWwIukSK5ORWjM3y/FYj7/ZJFl1RO1GCeL/tHD4nq0kd3q3pYvcpnoi9HGl+q8AkL24xdsfzgCFo8SB0g==
+  dependencies:
+    "@babel/core" "7.19.3"
+    glob "8.1.0"
+    yargs "^17.2.1"
+
 "@angular/platform-browser-dynamic@^15.2.6":
   version "15.2.6"
   resolved "https://registry.yarnpkg.com/@angular/platform-browser-dynamic/-/platform-browser-dynamic-15.2.6.tgz#e3b347524b547385e90aad9bed59b5f14e6716cb"
@@ -4084,6 +4093,17 @@ glob-to-regexp@^0.4.1:
     once "^1.3.0"
     path-is-absolute "^1.0.0"
 
[email protected]:
+  version "8.1.0"
+  resolved "https://registry.yarnpkg.com/glob/-/glob-8.1.0.tgz#d388f656593ef708ee3e34640fdfb99a9fd1c33e"
+  integrity sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==
+  dependencies:
+    fs.realpath "^1.0.0"
+    inflight "^1.0.4"
+    inherits "2"
+    minimatch "^5.0.1"
+    once "^1.3.0"
+
 glob@^8.0.1, glob@^8.0.3:
   version "8.0.3"
   resolved "https://registry.yarnpkg.com/glob/-/glob-8.0.3.tgz#415c6eb2deed9e502c68fa44a272e6da6eeca42e"