Repository navigation
feat(studio): long flow-node help opens behind Learn more; list column descriptions are help, not placeholders - #27832
Merged
Conversation
…ions are help, not placeholders Claude-Session: https://claude.ai/code/session_01Utp6CZrsFMFmWFsxTaq2Bu Co-authored-by: Claude <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Utp6CZrsFMFmWFsxTaq2Bu Co-authored-by: Claude <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Utp6CZrsFMFmWFsxTaq2Bu Co-authored-by: Claude <noreply@anthropic.com>
Contributor
Author
|
domain:ui#3 · os-bill · session_01Utp6CaJoinvGQSbHeDaWBe 席位核对ACCEPT · head
Generated by Claude Code |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
domain:ui#3 · os-bill · session_01Utp6CaJoinvGQSbHeDaWBe
Requested by Bill · project thread
维护者速读
FlowFieldHelp.tsx(折叠逻辑),json-schema-to-fields.ts里columnsFor的两处(说明从 placeholder 改成 help),FlowObjectListField.tsx渲染列帮助的四处。pnpm --dir ui exec vitest run packages/app-shell/src/views/metadata-admin/inspectors/FlowFieldHelp.learnMore-27356.test.tsx,应见 4 passed。Part of #27356 (row 15, hotcrm#2320 Studio S4: node inspector help and placeholder)
Clause-②: no
Metadata-protocol: none
What changes
Row 15 has two halves. This PR is the Studio half: how help is shown. The words half is not Studio's (see Acceptance notes).
FlowFieldHelp(new,views/metadata-admin/inspectors/) renders the help line under a flow inspector field. Help longer thanFLOW_HELP_CLAMP_CHARS(120) opens clamped to two lines (line-clamp-2) with a Learn more button (aria-expanded,aria-controls); Show less folds it again. Shorter help renders in full with no button, as before. The full text stays in the DOM in both states.FlowNodeConfigFielduses it for every field's help (its only help site).jsonSchemaToFlowFieldsused to put an objectList column's schemadescriptioninto the column'splaceholder. On the approval node's Approvers list this put the servedorganizationdescription ("ADR-0105 D9 — organization whose directory resolves this approver: …") into the input as a cut-off placeholder, and the servedvaluedescription likewise.FlowConfigColumngainshelp; bothcolumnsForsites (scalar columns and nested-list columns) now write the description there, andFlowObjectListFieldshows it under the column withFlowFieldHelp, in the default row layout, the decision branch cards and under nested list columns. A hand-written columnplaceholder(the offline table) is unchanged.engine.inspector.flowNode.help.learnMore,engine.inspector.flowNode.help.showLess. No key renamed.Boundary: the Add-node menu is #27521 row 39 and is not touched here; this PR changes the node inspector only.
Tests
FlowFieldHelp.learnMore-27356.test.tsx(4 tests). The column half reads the installed contract:z.toJSONSchema(ApprovalNodeConfigSchema, { io: 'input' })throughjsonSchemaToFlowFields, then asserts theorganizationcolumn carries the description ashelpand noplaceholder, and that a rendered Approvers row has no element whose placeholder is that description while a help line shows it. The clamp half rendersFlowNodeConfigFieldwith a long and a short help.json-schema-to-fields.test.ts: the approvervaluecolumn assertion moved fromplaceholdertohelp(plusplaceholderundefined). That line pinned the behaviour this PR changes.Readings (head 491ca52 for gates; tests on bc2046a, merge of origin/main touched none of these packages)
FlowNodeConfigField,FlowObjectListField,json-schema-to-fields,FlowNodeInspectororFlowFieldHelp(72 files): 72 passed, 1065 passed / 1 skipped.pnpm --filter @object-ui/app-shell --filter @object-ui/i18n run type-check: both Done, exit 0 (lock VERDICT command-exit 0).scripts/ablation-replace.mjs(anchor 1 to 0): the scalar column'shelp: prop.descriptionback toplaceholder: prop.description: 2 failed / 2 passed (both column tests red); restored blob = HEAD blobf12818610a37,git diff HEADempty.const long = text.length > FLOW_HELP_CLAMP_CHARS;toconst long = false;: 1 failed / 3 passed (the clamp test red); restored blob = HEAD blobc4b6a6f0cf77,git diff HEADempty.@object-ui/*to source here, so neither ablation needed a rebuild.Acceptance notes
@objectstack/specautomation/approval.zod.ts(.describe()/.meta({ description })), published by the server as the node'sconfigSchema; Studio shows the producer's sentence and keeps only the zh rendering (FLOW_FIELD_ZH). Rewriting them in business words (for exampleexcludeSubmitter's paragraph namingsubmitter_idandonEmptyApprovers, and theorganizationdescription that opens with an ADR citation) is a spec change, outside this Studio surface. It is filed as Flow node help in business words: approval config describe text and node palette descriptions are written for engineers (#27356 row 15, #27521 row 39) #27838 (domain:spec, together with Setup and Studio: suggestions from the 18.3.0 RC browser walkthrough: Setup naming and machine values, invitation and user onboarding, permission-set authoring, dialog focus, Studio first run, validation and flow builders, and publish-panel wording #27521 row 39), not done here.Verification
On head
491ca521:dispatch-gates --commandsderived 34 families for this diff; all 34 were run locally, each exit 0, and--ranreconciled 34 run, 0 NOT-MEASURED, 0 UNRUN (node scripts/check-sdui-manifest.mjsamong them).check:new-line-citations: 0 new. CI check-runs were in progress when this was opened.Generated by Claude Code