add ability to order subfields with dot notation

This commit is contained in:
Josh Hawkins 2026-04-03 17:24:05 -05:00
parent 520d9eeb7f
commit 4e608c4be6

View File

@ -483,9 +483,20 @@ function generateUiSchema(
const schemaObj = schema as Record<string, unknown>; const schemaObj = schema as Record<string, unknown>;
// Set field ordering // Set field ordering — supports dot notation (e.g. "genai.enabled")
if (fieldOrder && fieldOrder.length > 0) { if (fieldOrder && fieldOrder.length > 0) {
uiSchema["ui:order"] = [...fieldOrder, "*"]; const depth = currentPath.length;
const localOrder = fieldOrder
.map((f) => f.split("."))
.filter((segments) => {
if (segments.length !== depth + 1) return false;
return currentPath.every((p, i) => segments[i] === p);
})
.map((segments) => segments[depth]);
if (localOrder.length > 0) {
uiSchema["ui:order"] = [...localOrder, "*"];
}
} }
if (!isSchemaObject(schemaObj.properties)) { if (!isSchemaObject(schemaObj.properties)) {