mirror of
https://github.com/invoke-ai/InvokeAI
synced 2024-08-30 20:32:17 +00:00
fix recall all when loras, controls, or hrf arent present
This commit is contained in:
parent
fbfa29c2ef
commit
c2e3c61f28
@ -156,8 +156,13 @@ const parseSteps: MetadataParseFunc<ParameterSteps> = (metadata) => getProperty(
|
|||||||
const parseStrength: MetadataParseFunc<ParameterStrength> = (metadata) =>
|
const parseStrength: MetadataParseFunc<ParameterStrength> = (metadata) =>
|
||||||
getProperty(metadata, 'strength', isParameterStrength);
|
getProperty(metadata, 'strength', isParameterStrength);
|
||||||
|
|
||||||
const parseHRFEnabled: MetadataParseFunc<ParameterHRFEnabled> = (metadata) =>
|
const parseHRFEnabled: MetadataParseFunc<ParameterHRFEnabled> = async (metadata) => {
|
||||||
getProperty(metadata, 'hrf_enabled', isParameterHRFEnabled);
|
try {
|
||||||
|
return await getProperty(metadata, 'hrf_enabled', isParameterHRFEnabled);
|
||||||
|
} catch {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
const parseHRFStrength: MetadataParseFunc<ParameterStrength> = (metadata) =>
|
const parseHRFStrength: MetadataParseFunc<ParameterStrength> = (metadata) =>
|
||||||
getProperty(metadata, 'hrf_strength', isParameterStrength);
|
getProperty(metadata, 'hrf_strength', isParameterStrength);
|
||||||
@ -224,12 +229,16 @@ const parseLoRA: MetadataParseFunc<LoRA> = async (metadataItem) => {
|
|||||||
};
|
};
|
||||||
|
|
||||||
const parseAllLoRAs: MetadataParseFunc<LoRA[]> = async (metadata) => {
|
const parseAllLoRAs: MetadataParseFunc<LoRA[]> = async (metadata) => {
|
||||||
const lorasRaw = await getProperty(metadata, 'loras', isArray);
|
try {
|
||||||
const parseResults = await Promise.allSettled(lorasRaw.map((lora) => parseLoRA(lora)));
|
const lorasRaw = await getProperty(metadata, 'loras', isArray);
|
||||||
const loras = parseResults
|
const parseResults = await Promise.allSettled(lorasRaw.map((lora) => parseLoRA(lora)));
|
||||||
.filter((result): result is PromiseFulfilledResult<LoRA> => result.status === 'fulfilled')
|
const loras = parseResults
|
||||||
.map((result) => result.value);
|
.filter((result): result is PromiseFulfilledResult<LoRA> => result.status === 'fulfilled')
|
||||||
return loras;
|
.map((result) => result.value);
|
||||||
|
return loras;
|
||||||
|
} catch {
|
||||||
|
return [];
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
const parseControlNet: MetadataParseFunc<ControlNetConfigMetadata> = async (metadataItem) => {
|
const parseControlNet: MetadataParseFunc<ControlNetConfigMetadata> = async (metadataItem) => {
|
||||||
@ -288,12 +297,16 @@ const parseControlNet: MetadataParseFunc<ControlNetConfigMetadata> = async (meta
|
|||||||
};
|
};
|
||||||
|
|
||||||
const parseAllControlNets: MetadataParseFunc<ControlNetConfigMetadata[]> = async (metadata) => {
|
const parseAllControlNets: MetadataParseFunc<ControlNetConfigMetadata[]> = async (metadata) => {
|
||||||
const controlNetsRaw = await getProperty(metadata, 'controlnets', isArray);
|
try {
|
||||||
const parseResults = await Promise.allSettled(controlNetsRaw.map((cn) => parseControlNet(cn)));
|
const controlNetsRaw = await getProperty(metadata, 'controlnets', isArray || undefined);
|
||||||
const controlNets = parseResults
|
const parseResults = await Promise.allSettled(controlNetsRaw.map((cn) => parseControlNet(cn)));
|
||||||
.filter((result): result is PromiseFulfilledResult<ControlNetConfigMetadata> => result.status === 'fulfilled')
|
const controlNets = parseResults
|
||||||
.map((result) => result.value);
|
.filter((result): result is PromiseFulfilledResult<ControlNetConfigMetadata> => result.status === 'fulfilled')
|
||||||
return controlNets;
|
.map((result) => result.value);
|
||||||
|
return controlNets;
|
||||||
|
} catch {
|
||||||
|
return [];
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
const parseT2IAdapter: MetadataParseFunc<T2IAdapterConfigMetadata> = async (metadataItem) => {
|
const parseT2IAdapter: MetadataParseFunc<T2IAdapterConfigMetadata> = async (metadataItem) => {
|
||||||
@ -348,12 +361,16 @@ const parseT2IAdapter: MetadataParseFunc<T2IAdapterConfigMetadata> = async (meta
|
|||||||
};
|
};
|
||||||
|
|
||||||
const parseAllT2IAdapters: MetadataParseFunc<T2IAdapterConfigMetadata[]> = async (metadata) => {
|
const parseAllT2IAdapters: MetadataParseFunc<T2IAdapterConfigMetadata[]> = async (metadata) => {
|
||||||
const t2iAdaptersRaw = await getProperty(metadata, 't2iAdapters', isArray);
|
try {
|
||||||
const parseResults = await Promise.allSettled(t2iAdaptersRaw.map((t2iAdapter) => parseT2IAdapter(t2iAdapter)));
|
const t2iAdaptersRaw = await getProperty(metadata, 't2iAdapters', isArray);
|
||||||
const t2iAdapters = parseResults
|
const parseResults = await Promise.allSettled(t2iAdaptersRaw.map((t2iAdapter) => parseT2IAdapter(t2iAdapter)));
|
||||||
.filter((result): result is PromiseFulfilledResult<T2IAdapterConfigMetadata> => result.status === 'fulfilled')
|
const t2iAdapters = parseResults
|
||||||
.map((result) => result.value);
|
.filter((result): result is PromiseFulfilledResult<T2IAdapterConfigMetadata> => result.status === 'fulfilled')
|
||||||
return t2iAdapters;
|
.map((result) => result.value);
|
||||||
|
return t2iAdapters;
|
||||||
|
} catch {
|
||||||
|
return [];
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
const parseIPAdapter: MetadataParseFunc<IPAdapterConfigMetadata> = async (metadataItem) => {
|
const parseIPAdapter: MetadataParseFunc<IPAdapterConfigMetadata> = async (metadataItem) => {
|
||||||
@ -394,12 +411,16 @@ const parseIPAdapter: MetadataParseFunc<IPAdapterConfigMetadata> = async (metada
|
|||||||
};
|
};
|
||||||
|
|
||||||
const parseAllIPAdapters: MetadataParseFunc<IPAdapterConfigMetadata[]> = async (metadata) => {
|
const parseAllIPAdapters: MetadataParseFunc<IPAdapterConfigMetadata[]> = async (metadata) => {
|
||||||
const ipAdaptersRaw = await getProperty(metadata, 'ipAdapters', isArray);
|
try {
|
||||||
const parseResults = await Promise.allSettled(ipAdaptersRaw.map((ipAdapter) => parseIPAdapter(ipAdapter)));
|
const ipAdaptersRaw = await getProperty(metadata, 'ipAdapters', isArray);
|
||||||
const ipAdapters = parseResults
|
const parseResults = await Promise.allSettled(ipAdaptersRaw.map((ipAdapter) => parseIPAdapter(ipAdapter)));
|
||||||
.filter((result): result is PromiseFulfilledResult<IPAdapterConfigMetadata> => result.status === 'fulfilled')
|
const ipAdapters = parseResults
|
||||||
.map((result) => result.value);
|
.filter((result): result is PromiseFulfilledResult<IPAdapterConfigMetadata> => result.status === 'fulfilled')
|
||||||
return ipAdapters;
|
.map((result) => result.value);
|
||||||
|
return ipAdapters;
|
||||||
|
} catch {
|
||||||
|
return [];
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
export const parsers = {
|
export const parsers = {
|
||||||
|
@ -177,11 +177,11 @@ const recallLoRA: MetadataRecallFunc<LoRA> = (lora) => {
|
|||||||
};
|
};
|
||||||
|
|
||||||
const recallAllLoRAs: MetadataRecallFunc<LoRA[]> = (loras) => {
|
const recallAllLoRAs: MetadataRecallFunc<LoRA[]> = (loras) => {
|
||||||
|
const { dispatch } = getStore();
|
||||||
|
dispatch(lorasReset());
|
||||||
if (!loras.length) {
|
if (!loras.length) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
const { dispatch } = getStore();
|
|
||||||
dispatch(lorasReset());
|
|
||||||
loras.forEach((lora) => {
|
loras.forEach((lora) => {
|
||||||
dispatch(loraRecalled(lora));
|
dispatch(loraRecalled(lora));
|
||||||
});
|
});
|
||||||
@ -192,11 +192,11 @@ const recallControlNet: MetadataRecallFunc<ControlNetConfigMetadata> = (controlN
|
|||||||
};
|
};
|
||||||
|
|
||||||
const recallControlNets: MetadataRecallFunc<ControlNetConfigMetadata[]> = (controlNets) => {
|
const recallControlNets: MetadataRecallFunc<ControlNetConfigMetadata[]> = (controlNets) => {
|
||||||
|
const { dispatch } = getStore();
|
||||||
|
dispatch(controlNetsReset());
|
||||||
if (!controlNets.length) {
|
if (!controlNets.length) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
const { dispatch } = getStore();
|
|
||||||
dispatch(controlNetsReset());
|
|
||||||
controlNets.forEach((controlNet) => {
|
controlNets.forEach((controlNet) => {
|
||||||
dispatch(controlAdapterRecalled(controlNet));
|
dispatch(controlAdapterRecalled(controlNet));
|
||||||
});
|
});
|
||||||
@ -207,11 +207,11 @@ const recallT2IAdapter: MetadataRecallFunc<T2IAdapterConfigMetadata> = (t2iAdapt
|
|||||||
};
|
};
|
||||||
|
|
||||||
const recallT2IAdapters: MetadataRecallFunc<T2IAdapterConfigMetadata[]> = (t2iAdapters) => {
|
const recallT2IAdapters: MetadataRecallFunc<T2IAdapterConfigMetadata[]> = (t2iAdapters) => {
|
||||||
|
const { dispatch } = getStore();
|
||||||
|
dispatch(t2iAdaptersReset());
|
||||||
if (!t2iAdapters.length) {
|
if (!t2iAdapters.length) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
const { dispatch } = getStore();
|
|
||||||
dispatch(t2iAdaptersReset());
|
|
||||||
t2iAdapters.forEach((t2iAdapter) => {
|
t2iAdapters.forEach((t2iAdapter) => {
|
||||||
dispatch(controlAdapterRecalled(t2iAdapter));
|
dispatch(controlAdapterRecalled(t2iAdapter));
|
||||||
});
|
});
|
||||||
@ -222,11 +222,11 @@ const recallIPAdapter: MetadataRecallFunc<IPAdapterConfigMetadata> = (ipAdapter)
|
|||||||
};
|
};
|
||||||
|
|
||||||
const recallIPAdapters: MetadataRecallFunc<IPAdapterConfigMetadata[]> = (ipAdapters) => {
|
const recallIPAdapters: MetadataRecallFunc<IPAdapterConfigMetadata[]> = (ipAdapters) => {
|
||||||
|
const { dispatch } = getStore();
|
||||||
|
dispatch(ipAdaptersReset());
|
||||||
if (!ipAdapters.length) {
|
if (!ipAdapters.length) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
const { dispatch } = getStore();
|
|
||||||
dispatch(ipAdaptersReset());
|
|
||||||
ipAdapters.forEach((ipAdapter) => {
|
ipAdapters.forEach((ipAdapter) => {
|
||||||
dispatch(controlAdapterRecalled(ipAdapter));
|
dispatch(controlAdapterRecalled(ipAdapter));
|
||||||
});
|
});
|
||||||
|
Loading…
x
Reference in New Issue
Block a user