The GitHub Actions job "Required Checks" on 
texera.git/fix/form-code-editor-host has failed.
Run started by GitHub user yangzhang75 (triggered by yangzhang75).

Head commit for run:
19687787b4ca16058f71a64f9ae4e38c36580b31 / Yang Zhang <[email protected]>
fix(workflow-form): give the Form View a code editor host, so its step panel's 
code button opens the editor

The code editor renders into an outlet the operator canvas published once
(`<ng-template #codeEditor>` in WorkspaceComponent, handed to CodeEditorService
as `vc`) and never let go of. The Form View has no outlet of its own, yet its
step panel shows the operator's real property frame and, in edit mode, the
ordinary "Edit code content" button. Pressing it opened the editor into
whatever `vc` held: nothing, from a direct open of the Form View, or the
destroyed canvas's outlet after the routed switch between the views (#8581),
where Monaco rendered into a detached view and nothing appeared on screen.
Verified on main: the button is there, the click does nothing, no error.

Each view that shows operator properties now carries its own outlet, marked
`texeraCodeEditorHost` on an `<ng-template>`: the directive attaches the outlet
to CodeEditorService when the view's template is built and detaches it -- only
its own -- when the view is destroyed, which also closes an editor still open
in it. The views are sibling routes, so there is one host at a time. The
button opens into whichever host is up and guards the case of none (every view
that mounts a codearea hosts the editor now, so that is a guard rather than a
state the button shows): a co-editor's open reaching a codearea with no host
neither throws nor marks that operator's editor open, and reaches only the
codearea on that operator. The editor is told its operator by its opener
instead of reading the highlight in its constructor, and may be dragged within
the Form View's page as well as the canvas.

Deliberately not in this change: exposing a code property as a form input. The
form's rules keep the code editor out of what an author may expose
(NON_FORM_FIELD_TYPES) and fall back from it on an old workflow that carries
one (CANVAS_ONLY_FORMLY_TYPES); editing code is not filling in a value, and a
form reader should not be writing code. The step panel is the author's own
editing surface, which is what this fixes.

Closes #8760

Co-Authored-By: Claude Fable 5.1 <[email protected]>
Claude-Session: https://claude.ai/code/session_01FVvP3ttj22f9LB4p9u2anY

Report URL: https://github.com/apache/texera/actions/runs/39214156967

With regards,
GitHub Actions via GitBox

Reply via email to