779 Commits

Author SHA1 Message Date
Tarik Gürsoy
3ffbdd8d17 Move frontendcomponents into ui-core
The new architecture has been implemented.

Co-authored-by: Eduard Heimbuch<eduard.heimbuch@cloudogu.com>
Committed-by: Eduard Heimbuch<eduard.heimbuch@cloudogu.com>
Pushed-by: Tarik Gürsoy<tarik.guersoy@cloudogu.com>
Committed-by: Tarik Gürsoy<tarik.guersoy@cloudogu.com>
Pushed-by: Eduard Heimbuch<eduard.heimbuch@cloudogu.com>
Co-authored-by: Tarik Gürsoy<tarik.guersoy@cloudogu.com>


Reviewed-by: Konstantin Schaper <konstantin.schaper@cloudogu.com>
2024-01-24 10:38:17 +01:00
Florian Scholdei
7f0da35659 Mail validation in frontend and backend unified
Pushed-by: Florian Scholdei<florian.scholdei@cloudogu.com>
Co-authored-by: Florian Scholdei<florian.scholdei@cloudogu.com>
2024-01-09 16:53:18 +01:00
Florian Scholdei
ec0e1ec320 Constant navigation width independent of content
Fixes issues that occurred after #224.

Pushed-by: Florian Scholdei<florian.scholdei@cloudogu.com>
Co-authored-by: Florian Scholdei<florian.scholdei@cloudogu.com>
2024-01-08 09:52:03 +01:00
Eduard Heimbuch
abe0a62cb4 Fix markdown image links for relative paths on branches with '/' 2023-12-14 14:55:21 +01:00
Florian Scholdei
75695f9fb1 Convert truthy value to true and reintroduce PrimaryContentColumn sizing
Fixes issues that occurred after #224.
2023-12-14 09:01:48 +01:00
Eduard Heimbuch
96c4bec5b9 Add max width for primary columns 2023-12-12 14:29:44 +01:00
Florian Scholdei
bb88ba28ed URI encode branch of images in markdown files
Pushed-by: Florian Scholdei<florian.scholdei@cloudogu.com>
Co-authored-by: Florian Scholdei<florian.scholdei@cloudogu.com>
2023-12-12 13:12:05 +01:00
Florian Scholdei
72886bd204 Save collapse status of secondary navigation
Pushed-by: Florian Scholdei<florian.scholdei@cloudogu.com>
Co-authored-by: Florian Scholdei<florian.scholdei@cloudogu.com>
Co-authored-by: Konstantin Schaper<konstantin.schaper@cloudogu.com>
Committed-by: Florian Scholdei<florian.scholdei@cloudogu.com>
2023-12-12 09:18:50 +01:00
Eduard Heimbuch
cf4d9cf20f 3.x
Committed-by: Eduard Heimbuch<eduard.heimbuch@cloudogu.com>
Pushed-by: Rene Pfeuffer<rene.pfeuffer@cloudogu.com>
Co-authored-by: René Pfeuffer<rene.pfeuffer@cloudogu.com>
Pushed-by: Eduard Heimbuch<eduard.heimbuch@cloudogu.com>
Committed-by: René Pfeuffer<rene.pfeuffer@cloudogu.com>
2023-11-30 17:02:44 +01:00
Eduard Heimbuch
774d7f5fb1 Apply test-ids for all stages except production 2023-11-24 11:10:59 +01:00
Tarik Gürsoy
9dd6aeea5e Diff path line break
A line break has been added to the diff path, so that it always displays the full path and filename

Co-authored-by: Eduard Heimbuch<eduard.heimbuch@cloudogu.com>
Pushed-by: Tarik Gürsoy<tarik.guersoy@cloudogu.com>
Pushed-by: Konstantin Schaper<konstantin.schaper@cloudogu.com>
Pushed-by: Eduard Heimbuch<eduard.heimbuch@cloudogu.com>
Co-authored-by: Tarik Gürsoy<tarik.guersoy@cloudogu.com>
2023-11-07 09:06:09 +01:00
Konstantin Schaper
14ee5daa00 fix unnecessary scrollbar showing up in markdown views with code tags
Co-authored-by: Eduard Heimbuch<eduard.heimbuch@cloudogu.com>
Pushed-by: Konstantin Schaper<konstantin.schaper@cloudogu.com>
Pushed-by: Eduard Heimbuch<eduard.heimbuch@cloudogu.com>
Co-authored-by: Konstantin Schaper<konstantin.schaper@cloudogu.com>
2023-11-07 08:59:39 +01:00
Konstantin Schaper
37fbce1496 Checkbox and Chipinput have been improved, and a button has been added
Pushed-by: Konstantin Schaper<konstantin.schaper@cloudogu.com>
Pushed-by: Tarik Gürsoy<tarik.guersoy@cloudogu.com>
Co-authored-by: Konstantin Schaper<konstantin.schaper@cloudogu.com>
Co-authored-by: Tarik Gürsoy<tarik.guersoy@cloudogu.com>
2023-10-09 11:56:24 +02:00
Konstantin Schaper
0c055ca6df Add new api for interactive card details
Committed-by: Rene Pfeuffer <rene.pfeuffer@cloudogu.com>
2023-09-21 11:26:41 +02:00
Renovate Bot
a608a0df80 Update dependency @radix-ui/react-dropdown-menu to v2.0.5 (develop) - abandoned
Squash commits of branch renovate/develop-radix-ui-react-dropdown-menu-2.x:

