Editor/Projection/PanelOp.cs

Defines a small hierarchy of immutable panel operation records used by the editor projection. Declares an abstract base record PanelOp and four concrete operations: SetClass, SetStyle, SetAttribute, and SetInnerText which carry simple string payloads.

namespace Grains.RazorDesigner.Projection;

public abstract record PanelOp;
public sealed record SetClass( string Class ) : PanelOp;
public sealed record SetStyle( string Property, string Value ) : PanelOp;
public sealed record SetAttribute( string Name, string Value ) : PanelOp;
public sealed record SetInnerText( string Text ) : PanelOp;