Compare commits

...

1 Commits

Author SHA1 Message Date
mertalev
e62071fda0 don't use iterator.find 2025-06-19 17:40:56 +03:00
3 changed files with 9 additions and 5 deletions

View File

@@ -32,7 +32,7 @@ export async function getAssetWithOffset(
export function findMonthGroupForAsset(timelineManager: TimelineManager, id: string) {
for (const month of timelineManager.months) {
const asset = month.findAssetById({ id });
const asset = month.findAssetById(id);
if (asset) {
return { monthGroup: month, asset };
}

View File

@@ -20,7 +20,7 @@ import { get } from 'svelte/store';
import { DayGroup } from './day-group.svelte';
import { GroupInsertionCache } from './group-insertion-cache.svelte';
import type { TimelineManager } from './timeline-manager.svelte';
import type { AssetDescriptor, AssetOperation, Direction, MoveAsset, TimelineAsset } from './types';
import type { AssetOperation, Direction, MoveAsset, TimelineAsset } from './types';
import { ViewerAsset } from './viewer-asset.svelte';
export class MonthGroup {
@@ -342,8 +342,12 @@ export class MonthGroup {
}
}
findAssetById(assetDescriptor: AssetDescriptor) {
return this.assetsIterator().find((asset) => asset.id === assetDescriptor.id);
findAssetById(id: string) {
for (const asset of this.assetsIterator()) {
if (asset.id === id) {
return asset;
}
}
}
findClosest(target: TimelinePlainDateTime) {

View File

@@ -428,7 +428,7 @@ export class TimelineManager {
return;
}
monthGroup = await this.#loadMonthGroupAtTime(asset.localDateTime, { cancelable: false });
if (monthGroup?.findAssetById({ id })) {
if (monthGroup?.findAssetById(id)) {
return monthGroup;
}
}