Skip to content

feat(harmonia): generated-UI presentation - humanized labels, task-form Details layout, unified captions - #6355

Merged
delchev merged 1 commit into
masterfrom
feat/harmonia-humanized-labels-taskform-details
Jul 21, 2026
Merged

feat(harmonia): generated-UI presentation - humanized labels, task-form Details layout, unified captions#6355
delchev merged 1 commit into
masterfrom
feat/harmonia-humanized-labels-taskform-details

Conversation

@delchev

@delchev delchev commented Jul 21, 2026

Copy link
Copy Markdown
Contributor

Two presentation fixes to the generated Harmonia UI (reported together on a running instance).

1. Humanized property labels

The label catalog value for a property defaulted to the raw PascalCase nameparameterUtils.js set widgetLabel = name, and the generateUtils.js translate action wrote that into t.<dataName>. So list columns and the detail/document view showed "PaymentMethod" / "TaxEventDate" instead of "Payment Method" / "Tax Event Date" — even though entity labels were already humanized.

humanizeName moves to parameterUtils (the lower-level util module generateUtils already imports sanitizeJavaIdentifier from — no circular import, no third copy), is exported, and now backs the widgetLabel default. An explicitly authored widgetLabel still wins. Affects every generated app (Angular + Harmonia); the humanized value flows to both the label catalog and the form/list templates.

2. Task-form Details-card layout

A BPM task form's read-only fields rendered as label-beside-value hbox rows. They now render as the entity detail / document view's headerless x-h-card of vbox detail cells (muted text-xs label above a text-sm value), so the Inbox task form matches the entity Details layout.

Verification (live)

Rebuilt the jar and regenerated kf-mod-sales-invoices: the served label catalog humanizes (Payment Method / Tax Event Date / Bank Account, Number unchanged) and the served ApproveSalesInvoice task form renders the x-h-card + vbox gap-0 detail cells (old width: 9rem hbox gone). FormIntentGenerator already humanized form-control labels, so those were unaffected.

🤖 Generated with Claude Code

…s-card layout

Two presentation fixes to the generated Harmonia UI, reported together.

1. Humanized property labels. The label catalog value for a property defaulted to the
   raw PascalCase name (parameterUtils widgetLabel default -> generateUtils translate
   action), so list columns and the detail/document view showed "PaymentMethod" /
   "TaxEventDate" instead of "Payment Method" / "Tax Event Date" - while entity
   labels were already humanized. humanizeName moves to parameterUtils (the shared util
   module generateUtils already imports from), is exported, and now backs the
   widgetLabel default; an explicitly authored widgetLabel still wins. Affects every
   generated app (Angular + Harmonia); flows to the label catalog and the form/list
   templates alike.

2. Task-form Details-card layout. A BPM task form's read-only fields rendered as
   label-beside-value hbox rows; they now render as the entity detail / document view's
   headerless x-h-card of vbox detail cells (muted text-xs label above a text-sm value),
   so the Inbox task form matches the entity Details layout.

Verified live: regenerated kf-mod-sales-invoices - the served label catalog humanizes
(Payment Method / Tax Event Date / Bank Account) and the ApproveSalesInvoice task form
renders the x-h-card + vbox gap-0 detail cells.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@delchev
delchev merged commit b78061d into master Jul 21, 2026
9 checks passed
@delchev
delchev deleted the feat/harmonia-humanized-labels-taskform-details branch July 21, 2026 19:41
@delchev delchev changed the title feat(harmonia): humanize generated property labels + task-form Details-card layout feat(harmonia): generated-UI presentation - humanized labels, task-form Details layout, unified captions Jul 21, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant