- @if (testLoading) {
+ @if (testLoading()) {
- } @else if (testResult) {
-
{{testResult}}
- } @else if (testFailed) {
+ } @else if (testResult()) {
+
{{testResult()}}
+ } @else if (testFailed()) {
Path test failed
} @else {
No document selected
@@ -42,7 +42,7 @@
[compareWith]="compareDocuments"
[trackByFn]="trackByFn"
[minTermLength]="2"
- [loading]="loading"
+ [loading]="loading()"
[typeahead]="documentsInput$"
(change)="testPath($event)">
diff --git a/src-ui/src/app/components/common/edit-dialog/storage-path-edit-dialog/storage-path-edit-dialog.component.spec.ts b/src-ui/src/app/components/common/edit-dialog/storage-path-edit-dialog/storage-path-edit-dialog.component.spec.ts
index 67bbba641..46401e492 100644
--- a/src-ui/src/app/components/common/edit-dialog/storage-path-edit-dialog/storage-path-edit-dialog.component.spec.ts
+++ b/src-ui/src/app/components/common/edit-dialog/storage-path-edit-dialog/storage-path-edit-dialog.component.spec.ts
@@ -58,17 +58,17 @@ describe('StoragePathEditDialogComponent', () => {
fixture.detectChanges()
component.testPath({ id: 1 })
expect(testSpy).toHaveBeenCalledWith('test/{{title}}', 1)
- expect(component.testResult).toBe('test/abc123')
- expect(component.testFailed).toBeFalsy()
+ expect(component.testResult()).toBe('test/abc123')
+ expect(component.testFailed()).toBeFalsy()
// test failed
testSpy.mockReturnValueOnce(of(''))
component.testPath({ id: 1 })
- expect(component.testResult).toBeNull()
- expect(component.testFailed).toBeTruthy()
+ expect(component.testResult()).toBeNull()
+ expect(component.testFailed()).toBeTruthy()
component.testPath(null)
- expect(component.testResult).toBeNull()
+ expect(component.testResult()).toBeNull()
})
it('should compare two documents by id', () => {
diff --git a/src-ui/src/app/components/common/edit-dialog/storage-path-edit-dialog/storage-path-edit-dialog.component.ts b/src-ui/src/app/components/common/edit-dialog/storage-path-edit-dialog/storage-path-edit-dialog.component.ts
index f0d17a965..1414b9722 100644
--- a/src-ui/src/app/components/common/edit-dialog/storage-path-edit-dialog/storage-path-edit-dialog.component.ts
+++ b/src-ui/src/app/components/common/edit-dialog/storage-path-edit-dialog/storage-path-edit-dialog.component.ts
@@ -1,5 +1,5 @@
import { AsyncPipe, NgTemplateOutlet } from '@angular/common'
-import { Component, OnDestroy, inject } from '@angular/core'
+import { Component, OnDestroy, inject, signal } from '@angular/core'
import {
FormControl,
FormGroup,
@@ -65,9 +65,9 @@ export class StoragePathEditDialogComponent
public documentsInput$ = new Subject()
public foundDocuments$: Observable
private testDocument: Document
- public testResult: string
- public testFailed: boolean = false
- public testLoading = false
+ readonly testResult = signal(undefined)
+ readonly testFailed = signal(false)
+ readonly testLoading = signal(false)
constructor() {
super()
@@ -99,22 +99,22 @@ export class StoragePathEditDialogComponent
public testPath(document: Document) {
if (!document) {
- this.testResult = null
+ this.testResult.set(null)
return
}
this.testDocument = document
- this.testLoading = true
+ this.testLoading.set(true)
;(this.service as StoragePathService)
.testPath(this.objectForm.get('path').value, document.id)
.subscribe((result) => {
if (result?.length) {
- this.testResult = result
- this.testFailed = false
+ this.testResult.set(result)
+ this.testFailed.set(false)
} else {
- this.testResult = null
- this.testFailed = true
+ this.testResult.set(null)
+ this.testFailed.set(true)
}
- this.testLoading = false
+ this.testLoading.set(false)
})
}
diff --git a/src-ui/src/app/components/common/edit-dialog/tag-edit-dialog/tag-edit-dialog.component.html b/src-ui/src/app/components/common/edit-dialog/tag-edit-dialog/tag-edit-dialog.component.html
index 0af48c58b..3e26f7018 100644
--- a/src-ui/src/app/components/common/edit-dialog/tag-edit-dialog/tag-edit-dialog.component.html
+++ b/src-ui/src/app/components/common/edit-dialog/tag-edit-dialog/tag-edit-dialog.component.html
@@ -12,7 +12,7 @@
-
+
diff --git a/src-ui/src/app/components/common/edit-dialog/tag-edit-dialog/tag-edit-dialog.component.ts b/src-ui/src/app/components/common/edit-dialog/tag-edit-dialog/tag-edit-dialog.component.ts
index 3855f9008..d7d9e393e 100644
--- a/src-ui/src/app/components/common/edit-dialog/tag-edit-dialog/tag-edit-dialog.component.ts
+++ b/src-ui/src/app/components/common/edit-dialog/tag-edit-dialog/tag-edit-dialog.component.ts
@@ -1,4 +1,4 @@
-import { Component, inject } from '@angular/core'
+import { Component, inject, signal } from '@angular/core'
import {
FormControl,
FormGroup,
@@ -35,7 +35,7 @@ import { TextComponent } from '../../input/text/text.component'
],
})
export class TagEditDialogComponent extends EditDialogComponent {
- tags: Tag[]
+ readonly tags = signal([])
constructor() {
super()
@@ -43,7 +43,7 @@ export class TagEditDialogComponent extends EditDialogComponent {
this.userService = inject(UserService)
this.settingsService = inject(SettingsService)
this.service.listAll().subscribe((result) => {
- this.tags = result.results
+ this.tags.set(result.results)
})
}
diff --git a/src-ui/src/app/components/common/filterable-dropdown/filterable-dropdown.component.html b/src-ui/src/app/components/common/filterable-dropdown/filterable-dropdown.component.html
index 27e0518bf..0c73227bc 100644
--- a/src-ui/src/app/components/common/filterable-dropdown/filterable-dropdown.component.html
+++ b/src-ui/src/app/components/common/filterable-dropdown/filterable-dropdown.component.html
@@ -58,8 +58,8 @@
}
@if ((selectionModel.items | filter: filterText:'name').length > 0) {
-