Show folders in sync confirm dialog

This commit is contained in:
Gregory Schier
2025-02-09 08:35:29 -08:00
parent 325c88f251
commit 3aaa0355e1
15 changed files with 58 additions and 37 deletions

View File

@@ -1,6 +1,8 @@
import type { AnyModel } from '@yaakapp-internal/models';
import { foldersAtom } from '../hooks/useFolders';
import { jotaiStore } from './jotai';
export function fallbackRequestName(r: AnyModel | null): string {
export function resolvedModelName(r: AnyModel | null): string {
if (r == null) return '';
if (!('url' in r) || r.model === 'plugin') {
@@ -33,3 +35,21 @@ export function fallbackRequestName(r: AnyModel | null): string {
return withoutProto;
}
export function resolvedModelNameWithFolders(model: AnyModel | null): string {
if (model == null) return '';
const folders = jotaiStore.get(foldersAtom) ?? [];
const getParents = (m: AnyModel, names: string[]) => {
names = [...names, resolvedModelName(m)];
if ('folderId' in m) {
const parent = folders.find((f) => f.id === m.folderId);
if (parent) {
names = [resolvedModelName(parent), ...names];
}
}
return names;
};
return getParents(model, []).join(' / ');
}