@@ -13,6 +13,7 @@ import {
1313 VSCodeDivider ,
1414 VSCodeTag ,
1515} from "@vscode/webview-ui-toolkit/react" ;
16+ import { DataExtensionEditorViewState } from "../../data-extensions-editor/shared/view-state" ;
1617
1718const LibraryContainer = styled . div `
1819 background-color: var(--vscode-peekViewResult-background);
@@ -69,6 +70,7 @@ type Props = {
6970 title : string ;
7071 externalApiUsages : ExternalApiUsage [ ] ;
7172 modeledMethods : Record < string , ModeledMethod > ;
73+ viewState : DataExtensionEditorViewState | undefined ;
7274 mode : Mode ;
7375 hasUnsavedChanges : boolean ;
7476 onChange : (
@@ -87,6 +89,7 @@ export const LibraryRow = ({
8789 title,
8890 externalApiUsages,
8991 modeledMethods,
92+ viewState,
9093 mode,
9194 hasUnsavedChanges,
9295 onChange,
@@ -112,6 +115,11 @@ export const LibraryRow = ({
112115 e . preventDefault ( ) ;
113116 } , [ ] ) ;
114117
118+ const handleModelDependency = useCallback ( async ( e : React . MouseEvent ) => {
119+ e . stopPropagation ( ) ;
120+ e . preventDefault ( ) ;
121+ } , [ ] ) ;
122+
115123 const handleSave = useCallback (
116124 async ( e : React . MouseEvent ) => {
117125 onSaveModelClick ( title , externalApiUsages , modeledMethods ) ;
@@ -143,14 +151,23 @@ export const LibraryRow = ({
143151 </ ModeledPercentage >
144152 { hasUnsavedChanges ? < VSCodeTag > UNSAVED</ VSCodeTag > : null }
145153 </ NameContainer >
146- < VSCodeButton appearance = "icon" onClick = { handleModelWithAI } >
147- < Codicon name = "lightbulb-autofix" label = "Model with AI" />
148- Model with AI
149- </ VSCodeButton >
154+ { viewState ?. showLlmButton && (
155+ < VSCodeButton appearance = "icon" onClick = { handleModelWithAI } >
156+ < Codicon name = "lightbulb-autofix" label = "Model with AI" />
157+ Model with AI
158+ </ VSCodeButton >
159+ ) }
150160 < VSCodeButton appearance = "icon" onClick = { handleModelFromSource } >
151161 < Codicon name = "code" label = "Model from source" />
152162 Model from source
153163 </ VSCodeButton >
164+ { viewState ?. enableFrameworkMode &&
165+ viewState ?. mode === Mode . Application && (
166+ < VSCodeButton appearance = "icon" onClick = { handleModelDependency } >
167+ < Codicon name = "references" label = "Model dependency" />
168+ Model dependency
169+ </ VSCodeButton >
170+ ) }
154171 </ TitleContainer >
155172 { isExpanded && (
156173 < >
0 commit comments