|
@@ -17,6 +17,10 @@
|
|
|
|
|
|
.breadcrumb-spacer.flex-grow-1.h-100((dblclick)='editPath()')
|
|
.breadcrumb-spacer.flex-grow-1.h-100((dblclick)='editPath()')
|
|
|
|
|
|
|
|
+ button.btn.btn-link.btn-sm.flex-shrink-0.d-flex(*ngIf='!showFilter', (click)='showFilter = true')
|
|
|
|
+ i.fas.fa-filter.me-1
|
|
|
|
+ div(translate) Filter
|
|
|
|
+
|
|
button.btn.btn-link.btn-sm.flex-shrink-0.d-flex((click)='openCreateDirectoryModal()')
|
|
button.btn.btn-link.btn-sm.flex-shrink-0.d-flex((click)='openCreateDirectoryModal()')
|
|
i.fas.fa-plus.me-1
|
|
i.fas.fa-plus.me-1
|
|
div(translate) Create directory
|
|
div(translate) Create directory
|
|
@@ -31,6 +35,19 @@
|
|
|
|
|
|
button.btn.btn-link.text-decoration-none((click)='close()') !{require('../../../tabby-core/src/icons/times.svg')}
|
|
button.btn.btn-link.text-decoration-none((click)='close()') !{require('../../../tabby-core/src/icons/times.svg')}
|
|
|
|
|
|
|
|
+.filter-bar.px-3.py-2.border-bottom(*ngIf='showFilter')
|
|
|
|
+ .input-group
|
|
|
|
+ input.form-control(
|
|
|
|
+ type='text',
|
|
|
|
+ placeholder='Filter...',
|
|
|
|
+ autofocus,
|
|
|
|
+ [(ngModel)]='filterText',
|
|
|
|
+ (input)='onFilterChange()',
|
|
|
|
+ (keydown.escape)='clearFilter()'
|
|
|
|
+ )
|
|
|
|
+ button.btn.btn-secondary((click)='clearFilter()')
|
|
|
|
+ i.fas.fa-times
|
|
|
|
+
|
|
.body(dropZone, (transfer)='uploadOneFolder($event)')
|
|
.body(dropZone, (transfer)='uploadOneFolder($event)')
|
|
a.alert.alert-info.d-flex.align-items-center(
|
|
a.alert.alert-info.d-flex.align-items-center(
|
|
*ngIf='shouldShowCWDTip && !cwdDetectionAvailable',
|
|
*ngIf='shouldShowCWDTip && !cwdDetectionAvailable',
|
|
@@ -47,13 +64,13 @@
|
|
div(*ngIf='fileList === null', translate) Loading
|
|
div(*ngIf='fileList === null', translate) Loading
|
|
.list-group.list-group-light(*ngIf='fileList !== null')
|
|
.list-group.list-group-light(*ngIf='fileList !== null')
|
|
.list-group-item.list-group-item-action.d-flex.align-items-center(
|
|
.list-group-item.list-group-item-action.d-flex.align-items-center(
|
|
- *ngIf='path !== "/"',
|
|
|
|
|
|
+ *ngIf='path !== "/" && (!showFilter || filterText.trim() === "")',
|
|
(click)='goUp()'
|
|
(click)='goUp()'
|
|
)
|
|
)
|
|
i.fas.fa-fw.fa-level-up-alt
|
|
i.fas.fa-fw.fa-level-up-alt
|
|
div(translate) Go up
|
|
div(translate) Go up
|
|
.list-group-item.list-group-item-action.d-flex.align-items-center(
|
|
.list-group-item.list-group-item-action.d-flex.align-items-center(
|
|
- *ngFor='let item of fileList',
|
|
|
|
|
|
+ *ngFor='let item of filteredFileList',
|
|
(contextmenu)='showContextMenu(item, $event)',
|
|
(contextmenu)='showContextMenu(item, $event)',
|
|
(click)='open(item)'
|
|
(click)='open(item)'
|
|
)
|
|
)
|
|
@@ -63,3 +80,6 @@
|
|
.size(*ngIf='!item.isDirectory') {{item.size|filesize}}
|
|
.size(*ngIf='!item.isDirectory') {{item.size|filesize}}
|
|
.date {{item.modified|tabbyDate}}
|
|
.date {{item.modified|tabbyDate}}
|
|
.mode {{getModeString(item)}}
|
|
.mode {{getModeString(item)}}
|
|
|
|
+ .alert.alert-info.text-center.mt-3(*ngIf='fileList !== null && filteredFileList.length === 0 && showFilter && filterText.trim() !== ""')
|
|
|
|
+ i.fas.fa-search.me-2
|
|
|
|
+ span(translate) No files match the filter "{{filterText}}"
|