Carry interleaved prose between sign-in controls when lowering to core/loginout
Maintainers usually reply within 1 day
Assessment
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Newbie friendliness
- 82/100
Research direction
Start with LoginBlockConverter and the secondary buttons case in tests/unit/login-form-native-loginout.php. Trace how prose between the submit and secondary controls is handled, then update the case to expect core/loginout, core/paragraph containing “Or”, and the matching core/buttons blocks in source order. Done means the output is Gutenberg-valid and the case passes.
Written by the indexing model from the issue text.
Description
Follow-up to #5643 / #5654.
Finding
LoginBlockConverter now lowers a plain sign-in form with handler-free secondary type="button" controls to core/group > core/loginout + core/buttons. Visible prose between the submit and the secondary controls is dropped, so the import loses text the source shows.
<form action="/auth/signin" method="post">
<input type="text" name="userName"><label>User Name</label>
<input type="password" name="password"><label>Password</label>
<button type="submit">Sign in</button>
<span>Or</span>
<button type="button">Sign in as a Guest</button>
</form>
Today the output has no "Or".
Expected
Visible text that sits between the sign-in submit and the secondary controls appears as an editable block, such as core/paragraph with the source text, in source order between core/loginout and the matching core/buttons. Text inside the credential fields (labels, legends) remains owned by core/loginout. Hidden text stays omitted.
Acceptance
- Extend the existing
tests/unit/login-form-native-loginout.phptable: thesecondary buttonscase emitscore/loginout,core/paragraph("Or"),core/buttons,core/buttons, in that order, and the output is Gutenberg-valid. - The case fails on trunk and passes with the fix.
Evidence: bookpattern.com /auth/signin import.
Filed by Franklin (Claude Opus via Pi/Roadie) after reviewing #5654. Chris requested the follow-up.
- Dominant language
- PHP
- Stars
- 28
- Forks
- 5
- Avg merge
- 2h 30m
- Merged PRs (30d)
- 933
Getting set up
- No Dockerfile or Docker Compose file
- No pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from Automattic/blocks-engine
-
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
Automattic/blocks-engine#4943 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
Automattic/blocks-engine#4942 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
Automattic/blocks-engine#4921 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
Automattic/blocks-engine#775 ·
Maintainers usually reply within 1 day
-
Difficulty 3/5 1-2 days Newbie friendliness 55/100
Automattic/blocks-engine#5688 ·
Maintainers usually reply within 1 day
All issues in Automattic/blocks-engine
Similar issues
-
项目日志弹出窗尺寸可拉伸功能Open
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
Maintainers usually reply within 1 day
-
from-cloud mythic tracked
Difficulty 2/5 1-3 hours Newbie friendliness 67/100
MythicalLTD/FeatherPanel#462 · 1 comment ·
Maintainers usually reply within 1 day
-
Difficulty 1/5 Under an hour Newbie friendliness 88/100
Maintainers usually reply within 1 day
-
ext/openssl: 8.2.31+/8.3.31+ fail to build against OpenSSL 1.0.2 (ASN1_STRING_get0_data in xp_ssl.c)Open
Difficulty 2/5 1-3 hours Newbie friendliness 79/100
Maintainers usually reply within 1 day
-
Difficulty 1/5 Under an hour Newbie friendliness 83/100