Merge pull request #2590 from github/robertbrignull/data-button-features
Only show LLM / framework mode when the view state says to show the button
This commit is contained in:
@@ -282,6 +282,7 @@ export function DataExtensionsEditor({
|
||||
externalApiUsages={externalApiUsages}
|
||||
unsavedModels={unsavedModels}
|
||||
modeledMethods={modeledMethods}
|
||||
viewState={viewState}
|
||||
mode={viewState?.mode ?? Mode.Application}
|
||||
onChange={onChange}
|
||||
onSaveModelClick={onSaveModelClick}
|
||||
|
||||
@@ -13,6 +13,7 @@ import {
|
||||
VSCodeDivider,
|
||||
VSCodeTag,
|
||||
} from "@vscode/webview-ui-toolkit/react";
|
||||
import { DataExtensionEditorViewState } from "../../data-extensions-editor/shared/view-state";
|
||||
|
||||
const LibraryContainer = styled.div`
|
||||
background-color: var(--vscode-peekViewResult-background);
|
||||
@@ -69,6 +70,7 @@ type Props = {
|
||||
title: string;
|
||||
externalApiUsages: ExternalApiUsage[];
|
||||
modeledMethods: Record<string, ModeledMethod>;
|
||||
viewState: DataExtensionEditorViewState | undefined;
|
||||
mode: Mode;
|
||||
hasUnsavedChanges: boolean;
|
||||
onChange: (
|
||||
@@ -87,6 +89,7 @@ export const LibraryRow = ({
|
||||
title,
|
||||
externalApiUsages,
|
||||
modeledMethods,
|
||||
viewState,
|
||||
mode,
|
||||
hasUnsavedChanges,
|
||||
onChange,
|
||||
@@ -112,6 +115,11 @@ export const LibraryRow = ({
|
||||
e.preventDefault();
|
||||
}, []);
|
||||
|
||||
const handleModelDependency = useCallback(async (e: React.MouseEvent) => {
|
||||
e.stopPropagation();
|
||||
e.preventDefault();
|
||||
}, []);
|
||||
|
||||
const handleSave = useCallback(
|
||||
async (e: React.MouseEvent) => {
|
||||
onSaveModelClick(title, externalApiUsages, modeledMethods);
|
||||
@@ -143,14 +151,23 @@ export const LibraryRow = ({
|
||||
</ModeledPercentage>
|
||||
{hasUnsavedChanges ? <VSCodeTag>UNSAVED</VSCodeTag> : null}
|
||||
</NameContainer>
|
||||
<VSCodeButton appearance="icon" onClick={handleModelWithAI}>
|
||||
<Codicon name="lightbulb-autofix" label="Model with AI" />
|
||||
Model with AI
|
||||
</VSCodeButton>
|
||||
{viewState?.showLlmButton && (
|
||||
<VSCodeButton appearance="icon" onClick={handleModelWithAI}>
|
||||
<Codicon name="lightbulb-autofix" label="Model with AI" />
|
||||
Model with AI
|
||||
</VSCodeButton>
|
||||
)}
|
||||
<VSCodeButton appearance="icon" onClick={handleModelFromSource}>
|
||||
<Codicon name="code" label="Model from source" />
|
||||
Model from source
|
||||
</VSCodeButton>
|
||||
{viewState?.enableFrameworkMode &&
|
||||
viewState?.mode === Mode.Application && (
|
||||
<VSCodeButton appearance="icon" onClick={handleModelDependency}>
|
||||
<Codicon name="references" label="Model dependency" />
|
||||
Model dependency
|
||||
</VSCodeButton>
|
||||
)}
|
||||
</TitleContainer>
|
||||
{isExpanded && (
|
||||
<>
|
||||
|
||||
@@ -8,11 +8,13 @@ import {
|
||||
groupMethods,
|
||||
sortGroupNames,
|
||||
} from "../../data-extensions-editor/shared/sorting";
|
||||
import { DataExtensionEditorViewState } from "../../data-extensions-editor/shared/view-state";
|
||||
|
||||
type Props = {
|
||||
externalApiUsages: ExternalApiUsage[];
|
||||
unsavedModels: Set<string>;
|
||||
modeledMethods: Record<string, ModeledMethod>;
|
||||
viewState: DataExtensionEditorViewState | undefined;
|
||||
mode: Mode;
|
||||
onChange: (
|
||||
modelName: string,
|
||||
@@ -30,6 +32,7 @@ export const ModeledMethodsList = ({
|
||||
externalApiUsages,
|
||||
unsavedModels,
|
||||
modeledMethods,
|
||||
viewState,
|
||||
mode,
|
||||
onChange,
|
||||
onSaveModelClick,
|
||||
@@ -50,6 +53,7 @@ export const ModeledMethodsList = ({
|
||||
externalApiUsages={grouped[libraryName]}
|
||||
hasUnsavedChanges={unsavedModels.has(libraryName)}
|
||||
modeledMethods={modeledMethods}
|
||||
viewState={viewState}
|
||||
mode={mode}
|
||||
onChange={onChange}
|
||||
onSaveModelClick={onSaveModelClick}
|
||||
|
||||
Reference in New Issue
Block a user