import { Component, Library } from "@/legacy/lib/models/common/Library"; import { SliceSM } from "@/legacy/lib/models/common/Slice"; import { LocalOrRemoteSlice } from "../ModelData"; export const normalizeFrontendSlices = ( localLibraries: ReadonlyArray>, remoteSlices: ReadonlyArray, ): LocalOrRemoteSlice[] => { const slices: Record = {}; const localComponents = localLibraries.flatMap( (library) => library.components, ); localComponents.forEach((component) => { slices[component.model.id] = { local: component.model, localScreenshots: component.screenshots, }; }); remoteSlices.forEach((slice) => { slices[slice.id] = { ...slices[slice.id], remote: slice }; }); return Object.values(slices); };