From b9590fd0c8310ad8762b5794d71644a688d6205c Mon Sep 17 00:00:00 2001 From: Oleh Paduchak Date: Mon, 3 Nov 2025 15:35:37 +0200 Subject: [PATCH 1/2] fix(storage-item-selector): allow users to add files from google drive on addon setup --- .../storage-item-selector.component.html | 9 +++++++++ .../storage-item-selector.component.ts | 8 ++++++++ 2 files changed, 17 insertions(+) diff --git a/src/app/shared/components/addons/storage-item-selector/storage-item-selector.component.html b/src/app/shared/components/addons/storage-item-selector/storage-item-selector.component.html index 0d860844d..d2f04b986 100644 --- a/src/app/shared/components/addons/storage-item-selector/storage-item-selector.component.html +++ b/src/app/shared/components/addons/storage-item-selector/storage-item-selector.component.html @@ -44,6 +44,15 @@

[handleFolderSelection]="handleFolderSelection" [rootFolder]="selectedStorageItem()" > + @if (selectedStorageItem() !== null) { + + } } @else {
diff --git a/src/app/shared/components/addons/storage-item-selector/storage-item-selector.component.ts b/src/app/shared/components/addons/storage-item-selector/storage-item-selector.component.ts index b5fb14896..79ea944c5 100644 --- a/src/app/shared/components/addons/storage-item-selector/storage-item-selector.component.ts +++ b/src/app/shared/components/addons/storage-item-selector/storage-item-selector.component.ts @@ -22,6 +22,7 @@ import { OnInit, output, signal, + viewChild, } from '@angular/core'; import { takeUntilDestroyed, toSignal } from '@angular/core/rxjs-interop'; import { FormControl, FormsModule, ReactiveFormsModule } from '@angular/forms'; @@ -60,6 +61,8 @@ import { ResourceTypeInfoDialogComponent } from '../resource-type-info-dialog/re changeDetection: ChangeDetectionStrategy.OnPush, }) export class StorageItemSelectorComponent implements OnInit { + addFilesPicker = viewChild('filePicker'); + private destroyRef = inject(DestroyRef); private customDialogService = inject(CustomDialogService); private translateService = inject(TranslateService); @@ -236,6 +239,11 @@ export class StorageItemSelectorComponent implements OnInit { handleFolderSelection = (folder: StorageItem): void => { this.selectedStorageItem.set(folder); this.hasFolderChanged.set(folder?.itemId !== this.initiallySelectedStorageItem()?.itemId); + if (this.isGoogleFilePicker()) { + setTimeout(() => { + this.addFilesPicker()?.createPicker(); + }, 1000); + } }; private updateBreadcrumbs( From 187d2b2166127e280158aa056572327b5b6a3761 Mon Sep 17 00:00:00 2001 From: Oleh Paduchak Date: Tue, 4 Nov 2025 15:56:46 +0200 Subject: [PATCH 2/2] fix(storage-item-selector): replase set timeout with timer --- .../storage-item-selector.component.ts | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/app/shared/components/addons/storage-item-selector/storage-item-selector.component.ts b/src/app/shared/components/addons/storage-item-selector/storage-item-selector.component.ts index 79ea944c5..597e887e2 100644 --- a/src/app/shared/components/addons/storage-item-selector/storage-item-selector.component.ts +++ b/src/app/shared/components/addons/storage-item-selector/storage-item-selector.component.ts @@ -10,6 +10,8 @@ import { InputText } from 'primeng/inputtext'; import { RadioButton } from 'primeng/radiobutton'; import { Skeleton } from 'primeng/skeleton'; +import { timer } from 'rxjs'; + import { ChangeDetectionStrategy, Component, @@ -240,9 +242,9 @@ export class StorageItemSelectorComponent implements OnInit { this.selectedStorageItem.set(folder); this.hasFolderChanged.set(folder?.itemId !== this.initiallySelectedStorageItem()?.itemId); if (this.isGoogleFilePicker()) { - setTimeout(() => { - this.addFilesPicker()?.createPicker(); - }, 1000); + timer(1000) + .pipe(takeUntilDestroyed(this.destroyRef)) + .subscribe(() => this.addFilesPicker()?.createPicker()); } };