@yuuvis/app-drive 3.4.2 → 3.4.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -2358,7 +2358,7 @@ class SearchFilterComponent {
2358
2358
  value: this.ANY_OPTION
2359
2359
  },
2360
2360
  ...this.#flavors.map((f) => ({
2361
- label: this.translate.instant(f.id),
2361
+ label: this.#shell.getFlavorLabel(f.id),
2362
2362
  value: f.sot
2363
2363
  }))
2364
2364
  ]);
@@ -2574,11 +2574,21 @@ class FilesPageComponent {
2574
2574
  }
2575
2575
  ];
2576
2576
  currentPage = this.dataSource[0].route;
2577
+ _autoSelectHandled = false;
2577
2578
  itemSelected(idx) {
2578
2579
  const node = this.dataSource.find(({ id }) => id === idx[0]);
2579
- if (node) {
2580
- this.routeChange(node);
2580
+ if (!node)
2581
+ return;
2582
+ if (!this._autoSelectHandled) {
2583
+ this._autoSelectHandled = true;
2584
+ // Suppress the initial auto-selection if it would navigate away from the current route.
2585
+ // When returning from object view to a subfolder, autoSelect fires 'mydrive' but we're
2586
+ // already on the correct subfolder route — navigating to root would be wrong.
2587
+ const currentId = this.id();
2588
+ if (node.route === 'mydrive' && currentId !== DRIVE_ROOT_FOLDER_ID)
2589
+ return;
2581
2590
  }
2591
+ this.routeChange(node);
2582
2592
  }
2583
2593
  routeChange(node) {
2584
2594
  const commands = node.route === 'mydrive'
@@ -2616,12 +2626,17 @@ class FilesPageComponent {
2616
2626
  if (this.currentFolderID === DRIVE_ROOT_FOLDER_ID)
2617
2627
  this.currentFolderID = undefined;
2618
2628
  if (this.currentFolderID) {
2619
- this.dmsService.getDmsObject(this.currentFolderID).subscribe({
2629
+ const folderIdSnapshot = this.currentFolderID;
2630
+ this.dmsService.getDmsObject(folderIdSnapshot).subscribe({
2620
2631
  next: (o) => {
2632
+ if (this.currentFolderID !== folderIdSnapshot)
2633
+ return;
2621
2634
  this.currentFolder = o;
2622
2635
  this._setFolderQuery(this.#getTitle(o));
2623
2636
  },
2624
2637
  error: (e) => {
2638
+ if (this.currentFolderID !== folderIdSnapshot)
2639
+ return;
2625
2640
  console.error('Error getting folder', e);
2626
2641
  this.#processLoadError(e);
2627
2642
  }