Add manual image groups to the library
This commit is contained in:
@@ -30,6 +30,9 @@ export type LibraryStill = {
|
||||
promptPre?: string
|
||||
promptPost?: string
|
||||
familyId?: string
|
||||
manualGroupId?: string
|
||||
manualGroupName?: string
|
||||
manualGroupIndex?: number
|
||||
parentStillId?: string
|
||||
chainIndex?: number
|
||||
settings?: StillGenerationSettings
|
||||
@@ -289,11 +292,13 @@ export function clipFamilyKey(clip: LibraryClip) {
|
||||
}
|
||||
|
||||
export function stillFamilyKey(still: LibraryStill) {
|
||||
if (still.manualGroupId) return `still-group:${still.folderId}:${still.manualGroupId}`
|
||||
if (still.familyId) return `still-family:${still.folderId}:${still.familyId}`
|
||||
return `still-solo:${still.id}`
|
||||
}
|
||||
|
||||
export function sortStillParts(a: LibraryStill, b: LibraryStill) {
|
||||
if (a.manualGroupId && a.manualGroupId === b.manualGroupId) return (a.manualGroupIndex || 0) - (b.manualGroupIndex || 0)
|
||||
const chainDelta = (b.chainIndex || 0) - (a.chainIndex || 0)
|
||||
if (chainDelta) return chainDelta
|
||||
return b.createdAt - a.createdAt
|
||||
@@ -301,6 +306,7 @@ export function sortStillParts(a: LibraryStill, b: LibraryStill) {
|
||||
|
||||
export function chronologicalStills(parts: LibraryStill[]) {
|
||||
return [...parts].sort((a, b) => {
|
||||
if (a.manualGroupId && a.manualGroupId === b.manualGroupId) return (a.manualGroupIndex || 0) - (b.manualGroupIndex || 0)
|
||||
const chain = (a.chainIndex || 0) - (b.chainIndex || 0)
|
||||
if (chain) return chain
|
||||
return a.createdAt - b.createdAt
|
||||
@@ -344,6 +350,7 @@ export function collectionTitle(group: ClipGroup) {
|
||||
}
|
||||
|
||||
export function stillCollectionTitle(group: StillGroup) {
|
||||
if (group.head.manualGroupId) return group.head.manualGroupName || 'Image group'
|
||||
const named = group.parts.map(part => familyBaseName(part.name || '')).find(Boolean)
|
||||
return named || stillTitle(group.head)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user