Editor/Validation/ValidationDiagnostic.cs
using System;
namespace Grains.RazorDesigner.Validation;
public enum DiagnosticSeverity
{
Warn,
Error,
}
public readonly record struct ValidationDiagnostic(
Guid? NodeId,
DiagnosticSeverity Severity,
string Code,
string Message );
public static class DiagnosticCodes
{
/// <summary>A non-container node has children (e.g. Button with a Label child).</summary>
public const string LeafHasChildren = "leaf.has-children";
/// <summary>A SplitContainer is missing its "left" or "right" slot.</summary>
public const string SlotMissing = "slot.missing";
/// <summary>Two or more nodes share the same ClassName, causing SCSS rule collisions.</summary>
public const string ClassNameDuplicate = "classname.duplicate";
public const string SchemaUnsupported = "schema.unsupported";
public const string ReservedKind = "reserved.kind";
public const string BindingsNonempty = "bindings.nonempty";
public const string UnsupportedPseudoClass = "pseudo.unsupported";
}