Skip to content

Commit b9590fd

Browse files
committed
fix(storage-item-selector): allow users to add files from google drive on addon setup
1 parent a8f8715 commit b9590fd

File tree

2 files changed

+17
-0
lines changed

2 files changed

+17
-0
lines changed

src/app/shared/components/addons/storage-item-selector/storage-item-selector.component.html

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,15 @@ <h3 class="mt-4 mb-2">
4444
[handleFolderSelection]="handleFolderSelection"
4545
[rootFolder]="selectedStorageItem()"
4646
></osf-google-file-picker>
47+
@if (selectedStorageItem() !== null) {
48+
<osf-google-file-picker
49+
#filePicker
50+
[isFolderPicker]="false"
51+
[accountId]="accountId()"
52+
[currentAddonType]="currentAddonType()"
53+
[rootFolder]="selectedStorageItem()"
54+
></osf-google-file-picker>
55+
}
4756
} @else {
4857
<div class="folders-table flex flex-column">
4958
<div class="folders-table-heading flex justify-content-between">

src/app/shared/components/addons/storage-item-selector/storage-item-selector.component.ts

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ import {
2222
OnInit,
2323
output,
2424
signal,
25+
viewChild,
2526
} from '@angular/core';
2627
import { takeUntilDestroyed, toSignal } from '@angular/core/rxjs-interop';
2728
import { FormControl, FormsModule, ReactiveFormsModule } from '@angular/forms';
@@ -60,6 +61,8 @@ import { ResourceTypeInfoDialogComponent } from '../resource-type-info-dialog/re
6061
changeDetection: ChangeDetectionStrategy.OnPush,
6162
})
6263
export class StorageItemSelectorComponent implements OnInit {
64+
addFilesPicker = viewChild<GoogleFilePickerComponent>('filePicker');
65+
6366
private destroyRef = inject(DestroyRef);
6467
private customDialogService = inject(CustomDialogService);
6568
private translateService = inject(TranslateService);
@@ -236,6 +239,11 @@ export class StorageItemSelectorComponent implements OnInit {
236239
handleFolderSelection = (folder: StorageItem): void => {
237240
this.selectedStorageItem.set(folder);
238241
this.hasFolderChanged.set(folder?.itemId !== this.initiallySelectedStorageItem()?.itemId);
242+
if (this.isGoogleFilePicker()) {
243+
setTimeout(() => {
244+
this.addFilesPicker()?.createPicker();
245+
}, 1000);
246+
}
239247
};
240248

241249
private updateBreadcrumbs(

0 commit comments

Comments
 (0)