Feature/#113 easy configurability
Feature
Summary
This MR provides provides the possibility to configure TIDO in one place (index.template.html), and a default view without annotations.
config
Before (apart from the actual config in index.template.html):
It has been necessary to configure the panels (show/hide, order, labels, unique id, connector) separately in src/config/panels.js
aside the rest of the config.
This file held an array which had to be touched / changed to alter the panel behaviour and generated a random uniuqe id at runtime. (The latter is necessary to distinguish the panels from one another in regards to have dynamic components) and has (sort of) being exposed.
Now:
panels.js has been refactored and became a mixin (src/mixins/panels.js) without the panels array. Instead the array moved into index.template.html and the unique id generation is treated separately apart from user's eyes, since it's just not a config option.
As a result, we don't have to point out to not touch the id-key (README.md) and have all of the viewer config gathered in one single place.
default view
It also provides a default view with the annotations panel hidden, since it doesn't provide any content yet.
tiny fix
Additionally it holds a small fix in the software info (src/components/softwareinfo.vue), which automatically fetches the actual year for the copyright info. (pls just tick the info button in the footer to see the actual year: => 2021)
Does the result of the MR comply to our "definition of done"?
-
Unit tests passed -
Code reviewed -
Acceptance criteria met -
Functional tests passed -
Non-Functional requirements met -
Product Owner accepts the User Story
Documentation
-
I updated the README (if applicable) -
I provided my functions with appropriate documentation -
I adjusted other parts of the documentation (if applicable)
Tests
Are we able to test this new feature?
-
Yes, everything can be done via unit tests. -
Yes, you can test by following these steps:
- check out the branch:
git checkout feature/#113-easy-configurability
- update your local packages once:
npm i
(in the root dir of the project) - start your local dev server:
npm run dev
- edit the config file (src/index.template.html) as usual and watch the viewer change it's behaviour inside your browser (you might have to refresh your page)
Pls Note: it's not about new functionality but about the different implementation and therefore the possibility to configure our product in a single place. Pls also make sure, to read the corresponding, updated part of our README
-
No, it is not possible.
Changelog
-
I added a statement to the CHANGELOG. No. It will be done automatically.
Related Tickets
Add all related issues and especially those to be closed.