- Update dependency @radix-ui/react-dropdown-menu to v2.0.5

| datasource | package                       | from  | to    |
| ---------- | ----------------------------- | ----- | ----- |
| npm        | @radix-ui/react-dropdown-menu | 2.0.1 | 2.0.5 |

- Fix snapshots

Committed-by: Rene Pfeuffer <rene.pfeuffer@cloudogu.com>
2023-09-13 09:14:18 +02:00
René Pfeuffer
2c04b124f0 Fix snapshots 2023-09-07 09:46:39 +02:00
Konstantin Schaper
c6c344dc23 update storyshots 2023-09-06 11:15:08 +02:00
Konstantin Schaper
fa536b9768 Create atomic design page template for master-detail views 2023-09-06 10:00:00 +02:00
Thomas Zerr
cb845bee34 Components that are now deprecated are marked as such 2023-09-05 08:53:03 +02:00
Renovate Bot
9d88503fbf Update dependency @headlessui/react to v1.7.17 (develop)
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [@headlessui/react](https://github.com/tailwindlabs/headlessui) | dependencies | patch | [`1.7.15` -> `1.7.17`](https://renovatebot.com/diffs/npm/@headlessui%2freact/1.7.15/1.7.17) |
| [@headlessui/react](https://github.com/tailwindlabs/headlessui) | dependencies | minor | [`1.6.6` -> `1.7.17`](https://renovatebot.com/diffs/npm/@headlessui%2freact/1.6.6/1.7.17) |

---

This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIwLjAuMC1zZW1hbnRpYy1yZWxlYXNlIiwidXBkYXRlZEluVmVyIjoiMC4wLjAtc2VtYW50aWMtcmVsZWFzZSIsInRhcmdldEJyYW5jaCI6ImRldmVsb3AifQ==-->


Committed-by: Laura Gorzitze <laura.gorzitze@cloudogu.com>
Co-authored-by: Laura Gorzitze <laura.gorzitze@cloudogu.com>
2023-09-04 13:41:03 +02:00
Eduard Heimbuch
cd59873638 Switch repo overview layout to cards
Squash commits of branch feature/repo_overview_cards:

- Switch repo overview layout to cards

- wip

- Merge branch 'develop' into feature/repo_overview_cards

- Fix collapsible

- Fix collapsible

- Fix styling

- Merge branch 'develop' into feature/repo_overview_cards

- Fix type for collapsible

- Add changelog

- Update storyshots

- Merge branch 'develop' into feature/repo_overview_cards



Committed-by: Thomas Zerr <thomas.zerr@cloudogu.com>
Co-authored-by: tzerr <thomas.zerr@cloudogu.com>
2023-08-28 13:53:36 +02:00
Eduard Heimbuch
20d728981f Revert collapsible namespaces 2023-08-23 15:09:49 +02:00
Rene Pfeuffer
cf08f96643 Fix label for copy button
Squash commits of branch bugfix/fix_copy_button_label:

- Fix label for copy button



Committed-by: Thomas Zerr <thomas.zerr@cloudogu.com>
Co-authored-by: René Pfeuffer <rene.pfeuffer@cloudogu.com>
2023-08-23 11:34:43 +02:00
Eduard Heimbuch
2efcbfa759 Improve repository overview
- Sort repositories alphanumerically case insensitive per namespace
- Make the namespaces collapsible and store the collapsed state in local storage

Committed-by: Konstantin Schaper <konstantin.schaper@cloudogu.com>
2023-08-22 19:59:53 +02:00
Florian Scholdei
9c0d064491 Programmatically accessible subheadings in footer
Squash commits of branch bugfix/accessibility_programmatic_subheader:

- Remove redundant section

- Make subheadings in footer programmatically accessible

- Add changelog entry

- Update storyshots



Committed-by: Philipp Ahrendt <philipp.ahrendt@cloudogu.com>
2023-08-22 12:01:31 +02:00
Tarik Gürsoy
9b5e8b1d67 Bugfix Typo in Diff Load Lines
A typo was fixed by adding an additional check to see if we have 1 or more than 1 lines to load

Committed-by: Eduard Heimbuch <eduard.heimbuch@cloudogu.com>
Co-authored-by: tarik-guersoy <tarik.guersoy@cloudogu.com>
2023-08-16 13:53:46 +02:00
Konstantin Schaper
3256aef7fb Fix copying source code in Firefox incorrectly adding extra line breaks
There is an open bug in Firefox which causes extra line breaks to appear when copying if the selection contains a `span` with the `user-select: none;` styles.
This workaround removes this style and displays the line number in a `::before` instead. This has the same effect of the user not being able to select it and it also doesn't show up in multi-line selections but prevents Firefox from interpreting it incorrectly.

Committed-by: Eduard Heimbuch <eduard.heimbuch@cloudogu.com>
2023-07-06 14:56:57 +02:00
Eduard Heimbuch
bc2a599b2c Introduce new combobox and make it work with chip input
We introduced a new accessible combobox component. This component is based on headless ui and made compatible with our components and forms. Also we replaced the outdated `Autocomplete` component with the new combobox.

Co-authored-by: Konstantin Schaper <konstantin.schaper@cloudogu.com>

Reviewed-by: Florian Scholdei <florian.scholdei@cloudogu.com>
2023-06-19 13:04:26 +02:00
Konstantin Schaper
c0eb470253 allow lazy markdown view to support className 2023-06-01 11:14:17 +02:00
Konstantin Schaper
b812922142 Implement namespace configurations & permissions
Co-authored-by: Eduard Heimbuch <eduard.heimbuch@cloudogu.com>
Co-authored-by: René Pfeuffer <rene.pfeuffer@cloudogu.com>

Reviewed-by: Eduard Heimbuch <eduard.heimbuch@cloudogu.com>
2023-05-25 18:51:29 +02:00
Florian Scholdei
05bc61ab1b Use forwardRef in FileInput
Committed-by: Rene Pfeuffer <rene.pfeuffer@cloudogu.com>
2023-05-04 08:22:02 +02:00
Eduard Heimbuch
a185cc7d16 Optimize config form and binder 2023-04-19 11:52:22 +02:00
Rene Pfeuffer
8eb2687e10 Fix branch and tag name validation
The validation for branch and tag names has been
too limited. This led to errors in the frontend for
branches, that had been created using the
cli tools for git or hg but have not been seen as
valid by SCM-Manager.

To fix this, the patterns to validate branch and
tag names are relaxed and relate to the git
rules (https://git-scm.com/docs/git-check-ref-format).
Because these rules could not be expressed
using regular expressions alone, in addition
possible exceptions will be handled in the
git branch and tag commands.

Committed-by: Konstantin Schaper <konstantin.schaper@cloudogu.com>
Co-authored-by: Eduard Heimbuch <eduard.heimbuch@cloudogu.com>
Co-authored-by: René Pfeuffer <rene.pfeuffer@cloudogu.com>
Co-authored-by: Konstantin Schaper <konstantin.schaper@cloudogu.com>
2023-04-05 11:45:15 +02:00
Konstantin Schaper
d257c8616c Display images in diffs
Committed-by: Eduard Heimbuch <eduard.heimbuch@cloudogu.com>
Co-authored-by: René Pfeuffer <rene.pfeuffer@cloudogu.com>
2023-03-22 11:17:22 +01:00
Konstantin Schaper
1d0baf48e2 Connect labels with their respective inputs for improved accessibility
Committed-by: Florian Scholdei <florian.scholdei@cloudogu.com>
2023-03-21 10:14:11 +01:00
Eduard Heimbuch
2198049cbd Improve sticky diffs
Fix page position after long sticky diffs are collapsed

Committed-by: Konstantin Schaper <konstantin.schaper@cloudogu.com>
Co-authored-by: René Pfeuffer <rene.pfeuffer@cloudogu.com>
2023-03-15 17:50:19 +01:00
Konstantin Schaper
dda52b8400 Implement new form features
Extends existing functionality, provides new fallbacks for translations and adds capabilities to manage array properties in configurations.

Committed-by: Florian Scholdei <florian.scholdei@cloudogu.com>
Co-authored-by: Florian Scholdei <florian.scholdei@cloudogu.com>
2023-03-07 11:29:10 +01:00
Eduard Heimbuch
3730434f7b Expose size for primary repository avatar extension point 2023-01-31 11:08:12 +01:00
Florian Scholdei
63d6c765ea Correct z-index equal weighting in diff header
Committed-by: Eduard Heimbuch <eduard.heimbuch@cloudogu.com>
2023-01-31 10:11:08 +01:00
Eduard Heimbuch
b2a253ea29 Fix tab order for primary navigation 2023-01-26 07:32:14 +01:00
Eduard Heimbuch
dc60c924ed Add copy button to codeblocks 2023-01-25 15:55:00 +01:00
Konstantin Schaper
d5e5490b53 Add new overlay ui module with tooltip component
Our current tooltip component has been causing ui glitches for over a year now because it did not use react portal to render the tooltip content outside the react render tree which interfered with html/css. The new component is based on a fully accessible component by radix-ui. The styling, for now, has been kept from the original tooltip.

Committed-by: Eduard Heimbuch <eduard.heimbuch@cloudogu.com>
2023-01-16 13:37:52 +01:00
Eduard Heimbuch
ac419daa3f Add ConfigurationAdapterBase and extension points for trash bin
Adds the new abstract class ConfigurationAdapterBase to simplify the creation of global configuration views. In addition there is some cleanup, interfaces and extension points for the repository trash bin plugin.

Committed-by: Eduard Heimbuch <eduard.heimbuch@cloudogu.com>
Co-authored-by: Eduard Heimbuch <eduard.heimbuch@cloudogu.com>
Co-authored-by: René Pfeuffer <rene.pfeuffer@cloudogu.com>
Co-authored-by: Konstantin Schaper <konstantin.schaper@cloudogu.com>
2023-01-13 13:08:51 +01:00
Eduard Heimbuch
5c4c759bd2 Make the diff header sticky 2023-01-11 16:04:39 +01:00
Eduard Heimbuch
72dfe80843 Introduce ui-forms framework
Adding a new ui framework to make creating forms as easy and consistent as possible. It wraps a lot of boilerplate code and enforces good practices for make the forms in the "SCM-Manager way".


Co-authored-by: Florian Scholdei <florian.scholdei@cloudogu.com>
Co-authored-by: Konstantin Schaper <konstantin.schaper@cloudogu.com>

Reviewed-by: Rene Pfeuffer <rene.pfeuffer@cloudogu.com>
2023-01-02 08:59:07 +01:00
Rene Pfeuffer
f2f2f29791 Render images from repository correctly
This adds a markdown renderer for images, so that images
that are referenced by their repository path are resolved
correctly. In this case, the content rest endpoint is
rendered as source url. For this, two new contexts
(RepositoryContext and RepositoryRevisionContext)
have been added, that make the repository and the
current revision available, so that the content url can
be resolved properly. These new contexts may be used
by plugins like the scm-readme-plugin.

Co-authored-by: Eduard Heimbuch <eduard.heimbuch@cloudogu.com>

Reviewed-by: Eduard Heimbuch <eduard.heimbuch@cloudogu.com>
2022-12-19 10:12:01 +01:00
Konstantin Schaper
19938b3af8 Add accessibility settings where you can disable keyboard shortcuts (#2157)
An accessibility requirement dictates that our custom shortcut system must be allowed to be disabled. A new accessibility settings page has been added to the user profile, similar to the theme settings. It is persisted in local storage.

Co-authored-by: Eduard Heimbuch <eduard.heimbuch@cloudogu.com>
2022-11-16 16:50:17 +01:00
Konstantin Schaper
4a556dda8b Implement sub-iterators for list navigation (#2155)
We recently introduced shortcut-based list navigation that ran into problems when the list contained items that were loaded asynchronously but had stand at the beginning of the list. As the system is based on render order, we had to introduce a new layer in-between the main iterator and the asynchronously loaded items. This new layer is called a "sub-iterator", which functions literally like the main iterator with the exception that it can also be used as an item of a parent-iterator. This allows for more complicated use-cases and the support of keyboard iterators around extension points. This pull request also fixes an unreleased regression where usages of the deprecated confirmAlert function caused a nullpointer exception.
2022-11-16 11:01:27 +01:00
Konstantin Schaper
3e74985203 Remove forced word break from markdown view (#2142)
In `751343f` we forced words to wrap in a variety of places in the SCM-Manager to prevent unintentional overflow breaking the layout. This was also added to the markdown view which had implications for tables in these views including long headers that would now break in a not so pretty fashion. After investigating potential implications and checking other usages of the markdown view, we removed the problematic class again in this particular instance as it was seemingly not serving any positive purpose and removing it had no negative impact.
2022-11-15 18:37:03 +01:00
Konstantin Schaper
eea60deadb Add keyboard navigation for users, groups, branches, tags, sources, changesets and plugins (#2153)
Co-authored-by: Eduard Heimbuch <eduard.heimbuch@cloudogu.com>
2022-11-10 11:44:53 +01:00