Hook up generating from source

This commit is contained in:
Robert
2023-07-10 13:03:28 +01:00
parent c25619332c
commit c8fd00b983
3 changed files with 16 additions and 6 deletions

View File

@@ -179,7 +179,7 @@ export function DataExtensionsEditor({
[], [],
); );
const onGenerateClick = useCallback(() => { const onGenerateFromSourceClick = useCallback(() => {
vscode.postMessage({ vscode.postMessage({
t: "generateExternalApi", t: "generateExternalApi",
}); });
@@ -279,7 +279,7 @@ export function DataExtensionsEditor({
Refresh Refresh
</VSCodeButton> </VSCodeButton>
)} )}
<VSCodeButton onClick={onGenerateClick}> <VSCodeButton onClick={onGenerateFromSourceClick}>
{viewState?.mode === Mode.Framework {viewState?.mode === Mode.Framework
? "Generate" ? "Generate"
: "Download and generate"} : "Download and generate"}
@@ -301,6 +301,7 @@ export function DataExtensionsEditor({
onChange={onChange} onChange={onChange}
onSaveModelClick={onSaveModelClick} onSaveModelClick={onSaveModelClick}
onGenerateFromLlmClick={onGenerateFromLlmClick} onGenerateFromLlmClick={onGenerateFromLlmClick}
onGenerateFromSourceClick={onGenerateFromSourceClick}
/> />
</EditorContainer> </EditorContainer>
</> </>

View File

@@ -87,6 +87,7 @@ type Props = {
externalApiUsages: ExternalApiUsage[], externalApiUsages: ExternalApiUsage[],
modeledMethods: Record<string, ModeledMethod>, modeledMethods: Record<string, ModeledMethod>,
) => void; ) => void;
onGenerateFromSourceClick: () => void;
}; };
export const LibraryRow = ({ export const LibraryRow = ({
@@ -99,6 +100,7 @@ export const LibraryRow = ({
onChange, onChange,
onSaveModelClick, onSaveModelClick,
onGenerateFromLlmClick, onGenerateFromLlmClick,
onGenerateFromSourceClick,
}: Props) => { }: Props) => {
const modeledPercentage = useMemo(() => { const modeledPercentage = useMemo(() => {
return calculateModeledPercentage(externalApiUsages); return calculateModeledPercentage(externalApiUsages);
@@ -119,10 +121,14 @@ export const LibraryRow = ({
[externalApiUsages, modeledMethods, onGenerateFromLlmClick], [externalApiUsages, modeledMethods, onGenerateFromLlmClick],
); );
const handleModelFromSource = useCallback(async (e: React.MouseEvent) => { const handleModelFromSource = useCallback(
e.stopPropagation(); async (e: React.MouseEvent) => {
e.preventDefault(); onGenerateFromSourceClick();
}, []); e.stopPropagation();
e.preventDefault();
},
[onGenerateFromSourceClick],
);
const handleModelDependency = useCallback(async (e: React.MouseEvent) => { const handleModelDependency = useCallback(async (e: React.MouseEvent) => {
e.stopPropagation(); e.stopPropagation();

View File

@@ -30,6 +30,7 @@ type Props = {
externalApiUsages: ExternalApiUsage[], externalApiUsages: ExternalApiUsage[],
modeledMethods: Record<string, ModeledMethod>, modeledMethods: Record<string, ModeledMethod>,
) => void; ) => void;
onGenerateFromSourceClick: () => void;
}; };
export const ModeledMethodsList = ({ export const ModeledMethodsList = ({
@@ -41,6 +42,7 @@ export const ModeledMethodsList = ({
onChange, onChange,
onSaveModelClick, onSaveModelClick,
onGenerateFromLlmClick, onGenerateFromLlmClick,
onGenerateFromSourceClick,
}: Props) => { }: Props) => {
const grouped = useMemo( const grouped = useMemo(
() => groupMethods(externalApiUsages, mode), () => groupMethods(externalApiUsages, mode),
@@ -63,6 +65,7 @@ export const ModeledMethodsList = ({
onChange={onChange} onChange={onChange}
onSaveModelClick={onSaveModelClick} onSaveModelClick={onSaveModelClick}
onGenerateFromLlmClick={onGenerateFromLlmClick} onGenerateFromLlmClick={onGenerateFromLlmClick}
onGenerateFromSourceClick={onGenerateFromSourceClick}
/> />
))} ))}
</> </>