The branch table provides an extension point to add further columns, but the content was not vertically aligned anymore after the changes in #2016. This PR adds the same classes to the extension point columns as the other columns have to assure vertical alignment.
The styling for the focused line (e.g. permalink) in the source view with syntax highlighting was hard-coded and did not meet accessibility standards, especially in high-contrast mode. This pull request introduces two new css variables that are fine-tuned to meet contrast requirements for each theme. An additional "bar" with specifically high contrast has been added to the left of the focused line, because it was impossible to find one background color that would provide sufficient contrast with both the page background as well as all highlighting colors.
Co-authored-by: Eduard Heimbuch <eduard.heimbuch@cloudogu.com>
"padding: inherit;" does not take any further arguments.
Further definitions will be moved to separate lines to produce valid CSS.
Co-authored-by: Eduard Heimbuch <eduard.heimbuch@cloudogu.com>
In .card-tables there was an action area that had a darker background. Now this area only contains the delete action. Also, users mistakenly assumed that the hovered area could be clicked. It has therefore been removed and the icons themselves have received a hover effect.
The way the tool tip implements passed class names is mistakable. The passed classes broke the tool tip and are removed. The same issue led to a broken tool tip for the code search and is fixed as well. Unnecessary code is removed from help.
Fixes#2025
Due to the dependencies to ui-syntaxhighlighting and ui-text
from ui-components, these new packages have to be deployed on
npm if ui-components is used in version 2.32.0 or later. Because
these packages shall not be deployed on npm, this changes the
dependencies to dev dependencies in ui-components.
We unified syntax highlighting and extracted it into a low level module. Syntax highlighting from now on takes place in a web worker, so that the user interface stays responsive. The web worker stops automatically if the number of nodes which should be highlighted exceeds the defined limit we believe the browser can handle.
Co-authored-by: Sebastian Sdorra <sebastian.sdorra@cloudogu.com>
Co-authored-by: Konstantin Schaper <konstantin.schaper@cloudogu.com>
The focus state of buttons should be clearly visible in all modes to help find the focused element. Buttons are especially important and therefore receive a special outline in a unique color. The colored outline can be set with CSS-variables.
If entities like users, groups or repository namespaces contains parenthesis the frontend router gets confused and doesn't work properly. To fix this issue we escape the chars in the url which may cause such problems because they are reserved by the http url schema.
Co-authored-by: René Pfeuffer <rene.pfeuffer@cloudogu.com>
Co-authored-by: Florian Scholdei <florian.scholdei@cloudogu.com>
Avoid unnecessary re-rendering of markdown view which e.g. caused an embedded secure code warrior video to reload on every page interaction.
Co-authored-by: Konstantin Schaper <konstantin.schaper@cloudogu.com>
* The scss variable $popover-border-color is now also used throughout the internal styles
* Derived css variable is exported only once
* Scss definitions are now organized and structured with descriptive comments
* Fix incorrect styling due to a too dark and at the same time very thick border in the CreateButton component
* Darken $border-light a little, so that it is not brighter than the border in dark mode
At certain screen sizes the table in code view breaks if more than one action is available in a row. The fix enables the list of actions to wrap if the table is displayed on smaller sizes.
Co-authored-by: Eduard Heimbuch <eduard.heimbuch@cloudogu.com>
Co-authored-by: Matthias Thieroff <matthias.thieroff@cloudogu.com>
This pull request converts the current incomplete textual documentation of the available frontend extension points to in-code definitions that act both as documentation and as type helpers for improving overall code quality. All extension points available in the SCM-Manager core are now available, but no plugin was updated and only those parts of the core codebase had the new types added that did not require runtime changes. The only exception to this is the breadcrumbs, which was a simple change that is fully backwards-compatible.
If a queued module is only removed from the queue upon successfully resolving all its dependencies,
it could fail multiple times, causing multiple entries to appear in the queue.
This in turn causes the module to get executed multiple times.
The solution is to immediately remove the module when it is dequeued.
If it fails again, it is then re-added to the queue.
Fix jenkins testing stage to not ignore test result. This led to different results between local builds and Jenkins builds which confused the developer and could hide implementation errors.
Add feedback button and form. This feedback form can be used to provide direct feedback to the SCM-Manager Team.
Co-authored-by: Matthias Thieroff <matthias.thieroff@cloudogu.com>
This commit introduces a new more relaxed theme, the dark theme!
In addition, the theme can now be selected according to the system defaults.
And the other themes, as well as the general structure were unified/simplified.
Co-authored-by: Philipp Ahrendt <philipp.ahrendt@cloudogu.com>
Co-authored-by: Eduard Heimbuch <eduard.heimbuch@cloudogu.com>
Co-authored-by: René Pfeuffer <rene.pfeuffer@cloudogu.com>
Co-authored-by: Matthias Thieroff <matthias.thieroff@cloudogu.com>
The triangle above the list of notifications needs to point at the bell to communicate the relation between the two.
Co-authored-by: Eduard Heimbuch <eduard.heimbuch@cloudogu.com>
Do not redirect to other page after data was simply updated. After removing this redirect we stumbled upon some bigger issue with stale data inside our forms. This led to conflicts (Concurrent Modification Exceptions) if data was updated multiple times without reloading the page because of the last modified date of the single entities. This issue was hidden through the redirect and we fixed this by refactoring the form to functional components and simplify the state handling.
In light of the upcoming release of version 3 of the integration-test-runner, which does not use cucumber but standard cypress with typescript, all e2e tests have been converted to match the new format.
Co-authored-by: Eduard Heimbuch <eduard.heimbuch@cloudogu.com>