mirror of
https://github.com/HabitRPG/habitica.git
synced 2025-12-17 22:57:21 +01:00
* wip: add guilds discovery page * add public guilds page * fix and add tests for the groups utilities mixin
32 lines
556 B
JavaScript
32 lines
556 B
JavaScript
/* Flatten multiple objects into a single, namespaced object.
|
|
|
|
Example:
|
|
|
|
getters
|
|
user
|
|
gems
|
|
tasks
|
|
...
|
|
tasks
|
|
todos
|
|
dailys
|
|
...
|
|
|
|
Result:
|
|
getters
|
|
user:gems
|
|
user:tasks
|
|
tasks:todos
|
|
tasks:dailys
|
|
*/
|
|
export function flattenAndNamespace (namespaces) {
|
|
let result = {};
|
|
|
|
Object.keys(namespaces).forEach(namespace => {
|
|
Object.keys(namespaces[namespace]).forEach(itemName => {
|
|
result[`${namespace}:${itemName}`] = namespaces[namespace][itemName];
|
|
});
|
|
});
|
|
|
|
return result;
|
|
} |