Skip to main content

buildManifest

Builds an app's effective manifest from its bundled base manifest, its modular manifest.d/*.json fragments (ADR-037), and its menu-layout.json. Lifts the ~200-line navigation pipeline that every manifest-v2 app used to inline in src/main.js into a single shared implementation: fragment merging, canonical relocations, removals, and the settings-section foldout.

import { buildManifest } from '@conduction/nextcloud-vue'

const manifest = buildManifest(base, fragments, menuLayout)
// → { ...base, pages, menu }
ParamTypeDescription
baseobjectThe bundled base manifest (src/manifest.json).
fragmentsArray<object>Fragment objects (each may carry pages / menu).
menuLayoutobject{ relocations?, removals?, settingsSection? }.

Returns the merged manifest { ...base, pages, menu }. Internally composes mergePages, mergeMenuItems, and applyMenuLayout.