1
0
mirror of https://github.com/lensapp/lens.git synced 2025-05-20 05:10:56 +00:00

Clean public interface of a normalize composite

Co-authored-by: Mikko Aspiala <mikko.aspiala@gmail.com>

Signed-off-by: Janne Savolainen <janne.savolainen@live.fi>
This commit is contained in:
Janne Savolainen 2022-10-19 13:51:36 +03:00
parent c04adf3eff
commit 638ea2e12e
No known key found for this signature in database
GPG Key ID: 8C6CFB2FFFE8F68A

View File

@ -4,7 +4,8 @@
*/ */
import type { Composite } from "../get-composite"; import type { Composite } from "../get-composite";
export const normalizeComposite = <T>( export const normalizeComposite = <T>(composite: Composite<T>) => {
const _normalizeComposite = <T>(
composite: Composite<T>, composite: Composite<T>,
previousPath: string[] = [], previousPath: string[] = [],
): (readonly [path: string, composite: Composite<T>])[] => { ): (readonly [path: string, composite: Composite<T>])[] => {
@ -15,6 +16,9 @@ export const normalizeComposite = <T>(
return [ return [
pathAndCompositeTuple, pathAndCompositeTuple,
...composite.children.flatMap((x) => normalizeComposite(x, currentPath)), ...composite.children.flatMap((x) => _normalizeComposite(x, currentPath)),
]; ];
}; };
return _normalizeComposite(composite);
};