Commit Graph

88 Commits

Author SHA1 Message Date
Konstantin Schaper
27dbcbf28d Integrate tailwind css and create new button library (#2098)
Introduce tailwind as new frontend styling library to replace bulma in the longer run. Also create the first new ui library `ui-buttons` which will be the new standard for buttons ins SCM-Manager. In this library we reconsidered which types of buttons should be used to create a clean and consistent ui.

Co-authored-by: Eduard Heimbuch <eduard.heimbuch@cloudogu.com>
2022-08-02 08:39:37 +02:00
Florian Scholdei
f3f19426c8 Unify password validation (#2077)
Passwords should be checked when created or changed in the frontend just as they are in the backend for REST and CLI.
Also extend the password validation to allow upto 1024 characters instead of 32.

Co-authored-by: Eduard Heimbuch <eduard.heimbuch@cloudogu.com>
2022-07-07 11:19:51 +02:00
Phil-Ah
6cf8afac01 Fix jumping and broken tool tips (#2026)
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
2022-05-05 21:51:20 +02:00
Eduard Heimbuch
9f9bfd6635 Fix user creation via UI 2022-03-10 17:18:17 +01:00
Phil-Ah
78b507921d Enhance ui-elements to be more accessible on smaller screens (#1950)
Enable breaking of content to be fully available on small screens or highly zoomed displays. This should help improve accessibility.

Co-authored-by: Florian Scholdei <florian.scholdei@cloudogu.com>
Co-authored-by: Konstantin Schaper <konstantin.schaper@cloudogu.com>
2022-02-18 14:48:21 +01:00
Matthias Thieroff
1fe7b0a01e Improve accessibility (#1956)
Fixes several accessibility issues:

- Provide a style for empty table column headers
- Add aria references and aria-labels
- Remove aria references if the referenced element is not rendered
2022-02-17 14:00:16 +01:00
René Pfeuffer
099c0ad6f6 Fixes input dialog for password field (#1934)
Fixes an javascript error in the create user dialog where the "event" from the password field is a simple string, no event.
2022-01-26 10:05:22 +01:00
Konstantin Schaper
d0cf976a54 Improve modal accessibility
Implement initial focus for modals. Change all modals including forms to put initial focus on the first input. When Enter is pressed on any input (CTRL + Enter for Textareas), the form is submitted if it is valid.

Co-authored-by: Sebastian Sdorra <sebastian.sdorra@cloudogu.com>
Co-authored-by: Eduard Heimbuch <eduard.heimbuch@cloudogu.com>
2022-01-21 14:25:19 +01:00
Florian Scholdei
16960d742e High contrast mode findings (#1892)
Fixes most of the flaws in high contrast mode.
2021-12-16 17:54:39 +01:00
Eduard Heimbuch
289175331f Fix es lint errors and warnings and enforce es lint as build breaker. (#1878)
Co-authored-by: Konstantin Schaper <konstantin.schaper@cloudogu.com>
2021-12-09 09:12:02 +01:00
Eduard Heimbuch
5eb1d9cd22 Clean up html structure (#1869)
Fix different html syntax errors to improve a11y.
2021-11-29 13:57:05 +01:00
Eduard Heimbuch
e58d3dd70c Fix repository file search (#1867) 2021-11-19 14:38:11 +01:00
Eduard Heimbuch
dc5f7d0f23 Feature/fix tabulator stops (#1831)
Add tab stops to action to increase accessibility of SCM-Manager with keyboard only usage. Also add a focus trap for modals to ensure the actions inside the modal can be used without losing the focus.

Co-authored-by: René Pfeuffer <rene.pfeuffer@cloudogu.com>
2021-11-16 11:35:58 +01:00
Eduard Heimbuch
6f61fefec5 Improve a11y (#1841)
Improve accessibility by removing unnecessary tags without hrefs. Also remove many eslint errors and warnings.
2021-11-04 09:16:08 +01:00
Sebastian Sdorra
0efdd2a483 Add experimental high contrast mode (#1845)
Add an experimental high contrast color theme to SCM-Manager. The high contrast mode uses a dark background and color with a high contrast for a better accessibility.
The change adds the theme to ui-styles and theme switcher to the storybook of ui-components.
2021-11-04 08:33:11 +01:00
Florian Scholdei
2cb006d040 Replace styled-components with bulma helpers (#1783)
Use Bulma helpers whenever possible instead of custom styled components.
This pull request replaces primarily color definitions, spacing and flex instructions.
2021-09-15 17:40:08 +02:00
Sebastian Sdorra
0ba8300051 Fix duplicate entries in branch selector (#1794) 2021-09-02 15:09:45 +02:00
Sebastian Sdorra
a7bb67f36b Fix branch selector display revision if selected instead of first branch (#1767)
The select component displays the first option if the value is not part of the options. This behaviour breaks the BranchSelector which uses Select since version 2.22.0 (before it used the deprecated DropDown component). The BranchSelector has to display the revision if one is selected, which is not part of the options.
This change will add a addValueToOptions property to the Select component and restore the old behaviour.
2021-08-16 14:54:50 +02:00
Eduard Heimbuch
d6402ad1cb Redesign repository overview (#1740)
Change repository overview layout to use single rows instead cards. Also remove quick links and add clone action to repository entry. The default repository link now leads to the sources view.

Co-authored-by: Sebastian Sdorra <sebastian.sdorra@cloudogu.com>
2021-07-28 15:04:00 +02:00
Sebastian Sdorra
e321133ff7 Add search engine and quick search for repositories (#1727)
Add a powerful search engine based on lucene to the scm-manager api.
The api can be used to index objects, simply by annotating them and add them to an index.
The first indexed object is the repository which could queried by quick search in the header.
2021-07-14 11:49:38 +02:00
Konstantin Schaper
e1239aff92 implement react-query for edge-cases (#1711)
When initially implementing react-query, we focussed on core features. This pull request now replaces the remaining apiClient usages in ui-components and ui-webapp with react-query hooks.
2021-06-28 13:19:03 +02:00
Konstantin Schaper
aa98044290 Form elements that support react-hook-form can now be made read-only (#1696)
The recently integrated form library react-hook-form does not submit disabled inputs, but a behaviour where interaction with an input is not possible and it is still submitted is necessary. This feature implements a readOnly property for all components that support react-hook-form. It is visually indistinguishable from a disabled input but will be submitted when the form is submitted. All form fields use disabled fieldset wrappers to accomplish this goal because react-hook-form only checks the disabled property on the input itself, not any ancestors, and the inputs are still correctly displayed as disabled.
2021-06-15 10:11:59 +02:00
Florian Scholdei
b058764fa1 Harmonize FileInput component with styleguide (#1693) 2021-06-09 16:39:07 +02:00
Eduard Heimbuch
dd0975b49a Feature/mirror (#1683)
Add mirror command and extension points.

Co-authored-by: René Pfeuffer <rene.pfeuffer@cloudogu.com>
Co-authored-by: Sebastian Sdorra <sebastian.sdorra@cloudogu.com>
Co-authored-by: Konstantin Schaper <konstantin.schaper@cloudogu.com>
2021-06-04 14:05:47 +02:00
Eduard Heimbuch
8ed2c1509f Fix endless loop in Select component 2021-06-01 15:20:41 +02:00
Eduard Heimbuch
a954e019ec Fix endless loop on render Select component 2021-05-28 10:07:55 +02:00
Florian Scholdei
42745c9e34 Notifications for health checks (#1664)
Add list of emergency contacts to global configuration. This user will receive e-mails and notification if some serious system error occurs like repository health check failed.
2021-05-20 08:30:20 +02:00
Konstantin Schaper
640a270e1d refactor form fields to enable usage with react-hook-form (#1656)
React Hook Form is a library that makes working with forms easier and reduces boilerplate. For it to be used in our project, some of the form fields had to be adjusted.
2021-05-14 09:08:57 +02:00
Konstantin Schaper
7286a62a80 Implement api for extension point typings (#1638)
Currently, the only way to explore available extension points is through our documentation or by browsing the source code. Once you find them, there is no guard rails and the usage is prone to user errors. This new api allows the declaration of extension points as types in code. This way, exposing an extension point is as easy as exporting it from a module. Both the implementation and the developer who uses the extension point work with the same shared type that allows auto-completion and type-checks for safety. This feature is backwards-compatible as the generic methods all have sensible defaults for the type parameters.

Co-authored-by: Sebastian Sdorra <sebastian.sdorra@cloudogu.com>
Co-authored-by: Eduard Heimbuch <eduard.heimbuch@cloudogu.com>
2021-05-12 16:05:30 +02:00
Florian Scholdei
05ef203038 Fix validation in "Add Entry" components (#1625) 2021-04-21 14:36:52 +02:00
Eduard Heimbuch
84c1e7ed37 Add new extension point for repository avatars (#1614)
Co-authored-by: René Pfeuffer <rene.pfeuffer@cloudogu.com>
2021-04-15 11:14:42 +02:00
Eduard Heimbuch
22a0362892 Feature/unicode groupname validation (#1600)
Allow all UTF-8 characters except URL identifiers as user and group names and for namespaces.

Fixes #1513

Co-authored-by: René Pfeuffer <rene.pfeuffer@cloudogu.com>
2021-03-25 09:59:23 +01:00
Sebastian Sdorra
89548d45bd Filepath search (#1568)
Add search for files to the sources view. The search is only for finding file paths. It does not search any file metadata nor the content. Results get a rating, where file names are rated higher than file paths. The results are sorted by the score and the first 50 results are displayed.

Co-authored-by: Eduard Heimbuch <eduard.heimbuch@cloudogu.com>
2021-03-04 10:39:58 +01:00
Florian Scholdei
61814a5027 Clarify that FileUpload component does not upload directly (#1566)
Clarify that FileUpload component does not upload directly:
Changed label from “Upload” to “Select File” and icon from direct to a kind of upload.
2021-03-03 10:01:29 +01:00
Eduard Heimbuch
821cca2a06 cleanup 2020-12-10 16:22:39 +01:00
Eduard Heimbuch
6886f09f26 create fileUpload component 2020-12-10 13:55:19 +01:00
Eduard Heimbuch
715c76e2f4 set repository name suggestion in import form just at leaving the input field 2020-12-03 09:38:23 +01:00
Eduard Heimbuch
485138e5f2 add unit tests 2020-11-26 11:06:35 +01:00
Eduard Heimbuch
308b95d8c7 Upgrade repository import api 2020-11-24 10:39:38 +01:00
Eduard Heimbuch
4661e6f6b4 refactor FilterInput component / enable delayed instant search 2020-11-04 12:16:35 +01:00
Sebastian Sdorra
3c32073853 Merge with develop 2020-11-04 08:22:41 +01:00
Eduard Heimbuch
2f87afdbc2 make placeholders overwritable 2020-11-03 13:30:00 +01:00
Eduard Heimbuch
0c8fe5a60c confirm password modal by enter key / fix password link for logged in user 2020-10-30 11:48:05 +01:00
Sebastian Sdorra
e398936a7d Merge pull request #1323 from scm-manager/feature/namespace_resource
Feature filter by namespace
2020-09-10 11:52:11 +02:00
Konstantin Schaper
954f9398b7 Merge remote-tracking branch 'origin/bugfix/repository-search-reset' into bugfix/repository-search-reset 2020-09-10 11:27:00 +02:00
Konstantin Schaper
d32a2f1490 clarify variable naming 2020-09-10 11:26:47 +02:00
Konstantin Schaper
20660a4151 Merge branch 'develop' into bugfix/repository-search-reset 2020-09-10 10:53:46 +02:00
Konstantin Schaper
498f0ca219 update filter value on props change 2020-09-10 10:48:37 +02:00
René Pfeuffer
589b844e28 Make namespace drop down take full width 2020-09-10 10:17:29 +02:00
Eduard Heimbuch
e6c31ec0e1 add indexResources to extensionProps 2020-09-07 15:40:14 +02:00