Skip to content

Conversation

krystian-panek-vmltech
Copy link
Collaborator

No description provided.

super(name);
}

public Map<String, Object> toMap() {

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

probably not needed

this.error = props.get("error", String.class);
this.output = props.get("output", String.class);
this.error = props.get("error", String.class);
this.inputs = JsonUtils.read(props.get("inputs", InputStream.class), InputValues.class);

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

fallback executableInputs to maintain backward compatibility

Copy link
Contributor

@Copilot Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR adds support for execution outputs functionality, allowing scripts to generate downloadable files. The changes include new type definitions for outputs, a download UI component, and backend support for storing and serving output files.

  • Introduces Output and Outputs types for defining downloadable script outputs
  • Adds ExecutionDownloadOutputsButton component for downloading execution outputs
  • Restructures input/output handling by moving inputs from Executable to Execution interface

Reviewed Changes

Copilot reviewed 40 out of 40 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
ui.frontend/src/utils/api.types.ts Adds Output and Outputs types, moves inputs from Executable to Execution
ui.frontend/src/pages/ScriptView.tsx Updates API call structure to move inputs outside of code object
ui.frontend/src/pages/ExecutionView.tsx Integrates download button and updates UI layout
ui.frontend/src/pages/ConsolePage.tsx Adds execution download functionality with type tracking
ui.frontend/src/components/ExecutionDownloadOutputsButton.tsx New component for downloading execution outputs
core/src/main/java/dev/vml/es/acm/core/servlet/ExecutionOutputServlet.java New servlet for serving execution output files
core/src/main/java/dev/vml/es/acm/core/code/Output.java New class for individual output definitions
core/src/main/java/dev/vml/es/acm/core/code/Outputs.java New class for managing output collections

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

@krystian-panek-vmltech krystian-panek-vmltech marked this pull request as ready for review September 25, 2025 22:49
@krystian-panek-vmltech krystian-panek-vmltech merged commit ae8b617 into main Sep 25, 2025
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants