@@ -31,6 +31,8 @@ import { ModelEditorViewState } from "../../model-editor/shared/view-state";
3131import { Codicon } from "../common" ;
3232import { canAddNewModeledMethod } from "../../model-editor/shared/multiple-modeled-methods" ;
3333import { DataGridCell , DataGridRow } from "../common/DataGrid" ;
34+ import { validateModeledMethods } from "../../model-editor/shared/validation" ;
35+ import { ModeledMethodAlert } from "../method-modeling/ModeledMethodAlert" ;
3436
3537const ApiOrMethodRow = styled . div `
3638 min-height: calc(var(--input-height) * 1px);
@@ -111,6 +113,11 @@ const ModelableMethodRow = forwardRef<HTMLElement | undefined, MethodRowProps>(
111113 [ modeledMethodsProp , method , viewState ] ,
112114 ) ;
113115
116+ const validationErrors = useMemo (
117+ ( ) => validateModeledMethods ( modeledMethods ) ,
118+ [ modeledMethods ] ,
119+ ) ;
120+
114121 const modeledMethodChangedHandlers = useMemo (
115122 ( ) =>
116123 modeledMethods . map ( ( _ , index ) => ( modeledMethod : ModeledMethod ) => {
@@ -163,7 +170,9 @@ const ModelableMethodRow = forwardRef<HTMLElement | undefined, MethodRowProps>(
163170 ref = { ref }
164171 focused = { revealedMethodSignature === method . signature }
165172 >
166- < DataGridCell gridRow = { `span ${ modeledMethods . length } ` } >
173+ < DataGridCell
174+ gridRow = { `span ${ modeledMethods . length + validationErrors . length } ` }
175+ >
167176 < ApiOrMethodRow >
168177 < ModelingStatusIndicator status = { modelingStatus } />
169178 < MethodClassifications method = { method } />
@@ -256,6 +265,11 @@ const ModelableMethodRow = forwardRef<HTMLElement | undefined, MethodRowProps>(
256265 ) }
257266 </ Fragment >
258267 ) ) }
268+ { validationErrors . map ( ( error , index ) => (
269+ < DataGridCell gridColumn = "span 5" key = { index } >
270+ < ModeledMethodAlert error = { error } />
271+ </ DataGridCell >
272+ ) ) }
259273 </ >
260274 ) }
261275 </ DataGridRow >
0 commit comments