eclipse-cdt-cloud / eclipse-cdt-cloud/vscode-trace-extension

Implement UI support for Global Configurations

Open
#328 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
TypeScript
Stars
11
Forks
33
Avg merge
2d 16h
Merged PRs (30d)
1

Description

### Feature Description:

This tracker is for the support of global configurations in the vscode-trace-extension UI. Global configuration is explained the [here](https://github.com/eclipse-cdt-cloud/theia-trace-extension/blob/master/doc/adr/0011-tsp-analysis-api.md).

Updates in the `traceviewer-react-component` that is part of the [theia-trace-extension repository](https://github.com/eclipse-cdt-cloud/theia-trace-extension) are expected together with the VsCode UI integration similarly to #318.

To support global configuration using the json editor the following items have to be implemented

- **Manage Global configuration**
- Add a vscode command + a button/menu into the "Opened Traces" view:
- This will open a new web-vew. The web view will use the Configuration Endpoints as described [here](https://github.com/eclipse-cdt-cloud/theia-trace-extension/blob/master/doc/adr/0011-tsp-analysis-api.md)
- **Use Cases**
- _Open global configuration web view_
- Get all configuration sources from BE
- Fill drop-down menu with all configuration sources. Select one (alphabetical)
- Execute Use Case: "User selects configuration source"
- _User selects configuration source_
- Get all configuration instances from selected source from BE
- Show all configurations as a list
- Each configuration will have an "Edit..." and "Delete" button
- There will be a "New..." Button to create a new instance
- _User presses "New..." Button_
- Json Editor is opened with pre-filled content according the schema
- User fills in content
- JSON Editor supports validation, saving, loading and applying configuration (the same way it does for data provider configuration)
- User applies configuration
- Execute Use Case "User selects configuration source"
- Refresh trace viewer (e.g. Available views view)
- Close Json Editor
- _User deletes configuration_
- User presses delete button of a configuration
- Execute Use Case "User selects configuration source"
- Refresh trace viewer (e.g. Available views view)
- _User edits configuration_
- Get JSON for configuration instances
- Open JSON editor for configuration instance
- User does updates
- User applies configuration
- Execute Use Case "User selects configuration source"
- Refresh trace viewer (e.g. Available views view)
- Close Json Editor
- _Close configuration webview_
- Close open json editor
- Make sure that content in editor is not lost (e.g. ask user to apply)
- **Notes**
- Consolidate json editor implementation for global configuration and data provider configuration to not duplicate code
- Handle adversarial cases

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.