VVibeFlui

Layout Config

Type: FluiKitLayoutConfig.

Layout config controls root and form presentation. For field grouping, also see Form Config.

Properties

PropertyTypeRequiredDescription
type"page" | "tabs" | "wizard" | "sections"NoLayout mode.
tabsFluiKitFormSection[]NoForm tab definitions or single-resource root tab slots used when type is "tabs".
stepsFluiKitFormSection[]NoWizard step definitions used when type is "wizard".
sectionsFluiKitFormSection[]NoSection definitions used when type is "sections".
classNamestringNoAdditional class name merged onto the header/toolbar row container, applied regardless of layout.type.

Section shape

Layout entries reuse FluiKitFormSection.

PropertyTypeRequiredDescription
keystringYesSection, tab, or step key.
labelstringNoShort display label.
titlestringNoSection, tab, or step title.
fieldsstring[]NoForm field names included in this entry.
tablebooleanNoIncludes the table surface when supported by the layout.
formbooleanNoIncludes the form surface when supported by the layout.
classNamestringNoEntry class name.

table and form place the root table or an always-visible create form into a root layout slot, but only when layout.type is "tabs" or "sections" — the root renderer reads layout.tabs/layout.sections for this, never layout.steps. Setting table/form on entries inside layout.steps (type: "wizard") has no effect at the root; layout.steps is for grouping form fields into wizard steps only (see Form Config), not for placing the table or a standalone form.

When resources[] is present (multi-resource schemas), child resource tabs/sections are generated from resources[] instead, and the root-level layout behaves differently by type:

layout.typeMulti-resource root behavior
(unset) / "tabs" / "wizard"Child resources render as tabs.
"sections" / "page"Child resources render stacked, one after another.

Note that "wizard" still renders child-resource tabs at the multi-resource root — the wizard stepper only applies inside a single form surface, driven by layout.steps.

Common root usage

TS
layout: {
  type: "tabs",
  tabs: [
    { key: "table", title: "Table", table: true },
    { key: "form", title: "Form", form: true }
  ]
}

Form layout usage

TS
layout: {
  type: "wizard",
  steps: [
    { key: "profile", title: "Profile", fields: ["name", "email"] },
    { key: "access", title: "Access", fields: ["role", "status"] }
  ]
}