mirror of
https://github.com/stashapp/stash.git
synced 2025-12-17 12:24:38 +03:00
20 lines
529 B
TypeScript
20 lines
529 B
TypeScript
const flattenMessages = (nestedMessages: any, prefix = "") => {
|
|
if (nestedMessages === null) {
|
|
return {};
|
|
}
|
|
return Object.keys(nestedMessages).reduce((messages, key) => {
|
|
const value = nestedMessages[key];
|
|
const prefixedKey = prefix ? `${prefix}.${key}` : key;
|
|
|
|
if (typeof value === "string") {
|
|
Object.assign(messages, { [prefixedKey]: value });
|
|
} else {
|
|
Object.assign(messages, flattenMessages(value, prefixedKey));
|
|
}
|
|
|
|
return messages;
|
|
}, {});
|
|
};
|
|
|
|
export default flattenMessages;
|