Repository: twentyhq/twenty
File: packages/twenty-sdk/src/cli/utilities/build/manifest/manifest-build.ts (TypeScript)

Code before:
      }
      case ManifestEntityKey.FrontComponents: {
        const extract = await extractManifestFromFile<FrontComponentConfig>({
          appPath,
          filePath,
        });

        errors.push(...extract.errors);

        const { component, command, ...rest } = extract.config;

        const relativeFilePath = relative(appPath, filePath);

        const config: FrontComponentManifest = {
          ...rest,
          componentName: component.name,
          sourceComponentPath: relativeFilePath,
          builtComponentPath: relativeFilePath.replace(/\.tsx?$/, '.mjs'),
          builtComponentChecksum: '',
        };

        frontComponents.push(config);
        frontComponentsFilePaths.push(relativePath);

        if (command) {
          commandMenuItems.push({
            ...command,
            frontComponentUniversalIdentifier: rest.universalIdentifier,
          });
        }

        break;
      }
      case ManifestEntityKey.Views: {
        const extract = await extractManifestFromFile<ViewConfig>({
          appPath,
          filePath,
        });

        const viewManifest: ViewManifest = {
          ...extract.config,
        };

        views.push(viewManifest);
        errors.push(...extract.errors);
        viewsFilePaths.push(relativePath);
        break;
      }
      case ManifestEntityKey.NavigationMenuItems: {
        const extract =
          await extractManifestFromFile<NavigationMenuItemManifest>({

Review comment (suggestion):
I don't think we should put them in the manifest under their own key. I would keep it under frontComponent (as part of the FrontComponentManifest)

Code after:
        const extract = await extractManifestFromFile<FrontComponentConfig>({
          appPath,
          filePath,
        });

        errors.push(...extract.errors);

        const { component, ...rest } = extract.config;

        const relativeFilePath = relative(appPath, filePath);

        const config: FrontComponentManifest = {
          ...rest,
          componentName: component.name,
          sourceComponentPath: relativeFilePath,
          builtComponentPath: relativeFilePath.replace(/\.tsx?$/, '.mjs'),
          builtComponentChecksum: '',
        };

        frontComponents.push(config);
        frontComponentsFilePaths.push(relativePath);

        break;
      }
      case ManifestEntityKey.Views: {
        const extract = await extractManifestFromFile<ViewConfig>({
          appPath,
          filePath,
        });

        const viewManifest: ViewManifest = {
          ...extract.config,
        };

        views.push(viewManifest);
        errors.push(...extract.errors);
        viewsFilePaths.push(relativePath);
        break;
      }
      case ManifestEntityKey.NavigationMenuItems: {
        const extract =
          await extractManifestFromFile<NavigationMenuItemManifest>({
            appPath,
            filePath,
          });
        navigationMenuItems.push(extract.config);
        errors.push(...extract.errors);
        navigationMenuItemsFilePaths.push(relativePath);
        break;
      }
      case ManifestEntityKey.PageLayouts: {