1
0
mirror of https://github.com/Unleash/unleash.git synced 2025-10-18 11:14:57 +02:00
Commit Graph

167 Commits

Author SHA1 Message Date
Thomas Heartman
a7118e0c18
chore(1-3639): constraint validation (#9909)
Implements client-side validation of constraint values before you can
add them to a constraint.

I've removed the extra server-side validation that used to happen for
each specific constraint, because the surrounding form itself uses
server side validation to check every constraint every time there's a
change. This is what controls disabling the submit button etc.

I wanna make the next PR a bit of a followup cleanup now that it's
clearer what properties we do and don't need.
<img width="371" alt="image"
src="https://github.com/user-attachments/assets/7c98708f-fcbe-40ca-8590-bb0f5b2ad167"
/>
<img width="361" alt="image"
src="https://github.com/user-attachments/assets/503d4841-d910-4e8e-b0ef-a3d725739534"
/>
2025-05-06 15:21:33 +02:00
David Leek
681079bd08
chore: clean up adminNavUI flag (#9907) 2025-05-06 14:59:07 +02:00
David Leek
e450d1e35e
chore: replace inherit color on menu item hover to common.white (#9856) 2025-04-29 09:27:09 +02:00
David Leek
25790c1e0b
chore: fix colors, sizes and corner roundings on admin menu (#9847) 2025-04-28 10:57:24 +02:00
Nuno Góis
8e46bda8e1
chore: fix admin routes should respect plan data (#9828)
https://linear.app/unleash/issue/2-2852/sidebar-bug-with-enterprisepro-only-route-constraints

Fixes an issue where admin routes didn't respect plan data if their flag
was enabled.

First noticed here:
https://github.com/Unleash/unleash/pull/8469#discussion_r1804361222

Issue was that only `adminRoutes` respected plan data. `mainNavRoutes`
and `primaryRoutes` did not follow the same filtering logic.

We can probably clean this up even further in the future, but didn't
want to extend the PR too much.

Also adds tests to validate the intended behavior.
2025-04-24 15:44:06 +01:00
David Leek
d406420223
chore: menu cleanups (#9792) 2025-04-17 11:59:35 +02:00
David Leek
ab594f5c29
feat: move admin menu into nav sidebar (#9774) 2025-04-16 14:58:37 +02:00
Ivar Conradi Østhus
e63b28c1b8
feat: use Unleash React SDK in Admin UI (#9723)
In this PR I integrate the Unleash React SDK with the Admin UI. 

We also take advantage of Unleash Hosted Edge behind the scenes with
multiple regions to get the evaluations close to the end user.
2025-04-10 08:26:30 +02:00
Tymoteusz Czech
1a85b46acc
feat: rename search page and change icon (#9706)
Behind flagsReleaseManagementUI flag
2025-04-07 15:49:44 +02:00
David Leek
4344c94a90
chore: remove z-index from sticky admin menu as its probably not needed (#9690) 2025-04-03 10:24:26 +02:00
David Leek
b9a7c0cda6
feat: command bar admin menu improvements (#9689) 2025-04-03 10:23:45 +02:00
Tymoteusz Czech
e436ef29f1
fix: add Project and Playground icons for command bar (#9677)
Updating `IconRenderer` component in the `NavigationSidebar`. It will fix icons not showing up for command bar search results.
2025-04-02 15:31:55 +02:00
David Leek
a9490e6fe4
chore: admin menu main layout tweaks (#9671) 2025-04-01 14:16:26 +02:00
David Leek
f7dbfe1162
chore: admin menu enterprise badge (#9656) 2025-04-01 09:13:40 +02:00
David Leek
5a55181561
feat: show only link to /admin in mobile menu (#9647) 2025-03-31 08:37:15 +02:00
Christopher Kolstad
14c8b97441
task: added a hook for cleanly deciding new or old admin menu (#9645) 2025-03-28 14:45:09 +01:00
David Leek
5da9f75014
chore: fix weird alignment issue with main content and admin menu (#9636) 2025-03-28 13:22:13 +01:00
Simon Hornby
8793d9e632
chore: swap release template instruction svgs for pngs (#9642) 2025-03-28 10:47:36 +02:00
David Leek
78dfbde007
fix: Back to Unleash onClick+useNavigate instead of href (#9641) 2025-03-28 09:34:48 +01:00
David Leek
39755c7f19
fix: useLocation instead of browser location for resolving pathname (#9640) 2025-03-28 08:54:21 +01:00
David Leek
f7c04cc2cb
feat: admin menu for mobile (#9626) 2025-03-27 13:28:44 +01:00
Simon Hornby
01f3af4bda
chore: whats new dialog (#9622)
Adds a new dialog option for whats in new in Unleash items. This can be
tiggerred by setting `popout` to true when configuring the items.

To do this without setting fire to the code, I've also needed to
refactor the NewInUnleash components:

- NewInUnleashItem becomes a dumb item that decides if a dialog or
tooltip should be rendered and controls that render state
- The child item in NewInUnleashItem has been moved out into
NewInUnleashSideBarItem, which feels a bit better since that is a
distinct UI element from the popup
- NewInUnleashDialog now exists, which is a dialog version of the popup.
Meaningfully different to ask for a new component

## Screenshots

![image](https://github.com/user-attachments/assets/33d3e7f5-9178-4d2d-9355-866814e58164)
2025-03-27 11:30:24 +02:00
David Leek
07a4106f48
feat: admin menu (#9617) 2025-03-26 15:08:56 +01:00
David Leek
7580d3bc74
chore: rename release-management to release-templates, remove "plan" from descriptions (#9595) 2025-03-24 14:57:18 +01:00
David Leek
890bbcaaa0
chore: rename release management to release templates (#9564) 2025-03-18 14:52:47 +01:00
David Leek
33733b64a7
chore: fix missing primary routes for commandbar (#9557) 2025-03-18 10:13:23 +00:00
David Leek
35ed2dabf3
feat: rework navigation sidebar admin section (#9556) 2025-03-18 10:35:06 +01:00
Tymoteusz Czech
872162eb7c
fix: new header z-index style (#9541) 2025-03-14 11:18:20 +01:00
David Leek
bdc21cc4e2
chore: mark release mgmt new in unleash as beta (#9540) 2025-03-14 10:51:33 +01:00
David Leek
8ab1a49294
chore: clean up frontend routes (#9533) 2025-03-14 08:18:01 +01:00
Thomas Heartman
a50fb7db35
chore: remove frontendHeaderRedesign flag (#9428)
Removes all references to the flag and deletes unused components.
2025-03-05 09:40:53 +01:00
Nuno Góis
b4bfadd95e
chore: visualize connected edges (#9325)
https://linear.app/unleash/issue/2-3233/visualize-connected-edge-instances

Adds a new tab in the Network page to visualize connected Edges.

This is behind a `edgeObservability` flag.

Also opens up the Network page even if you don't have a Prometheus API
configured. When accessing the tabs that require it to set, and it
isn't, we show some extra information about this and redirect you to the
respective section in our docs.


![image](https://github.com/user-attachments/assets/1689f785-7544-450b-8c33-159609fc0f7d)


![image](https://github.com/user-attachments/assets/a7a14805-0488-41d2-885f-5e11a8495127)


![image](https://github.com/user-attachments/assets/918cba87-5538-4600-a71f-1143b2e33e2a)
2025-02-19 12:23:52 +00:00
Thomas Heartman
fd1ad5ac5b
fix: some accessibility issues (#9282)
Fixes a small number of accessibility issues that Firefox was
complaining about (and some that I noticed myself):

1. In `CommandBar.tsx`, use a `Label` element instead of aria-label. We
can hide it with the `ScreenReaderOnly` component.
2. Add an `aria-label` to the icon button in the sidebar. (side note:
should we do any fancy detection on whether it's cmd + b or ctrl+b
there? I think we do that in the command bar)
3. Update the playground guidance popper;
  i. Add an aria-label to the icon button
ii. Make the popper a `Popover` instead. This fixes a few issues: It
wasn't possible to focus or close just using the keyboard before.
Because it didn't steal focus, it also meant that it'd cover other parts
of the page. Now it traps focus so you can navigate to the close button,
and escape will also close it for you.
iii. Remove aria-describedby. Using aria-describedby on the button would
mean that the **button** is described by its content, which seems wrong.
aria-describedby should also only be used for plain strings. Complex
markups isn't supported. For that aria-details is the right way to go.
But because the popover is only rendered when it's open, the details or
describedby link will point to nothing most of the time.
iv. In doing this, there is a slight change in the popover shadow (I
couldn't find onef of our shadows that did the same thing as before),
but it matches other popovers we have, such as on the data usage tab.

Before:

![image](https://github.com/user-attachments/assets/8c2a3471-949f-4c01-b467-cde06c8980b5)

After:

![image](https://github.com/user-attachments/assets/980114c6-6552-4e75-8a6c-281b97a8af03)
2025-02-11 09:16:20 +01:00
Nuno Góis
c07fb589a7
chore: add release management to new in unleash (#9257)
https://linear.app/unleash/issue/2-3244/add-release-management-to-new-in-unleash

Adds release management to "New in Unleash".


![image](https://github.com/user-attachments/assets/5bbfc502-f730-4cd4-bf5e-747f1fe9e773)
2025-02-07 14:33:25 +00:00
Thomas Heartman
56c9584bb6
feat: move timeline to panel (#9243)
Moves the event timeline to the personal dashboard from the header when
the `frontendHeaderRedesign` flag is active.

When the flag is active, it also:
- hides the event timeline and corresponding button in the header
- renders the environment selector next to the time selector instead of
at the other end of the header


![image](https://github.com/user-attachments/assets/cccd8f07-d42a-4180-807f-20937019442d)

---------

Co-authored-by: Nuno Góis <github@nunogois.com>
2025-02-06 13:55:59 +00:00
Tymoteusz Czech
54e4fd2190
chore: remove lifecycle v2 flag (#9224) 2025-02-06 14:54:45 +01:00
Thomas Heartman
2ff385a4b6
fix(1-3295): fix broken skip link (#9239)
Fixes the issue where the skip link wouldn't take you to the main
content of the page anymore.

Also includes a few related minor semantic and a11y improvements:

1. The `main` element now only surrounds the actual main content of the
page. The sidebar is nav content and shouldn't be within it. The easiest
way to do this was to change the element that was previously a `main` to
a `div` and make the main content wrapper a `main` instead.
2. Makes the skip link target visible when focused. But invisible
otherwise. This has two benefits:
1. It's immediately obvious that using the skip link has worked. It
tells you that it's at the start of the main content.
2. Because the link now has text, it can be targeted by link search
(e.g. in Firefox, press `'` to search for links (I use this **a lot**)),
making it super easy to move your focus to the main content directly.
(Yes, landmark navigation should also work here, though, especially with
the `main` change).

The implementation of UI considerations of the skip link are based on
the CSS-tricks article [a deep dive on skipping to
content](https://css-tricks.com/a-deep-dive-on-skipping-to-content/)
from 2021.

Here's what it looks like when you skip to content:

![image](https://github.com/user-attachments/assets/c22819e6-f801-47d8-a9d9-908c250fd6ba)


When it doesn't have focus, it's invisible.
2025-02-06 10:21:56 +01:00
Tymoteusz Czech
874aeacca1
fix: resolve lifecycle image from asset path (#9121) 2025-01-20 13:23:55 +00:00
Tymoteusz Czech
666b5b7000
feat: New in Unleash - Lifecycle 2.0 (#9112) 2025-01-20 11:50:44 +00:00
Fredrik Strand Oseberg
25c09c3627
feat: transparent header (#9108)
This PR adds header redesign behind a feature flag
2025-01-17 09:45:45 +01:00
Nuno Góis
adaf91a791
chore: remove Unleash AI (#9010)
https://linear.app/unleash/issue/2-3071/finish-experiment

Removes Unleash AI.

Also removes other related changes made during the experiment
development.
2024-12-20 11:02:49 +00:00
Nuno Góis
772f9f4f81
chore: update release plans icon (#8894)
https://linear.app/unleash/issue/2-3042/update-release-plans-feature-icon

Updates the icon for the release plans feature.


![image](https://github.com/user-attachments/assets/d7ede926-040c-4102-a59d-e096852dbc27)
2024-12-02 11:51:18 +00:00
Tymoteusz Czech
8093a0d512
Update sidebar size (#8831)
Small visual change that will make UI easier to use on medium size
screens.
2024-11-25 15:06:42 +01:00
Mateusz Kwasniewski
04a7b05ac3
chore: stop using personal dashboard UI flag (#8793) 2024-11-19 10:51:37 +01:00
David Leek
fa597aa340
Feat/release management overview (#8672) 2024-11-06 14:02:42 +01:00
Nuno Góis
38bd50dc8a
refactor: introduce a highlight reusable component (#8643)
Follow-up to: https://github.com/Unleash/unleash/pull/8642

Introduces a reusable `Highlight` component that leverages the Context
API pattern, enabling highlight effects to be triggered from anywhere in
the application.

This update refactors the existing highlight effect in the event
timeline to use the new Highlight component and extends the
functionality to include the Unleash AI experiment, triggered by its
entry in the "New in Unleash" section.
2024-11-05 09:21:19 +00:00
Nuno Góis
2e99452645
chore: add Unleash AI to New in Unleash (#8642)
https://linear.app/unleash/issue/2-2910/add-unleash-ai-to-new-in-unleash

Adds a new "Unleash AI" item to the "New in Unleash" section.

We don’t have documentation to link to yet, as this is still an
experimental feature. However, I’m considering adding a “Check it out”
button that highlights the button, which I can introduce in a separate
PR.


![image](https://github.com/user-attachments/assets/520362b2-627c-415e-b0bb-296825d5d8ee)
2024-11-04 14:20:26 +00:00
Nuno Góis
1add516e49
chore: event timeline GA (#8552)
https://linear.app/unleash/issue/2-2682/remove-feature-flag

https://linear.app/unleash/issue/2-2705/remove-experimental-tag-from-the-new-event-properties

https://linear.app/unleash/issue/2-2751/remove-the-beta-badge-for-event-timeline-in-new-in-unleash

Makes event timeline GA by tackling the respective tasks:

 - Remove `eventTimeline` feature flag
 - Remove `[Experimental]` tag from the new schema properties
 - No longer show the "beta" badge for this item in "New in Unleash"
2024-10-30 10:53:12 +01:00
Tymoteusz Czech
f4abf5308a
test(navigation): snapshot sidebar for different plans (#8507)
Test navigation element by snapshot for all plans
2024-10-22 09:13:59 +00:00
Mateusz Kwasniewski
cbfdb8ca6e
refactor: Composable new in unleash (#8505) 2024-10-22 10:52:08 +02:00