Skip to content

Liz gui #360

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 39 commits into from
Sep 22, 2024
Merged

Liz gui #360

merged 39 commits into from
Sep 22, 2024

Conversation

elizaveta-terek
Copy link
Contributor

This PR adds the basic setting components for different parameter types.
Added:

  • Switch
  • Collapsible Box
  • Drag and Drop list
  • Dropdown
  • TextField
  • Frequency Settings
    The latter two need adjustments, as they are based on settings object flattening and do not update properly. Still, the Frequency Settings display a convenient layout of band selection, addition and edit.
    Switches allow to display feature settings themselves and later render the appearance of additional options, based on selected features.
    Collapsible boxes allow to separate the contents of several setting types and increase the readability of the code.
    Drag and Drop reflect the selected preprocessing options in the order they were selected. They can be later retracted from the zustand store.

@toni-neurosc toni-neurosc changed the base branch from main to gui September 10, 2024 18:14
@timonmerk
Copy link
Contributor

This branch has been merged into gui_lsl. Many thanks @elizaveta-terek and @toni-neurosc!

@timonmerk timonmerk closed this Sep 11, 2024
@toni-neurosc toni-neurosc reopened this Sep 12, 2024
@toni-neurosc
Copy link
Collaborator

Hi @timonmerk , is it ok to you if i finish the Settings component here and merge directly to the main gui branch?

@timonmerk
Copy link
Contributor

Fine with me @toni-neurosc. I would ask you though to then also merge the gui-lsl branch into the gui branch. In this way we have a common one to start working on different components

toni-neurosc and others added 23 commits September 19, 2024 23:26
* add routing and dummy pages

* added toolbar, changed styling

* updated channels gui

* Add multiple simultaneous websocket connections

* Fix backend dependencies

* Detect if app running in WebView

* Fix some websocket issues

* update deps

* Unify TitleBar and AppToolbar into AppBar, use UserAgent to detect PyWebView

* Add App Info modal dialog when clicking on Title

* Fix handling of keyboard interrupt events, add parameter to make PyWebView optional

* hide resize handle for normal browsers

* Delete test data, add test folder to .gitignore

* Remove npm lock file, add to .gitignore

* Delete ThemedApp

* Delete and ignore uv.lock

* Undo reset.css changes

---------

Co-authored-by: Samed Rouven Vossberg <57455873+SamedVossberg@users.noreply.github.com>
toni-neurosc and others added 13 commits September 20, 2024 00:40
* add routing and dummy pages

* added toolbar, changed styling

* updated channels gui

* Add multiple simultaneous websocket connections

* Fix backend dependencies

* Detect if app running in WebView

* Fix some websocket issues

* update deps

* Unify TitleBar and AppToolbar into AppBar, use UserAgent to detect PyWebView

* Add App Info modal dialog when clicking on Title

* Fix handling of keyboard interrupt events, add parameter to make PyWebView optional

* hide resize handle for normal browsers

* Delete test data, add test folder to .gitignore

* Remove npm lock file, add to .gitignore

* Delete ThemedApp

* Delete and ignore uv.lock

* Undo reset.css changes

---------

Co-authored-by: Samed Rouven Vossberg <57455873+SamedVossberg@users.noreply.github.com>
* nm channels connected to backend and fix in backend

* debugging backend connection, adding POST to Channels

* add fastAPI call for LSL

* add LSL Stream search

* add LSL Stream setup

* Remove hardcoded backend port from websocket store and add ws proxy to vite

* Divide file and source selection into separate components and routes

* add offline Stream setup and modularize SourceSelectionSettings

* minor change: replace navigate with react-router Link

* add test file for LSL stream setup

* minor: fix routes

* Add FileBrowser component and API endpoints to access local computer file system

* debug backend and chanels

* LSLOfflineStream: run in a separate subprocess, add blocking and non-blocking modes, add context manager

* Made channels component scrollable

* Update StreamSelector, change some components to MUI, add immer to sessionStore

* Add jsconfig and Eslint jsdoc plugin

* fix option to setup LSL stream

* set port to 50001

* Filter out React 19 warnings for MUI components

* Fix JSDoc linting style

* - Update to Zustand 5, add utility functions to create stores with middleware and devtools
- Make sessionStore and uiStore persistent
- Refactor Channels page
- Add FileManager class
- Start adding JSDoc documentation and configs
- Add TitledBox component
- Remove mock data generation
- Fix backend hot-reloading (hack)
- Add dev parameter to AppManager (enables hot reloading)
- Other fixes and changes

---------

Co-authored-by: Samed Rouven Vossberg <57455873+SamedVossberg@users.noreply.github.com>
Co-authored-by: Toni M. Brotons <10654467+toni-neurosc@users.noreply.github.com>
- Remove most module.css files
- Add recursively rendering Settings component
- Temporarily emove Sidebar from layout (component remains in codebase)
- Reorganize component and page file structure with less subfolders
@toni-neurosc toni-neurosc merged commit 1296a81 into gui Sep 22, 2024
0 of 6 checks passed
@toni-neurosc toni-neurosc deleted the liz_gui branch September 22, 2024 12:14
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.

3 participants