webui-client issueshttps://gitlab.fit.cvut.cz/algorithms-library-toolkit/webui-client/-/issues2022-03-13T10:36:09+01:00https://gitlab.fit.cvut.cz/algorithms-library-toolkit/webui-client/-/issues/72The input json validation should be more robust2022-03-13T10:36:09+01:00Tomáš PeckaThe input json validation should be more robustWe don't validate the input JSON that much. For instance, a single key can appear in both algorithm and input/output nodes, this should be forbidden and we should reject such JSONs.We don't validate the input JSON that much. For instance, a single key can appear in both algorithm and input/output nodes, this should be forbidden and we should reject such JSONs.Tomáš PeckaTomáš Peckahttps://gitlab.fit.cvut.cz/algorithms-library-toolkit/webui-client/-/issues/71Add input and output boxes with Parse2022-04-19T17:35:22+02:00Hana LitavskáAdd input and output boxes with ParseAdd input and output boxes for string input that will be parsed to grammar, automaton... Using string::Parse templated algorithm.Add input and output boxes for string input that will be parsed to grammar, automaton... Using string::Parse templated algorithm.BPHana LitavskáHana Litavskáhttps://gitlab.fit.cvut.cz/algorithms-library-toolkit/webui-client/-/issues/70worker: Remove pipe communication2022-05-11T23:44:58+02:00Tomáš Peckaworker: Remove pipe communicationSee https://gitlab.fit.cvut.cz/algorithms-library-toolkit/automata-library/issues/223See https://gitlab.fit.cvut.cz/algorithms-library-toolkit/automata-library/issues/223Tomáš PeckaTomáš Peckahttps://gitlab.fit.cvut.cz/algorithms-library-toolkit/webui-client/-/issues/69server: enable compression over HTTP2022-02-25T12:07:21+01:00Tomáš Peckaserver: enable compression over HTTPThe server probably does not compress responses. Firefox dev console shows 550kB transferred and 550kB file. The compression should lower that significantly.
https://ktor.io/docs/compression.html#configure_content_typeThe server probably does not compress responses. Firefox dev console shows 550kB transferred and 550kB file. The compression should lower that significantly.
https://ktor.io/docs/compression.html#configure_content_typeTomáš PeckaTomáš Peckahttps://gitlab.fit.cvut.cz/algorithms-library-toolkit/webui-client/-/issues/68Rename repository to 'webui'2022-02-23T12:53:46+01:00Tomáš PeckaRename repository to 'webui'Let's rename the repository to 'webui'.
The name 'webui-client' is there for historical reasons only. Originally we used 3 repos (one for each subproject).
But now we use monorepo for the three services, it's not client only anymore.Let's rename the repository to 'webui'.
The name 'webui-client' is there for historical reasons only. Originally we used 3 repos (one for each subproject).
But now we use monorepo for the three services, it's not client only anymore.Tomáš PeckaTomáš Peckahttps://gitlab.fit.cvut.cz/algorithms-library-toolkit/webui-client/-/issues/67Return value tooltip on parameters2022-04-16T19:14:20+02:00Hana LitavskáReturn value tooltip on parametersSome algorithms have "return value" tooltip on parameter icons.
![return_value](/uploads/0726aaeaa642337459b610dee543a49e/return_value.png)Some algorithms have "return value" tooltip on parameter icons.
![return_value](/uploads/0726aaeaa642337459b610dee543a49e/return_value.png)BPhttps://gitlab.fit.cvut.cz/algorithms-library-toolkit/webui-client/-/issues/66Reduce bundle size2022-02-20T13:55:19+01:00Tomáš PeckaReduce bundle sizeToday's build of 73460371 (this does not have the `algorithms.json` bundled anymore):
```
File sizes after gzip:
737.9 KB build/static/js/2.a28c4d21.chunk.js
35.84 KB build/static/js/main.364ca3d4.chunk.js
775 B build/stati...Today's build of 73460371 (this does not have the `algorithms.json` bundled anymore):
```
File sizes after gzip:
737.9 KB build/static/js/2.a28c4d21.chunk.js
35.84 KB build/static/js/main.364ca3d4.chunk.js
775 B build/static/js/runtime-main.595ff79e.js
135 B build/static/css/main.876345ae.chunk.css
```
Still too much I guess.
As per https://create-react-app.dev/docs/analyzing-the-bundle-size/:
Externals:
* 72.4% by viz.js (1.98 MB, graphviz dependency) !!!
* 6.2% by MUI (174 KB, not much to do I guess)
* 4.1% by react (114KB, not much to do I guess)
* 2.1% by immutable.js (60KB, used only for Maps in redux)
Our code is not that big.
Find out how to reduce viz.js size. Their [github repo](https://github.com/mdaines/viz.js/) says they compiled the C code with Emscripten :( Is there a way how not to bundle whole viz.js?Tomáš PeckaTomáš Peckahttps://gitlab.fit.cvut.cz/algorithms-library-toolkit/webui-client/-/issues/65We don't need to list all overloadeded functions2022-05-10T19:21:55+02:00Tomáš PeckaWe don't need to list all overloadeded functionsAs of now, we list all overloads of a function, e.g. `string::Compose`.
When user selects a `string::Compose` for e.g. `alphabet::BarSymbol` instead of `automaton::DFA`, it works, because the selection of the overload is left to the ALT,...As of now, we list all overloads of a function, e.g. `string::Compose`.
When user selects a `string::Compose` for e.g. `alphabet::BarSymbol` instead of `automaton::DFA`, it works, because the selection of the overload is left to the ALT, so it is actually not needed.
But we give user a visual warning that he chose a wrong overload (even if it works).
I'd like this to change.
* Let's list only one overload in the algorithm menu with a dropdown bar that shows all of them with appropriate docs (should the docs differ for every overload or should we unify the docs for all overloads?).
* Let's give the warning to the user only if he connects an edge from the box with a return value that cannot be used is absolutely not viable, i.e., it can't be used as an input for any of the overloads.
* However I am not sure how to deal with outputs of such overloaded box. Should we guess what the output is?BPHana LitavskáHana Litavskáhttps://gitlab.fit.cvut.cz/algorithms-library-toolkit/webui-client/-/issues/64Filter by return type / argument types2022-04-25T14:06:13+02:00Hana LitavskáFilter by return type / argument typesBPhttps://gitlab.fit.cvut.cz/algorithms-library-toolkit/webui-client/-/issues/63Create a second instance that will work with ALT dev branches2021-11-29T10:11:57+01:00Hana LitavskáCreate a second instance that will work with ALT dev branchesCreate a second instance that will work with ALT dev branches, not master. Or create a special worker and special queues.Create a second instance that will work with ALT dev branches, not master. Or create a special worker and special queues.BPhttps://gitlab.fit.cvut.cz/algorithms-library-toolkit/webui-client/-/issues/62Custom function node2022-05-13T13:47:02+02:00Hana LitavskáCustom function nodeBPhttps://gitlab.fit.cvut.cz/algorithms-library-toolkit/webui-client/-/issues/61Parse doxygen comments and visualize them2021-11-29T09:13:34+01:00Hana LitavskáParse doxygen comments and visualize themBPhttps://gitlab.fit.cvut.cz/algorithms-library-toolkit/webui-client/-/issues/60Link from algorithm to the source code2021-11-29T09:24:38+01:00Hana LitavskáLink from algorithm to the source codeBPhttps://gitlab.fit.cvut.cz/algorithms-library-toolkit/webui-client/-/issues/59Extend statemaker with pushdown automata2021-11-29T09:16:25+01:00Hana LitavskáExtend statemaker with pushdown automataBPhttps://gitlab.fit.cvut.cz/algorithms-library-toolkit/webui-client/-/issues/58Add a form for specifying grammars without a need to learn ALT input language2022-04-17T10:59:24+02:00Hana LitavskáAdd a form for specifying grammars without a need to learn ALT input languageBPhttps://gitlab.fit.cvut.cz/algorithms-library-toolkit/webui-client/-/issues/57show documentation for algorithm boxes on canvas2022-03-25T15:31:18+01:00Tomáš Peckashow documentation for algorithm boxes on canvasMaybe a small (i) icon that shows a popup with documentation.Maybe a small (i) icon that shows a popup with documentation.BPhttps://gitlab.fit.cvut.cz/algorithms-library-toolkit/webui-client/-/issues/56templated algorithms (like string::Parse) should show the template arguments ...2022-03-25T15:31:19+01:00Tomáš Peckatemplated algorithms (like string::Parse) should show the template arguments in the Box on canvasI think templated algos should show its template params on the algorithm canvas.
User can't possibly remember which template specialization he put on the canvas.I think templated algos should show its template params on the algorithm canvas.
User can't possibly remember which template specialization he put on the canvas.BPhttps://gitlab.fit.cvut.cz/algorithms-library-toolkit/webui-client/-/issues/55Offline version2021-11-26T10:13:56+01:00Tomáš PeckaOffline versionWrap webui-client together with some implementation of a single worker and a server into an (electron) app usable offline.Wrap webui-client together with some implementation of a single worker and a server into an (electron) app usable offline.https://gitlab.fit.cvut.cz/algorithms-library-toolkit/webui-client/-/issues/54Make the JSON describing AlgoGraph smaller2021-11-21T11:35:57+01:00Tomáš PeckaMake the JSON describing AlgoGraph smallerSome work was done in #47. But, I think we can make the JSON smaller and get smaller links.
However, proceed with caution. We must be able to parse older JSONs as well.
Perhaps, we can also gzip the base64 encoded-json to make it small...Some work was done in #47. But, I think we can make the JSON smaller and get smaller links.
However, proceed with caution. We must be able to parse older JSONs as well.
Perhaps, we can also gzip the base64 encoded-json to make it smaller. I believe there is going to be a npm-packaged library for (un)gzipping.BPhttps://gitlab.fit.cvut.cz/algorithms-library-toolkit/webui-client/-/issues/53Add switch to show/hide verbose output nodes2021-11-21T11:29:17+01:00Tomáš PeckaAdd switch to show/hide verbose output nodesPerhaps we can add a checkbox somewhere to allow/disallow showing verbose output of some nodes?
If so, do we wan't to propagate this value into the worker so it does not report it?Perhaps we can add a checkbox somewhere to allow/disallow showing verbose output of some nodes?
If so, do we wan't to propagate this value into the worker so it does not report it?BP