1
0
mirror of https://github.com/Unleash/unleash.git synced 2025-01-06 00:07:44 +01:00
Commit Graph

2955 Commits

Author SHA1 Message Date
Tymoteusz Czech
e10ad7257f
Fix: insights loading (#6834)
Loading state for
- charts (placeholder data, animation)
- user stats - loading skeleton animation
- empty flags stats
- kept other "stat" widgets as-is, usually not visible
2024-04-15 09:46:56 +02:00
andreas-unleash
04e4201021
fix: insights menu point alignment (#6847)
What is says on the tin

Closes
[1-2288](https://linear.app/unleash/issue/1-2288/misalignment-insights-beta-menu-item)

<img width="1429" alt="Screenshot 2024-04-12 at 14 42 28"
src="https://github.com/Unleash/unleash/assets/104830839/6b428e6f-e3b7-42e5-aa6b-c807338f5231">

---------

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2024-04-12 15:23:09 +03:00
andreas-unleash
34e917f0ee
fix: Insights placement in drawer nav (#6846)
Moves the Insights nav menu item down to match desktop ordering

Closes #
[1-2290](https://linear.app/unleash/issue/1-2290/mobile-menu-insights-pops-up-as-the-first-item)
<img width="951" alt="Screenshot 2024-04-12 at 13 12 25"
src="https://github.com/Unleash/unleash/assets/104830839/c4222912-2fb9-4d01-8c82-e3288738f52c">

---------

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2024-04-12 14:22:53 +03:00
Thomas Heartman
945e086f81
feat: add "my projects" filter to projects list (#6831)
This PR adds the buttons (only UI, no functionality) to show either "all
projects" or "my projects".

The buttons use a styled button group and are hidden behind the new
`projectListFilterMyProjects` flag.

The button placement breaks with the previously established page header
pattern of having all actions moved to the right. To accommodate this
new placement, I created a new flex container in the header called
`leftActions`, which is essentially just a mirror of the normal actions.
I went with `leftActions` instead of `inlineStartActions` or something
similar because I think it's clearer, and I don't see us adapting
Unleash for different writing directions right now. We can always change
it later.

I have also slightly increased the end margin of the page header to
accommodate the new designs and to adjust the spacing before the
buttons. I adjusted the margin of the text instead of the padding of the
left actions because this will keep the spacing to the page header the
same on every page. Without it, we could end up in situations where the
spacing changes from page to page based on whether it has left actions
or not, which is probably undesirable.


![image](https://github.com/Unleash/unleash/assets/17786332/7d6ba98c-a34b-45d4-85f4-2b1c2f3dc0c8)


## Still to do:

### Hover colors

~~Find out what the right hover color variable is. I'm using the light
mode hover color for now, which works well in both light and dark modes
(looks nice and is AAccessible), but it's not the same as the hover
color for other buttons in dark mode.~~

Fixed ☝🏼 

### Small windows

Also worth noting: at around 500px, the layout shift starts to cause
problems and we end up with overlapping elements. How do we want to deal
with narrower screens? Today, the UI is pretty functional until we reach
about 250px. It would be nice to not increase that size.

The new version breaking at about 500px:

![image](https://github.com/Unleash/unleash/assets/17786332/bf4f70d7-13b7-410a-9de4-30f4873a2ab8)

The old version breaking at about 250px:

![image](https://github.com/Unleash/unleash/assets/17786332/2d4e1e9c-8442-471c-91e4-67c024736234)

### Margins

We also need to figure out how much space we want on smaller windows:


![image](https://github.com/Unleash/unleash/assets/17786332/b12804b1-a2db-4547-88d5-0d9d49221fe2)
2024-04-12 12:35:47 +02:00
Thomas Heartman
6f79688e2c
feat: display removed context props in the UI (#6844)
This PR shows context warnings in the UI if they exist.

That means that if you provide invalid properties on the top level,
you'll get the result back, but we'll also tell you that we didn't take
these properties into account.

Screenie:


![image](https://github.com/Unleash/unleash/assets/17786332/06c31b15-a52f-4a22-a1ac-4f326cc34173)
2024-04-12 12:35:33 +02:00
Nuno Góis
31bf7825c0
chore: SCIM guard for groups (#6845)
https://linear.app/unleash/issue/2-2111/api-should-not-allow-manual-management-of-scim-managed-groups-in

Introduces a SCIM guard for SCIM groups. SCIM groups should be managed
exclusively by the SCIM client, not Unleash.

We decided to be restrictive for now, completely covering all of the
write methods, but may fine-tune some of this at a later stage.

Will eventually be followed up by a UI-centric PR.
2024-04-12 10:01:57 +01:00
Thomas Heartman
442327eb07
fix: don't add project flag table state config to browser history (#6824)
This change specifies the update type as `replace` for the
`useQueryParams` hook used to set table state.

Primarily, this prevents the column selection from being added to the
browser
history and more importantly prevents you from changing your config by
navigating through browser history.

However, this also affects other table state, such as changing sorting
order etc. These will also no longer be added to the browser history.

---

Bug description:

In the project flag table, you can select which env columns to show.
However, adding and removing these envs get added as steps in your
browser history. This means that if you add 3 envs, you:

1. have to go back three times to get back to the previous page
2. In doing so, you also inadvertently revert the choices you mean,
which can be confusing.

Steps to reproduce:

1. Navigate to the project screen
2. Use the column selector to add/remove projects. Notice that the URL
changes for each selection you make.
3. After making one or more changes, use the browser's
back-functionality. Notice that you stay on the same page but that the
selected envs (and the URL) change.
2024-04-12 10:58:17 +02:00
Thomas Heartman
7e91cbe1c4
chore: update orval (#6842)
Includes updates for:
- playground
- parent variant 
- scim
- fetaure lifecycle
2024-04-12 10:32:23 +02:00
Nuno Góis
f4ef06f69b
chore: SCIM guard for users (#6836)
https://linear.app/unleash/issue/2-2093/api-should-not-allow-manual-management-of-scim-managed-users-in

Introduces a SCIM guard for SCIM users. SCIM users should be managed
exclusively by the SCIM client, not Unleash.

We decided to be restrictive for now, completely covering all of the
write methods, but may fine-tune some of this at a later stage.

Will eventually be followed up by a UI-centric PR.
2024-04-12 08:23:35 +01:00
David Leek
88b5bfcb29
chore(ui): add a separate feature flag for traffic visibility UI (#6832)
## About the changes

Adds a separate feature flag for the traffic data usage UI
2024-04-11 10:37:53 +02:00
Fredrik Strand Oseberg
a979ad802a
fix: replace true on important create screens (#6822)
This adds replace: true to navigate on the create feature toggle screen
and create project screen. This will make it so you don't go back to the
form after you have created the resource, replacing the entry in the
history with the new url. We can do this in more places, but some of
them require a bit more thought. For example when creating a user, you
navigate from the admin screen to the user page, and then back to the
same screen. Adding `{ replace: true }` in this context makes it so that
when you press back you end up on the same screen, because it's recorded
twice in history.

Another discussion point: 
* Would you expect the edit screens to also replace the history?
2024-04-11 09:20:33 +02:00
Thomas Heartman
c9beb864cd
fix: show all envs in project tables unless you've explicitly hidden some (#6812)
This PR changes the behavior of the project tables' environment columns
based on input from customers.

Up until now, you have been shown either the first project or the first
three projects in the list of the project's environment. The decision on
whether to show one or three is based on screen size. The breakpoint
appears to be about 1280px. Above that you get three, below it you get
one.

With this PR, we'll show you *all* environments by default, regardless
of screen size. However, that's just for the default values. If you
manually change column visibility, those changes will of course be
respected.

I've used a new package, `css-mediaquery`, to test that all screen sizes
show all envs.
2024-04-10 15:07:55 +02:00
Thomas Heartman
1a05bdad2e
chore: add flag for project list filter updates (#6825)
This PR adds the flag for the project list filter feature we're working
on at the moment.
2024-04-10 14:40:50 +02:00
andreas-unleash
e4ece8bcaa
feat: ttp stat should show No data when exactly 0 (#6823)
Currently the TimeToProduction stat shows `Fast` for ttp = 0 which is
wrong. Absolute 0 will only happen when there are no data.

Closes
[1-2281](https://linear.app/unleash/issue/1-2281/timetoproduction-stat-should-not-say-fast-when-value-is-0)

Before: 
 
<img width="321" alt="Screenshot 2024-04-10 at 14 25 48"
src="https://github.com/Unleash/unleash/assets/104830839/f6d3c7af-1674-41c4-b187-ee3bf8df05ba">

After:
<img width="360" alt="Screenshot 2024-04-10 at 14 25 38"
src="https://github.com/Unleash/unleash/assets/104830839/631ffbe5-475c-4c48-8790-47716e04887b">

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2024-04-10 14:47:22 +03:00
andreas-unleash
68a1ba3dec
feat: fill metrics summary missing datapoints with 0 (#6820)
Fills missing datapoints with 0s so that all metrics chart lines have
data for all datapoints.

Closes #
[1-2278](https://linear.app/unleash/issue/1-2278/fill-the-metrics-data-with-0s-when-not-enough-data-to-fill-the-chart)


Before: 
<img width="1547" alt="Screenshot 2024-04-10 at 12 48 22"
src="https://github.com/Unleash/unleash/assets/104830839/35885852-d986-4760-84e2-9e8ef61bedf0">
<img width="1550" alt="Screenshot 2024-04-10 at 12 48 44"
src="https://github.com/Unleash/unleash/assets/104830839/3385b8eb-08e2-4cc9-86b2-7b31b9fe81ef">

After:
<img width="1582" alt="Screenshot 2024-04-10 at 13 43 10"
src="https://github.com/Unleash/unleash/assets/104830839/d3713df3-869b-48ba-b2ab-095027b37506">
<img width="1545" alt="Screenshot 2024-04-10 at 13 42 49"
src="https://github.com/Unleash/unleash/assets/104830839/44a6e662-2e9f-4fe8-8299-c15ab8f8e261">

---------

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2024-04-10 14:38:45 +03:00
Fredrik Strand Oseberg
7f1c46a576
fix: show loading features only when loading is happening (#6817)
Previously, the dummy data would persist when there is no data coming
from the API. This causes us to display dummy data in the dora metrics
table which is not correct. This PR fixes that by only showing the
loading features when we are actually loading.
2024-04-10 12:43:22 +02:00
Thomas Heartman
70eb463443
chore: fix duplicate use of placeholder name (#6814)
Instead of using two placeholders both called "production", we rename
one of them to "development"
2024-04-10 12:36:09 +02:00
andreas-unleash
00d3490764
fix: Project select should not expand when selecting multiple projects (#6811)
Currently when you are selecting multiple projects, the autocomplete
expands indefinitely when focused.

This fixes that behaviour by limiting the project select to 1 visible
tag (even when focused) for Insights and 3 tags for Playground (same as
it was)

Closes
[1-2276](https://linear.app/unleash/issue/1-2276/limit-the-project-select-height-or-expand-its-length)



https://github.com/Unleash/unleash/assets/104830839/bf42a06e-8d30-49df-ac5b-a4a4f2685fa9

---------

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2024-04-10 12:34:11 +03:00
andreas-unleash
fb9855c3fa
fix: Do not show the MetricsChartTooltip InfoSummary when all projects (#6810)
What it says on the tin

Closes #
[](https://linear.app/unleash/issue/1-2275/hide-bottom-part-of-metrics-tooltip-when-all-projects)
<img width="1677" alt="Screenshot 2024-04-09 at 16 57 13"
src="https://github.com/Unleash/unleash/assets/104830839/2369c6f4-a136-4635-b77b-63aa0087338e">
<img width="1678" alt="Screenshot 2024-04-09 at 16 55 53"
src="https://github.com/Unleash/unleash/assets/104830839/b29ec13d-5611-40a2-8dc6-af4c5a4ec97a">

---------

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2024-04-09 17:48:04 +03:00
Nuno Góis
032419aa76
chore: SCIM settings UI (#6800)
https://linear.app/unleash/issue/2-1981/ui-allow-users-to-set-up-scim

Adds UI for Provisioning (SCIM) settings.


![image](https://github.com/Unleash/unleash/assets/14320932/e24cf4dd-09d5-459d-bf8a-dd75a966d8eb)


![image](https://github.com/Unleash/unleash/assets/14320932/090a8279-1e98-4d4a-8e21-98cf311f1721)


![image](https://github.com/Unleash/unleash/assets/14320932/aca67619-6748-4848-8f1f-4de1deb90860)
2024-04-09 15:26:35 +01:00
andreas-unleash
48b8df8f4e
fix: Health tooltip when all projects should show % (#6809)
What it says on the tin

Closes #
[1-2274](https://linear.app/unleash/issue/1-2274/health-tooltip-when-all-projects-should-show-percent-values)
<img width="945" alt="Screenshot 2024-04-09 at 16 09 34"
src="https://github.com/Unleash/unleash/assets/104830839/5c8fc8d3-bee6-4bf2-976d-de6f3e3013ca">

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2024-04-09 16:20:32 +03:00
Tymoteusz Czech
2b3516dff1
refactor(insights): remove unused chart property (#6806) 2024-04-09 12:11:53 +02:00
Tymoteusz Czech
30336819f2
fix(insights): axis rendering after placeholder (#6805)
Chart options should change when it stops displaying a placeholder/cover. Without this we had axis missing on some renders.
2024-04-09 12:28:56 +03:00
andreas-unleash
2e0ca3150a
fix: fill the datasets with 0s when not enough data points (#6793)
Fills datasets that do not have all the datapoints with 0 so that every
line in the graph starts at the beginning and ends at the end of graph.

Closes #
[1-2256](https://linear.app/unleash/issue/1-2256/fill-the-data-with-0s-so-that-all-x-axis-labels-have-values)

---------

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
Co-authored-by: Tymoteusz Czech <2625371+Tymek@users.noreply.github.com>
2024-04-09 12:24:50 +03:00
andreas-unleash
60262e5d0b
fix: total flags and flags per user when all projects (#6787)
Fixes the flag stats flagsPerUser calculation and display value. 
Previously the calculation depended on project data which might not be
there with the permission changes

Closes #
[1-2255](https://linear.app/unleash/issue/1-2255/unable-to-render-total-number-of-flags-when-there-are-no-project-data)

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2024-04-09 10:52:09 +03:00
andreas-unleash
e7a9f31eb4
fix: NotEnoughData hiding the header (#6798)
Before: 
<img width="884" alt="Screenshot 2024-04-08 at 15 52 41"
src="https://github.com/Unleash/unleash/assets/104830839/3784a1db-83a8-4414-bda8-3eed698476a2">


After:
<img width="879" alt="Screenshot 2024-04-08 at 16 04 54"
src="https://github.com/Unleash/unleash/assets/104830839/117dec8e-6419-448d-89b7-9f6640e59500">

Closes #
[1-2267](https://linear.app/unleash/issue/1-2267/fix-zindex-of-notenoughdata-component)

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2024-04-09 10:29:23 +03:00
andreas-unleash
1d6634d5ae
fix: dark mode background (#6803)
Fixes a bug where the background of Legal values was white for dark mode


<img width="758" alt="Screenshot 2024-04-09 at 10 10 16"
src="https://github.com/Unleash/unleash/assets/104830839/6936be0f-fc60-49a3-b414-dbb32012f8be">

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2024-04-09 10:14:17 +03:00
andreas-unleash
130bc20683
Fix: time to production showing NaN when no data (#6799)
Before: 

<img width="1398" alt="Screenshot 2024-04-08 at 16 20 48"
src="https://github.com/Unleash/unleash/assets/104830839/892860f8-80de-4750-bad2-0e17ac221f1f">


After: 

<img width="1243" alt="Screenshot 2024-04-08 at 16 45 47"
src="https://github.com/Unleash/unleash/assets/104830839/3247c90a-f92f-4d4f-b407-275549b308bf">

---------

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2024-04-09 09:27:47 +03:00
Mateusz Kwasniewski
efda70ac5d
feat: feature lifecycle usage behind a flag (#6786) 2024-04-05 13:42:03 +02:00
David Leek
f29ecaf3c0
fix: strategy targeting numeric also check value field (#6774)
API returns both value and values fields. Empty values array causes ui
to think constraint doesnt have a value

This PR checks if value field exists and is empty before returning check
on values and length
2024-04-04 11:48:51 +02:00
andreas-unleash
d466f608c2
chore: convert newContextFieldUI to kill switch (#6752)
Converts `newContextFieldUI` release flag to
`disableShowContextFieldSelectionValues` kill switch.

The kill switch controls whether we show the value selection above the
search filed when > 100 values

---------

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2024-04-03 15:02:05 +02:00
Mateusz Kwasniewski
501acd080a
chore: project overview refactor feedback behind a flag (#6772) 2024-04-03 13:55:12 +02:00
Jaanus Sellin
a664a449ef
chore: remove strategy form feedback (#6769) 2024-04-03 12:16:58 +02:00
Mateusz Kwasniewski
e0ea257f07
fix: tabs alignment (#6768) 2024-04-03 12:15:36 +02:00
andreas-unleash
717e541003
fix: make TTP stat show last week calculation (#6766)
Currently the median time to production stat is showing the aggregated
median across all dates.

This pr changes the calculation to only use the last week summary like
the rest of the stat widgets.
<img width="1665" alt="Screenshot 2024-04-03 at 11 25 31"
src="https://github.com/Unleash/unleash/assets/104830839/c6869b48-99bd-4f5b-a25e-7e0e3a2dc9ef">

---------

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2024-04-03 11:58:10 +03:00
Mateusz Kwasniewski
2cbb45de85
fix: loading state (#6765) 2024-04-03 10:20:04 +02:00
Mateusz Kwasniewski
d5b73694fa
test: manage variant dependency UI (#6756) 2024-04-02 13:52:47 +02:00
andreas-unleash
e7970186d0
Chore: semver constraint context fields improvements (#6730)
Increases the label width to make the whole box selectable
Adds a small gap to match the style

Closes #
[1-2233](https://linear.app/unleash/issue/1-2233/semver-constraint)


before:
![Screenshot 2024-03-28 at 14 19
39](https://github.com/Unleash/unleash/assets/104830839/bb4a0db7-4054-4c77-aa7f-5dabaff95b94)


after:
![Screenshot 2024-03-28 at 14 19
16](https://github.com/Unleash/unleash/assets/104830839/0dd6e56e-80c7-4771-ba84-93ad68484c8e)

---------

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2024-04-02 09:35:11 +03:00
Mateusz Kwasniewski
7f043c7cab
feat: variant dependencies ui (#6739) 2024-03-29 19:28:49 +01:00
andreas-unleash
c868b5a868
Feat: context field search and filter improvements (#6732)
Adds highlighting to search values 
Search also looks in `description`

behind a flag - it could possibly degrade performance when too many
items. Tested with 200 and it's ok but anything above might degrade:
Adds a Select/Unselect all button
Shows the selected values above the search 

Closes #
[1-2232](https://linear.app/unleash/issue/1-2232/context-field-ui-filter-and-search)



https://github.com/Unleash/unleash/assets/104830839/ba2fe56f-c5db-4ce7-bc3c-1e7988682984

---------

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2024-03-29 15:44:34 +02:00
Mateusz Kwasniewski
664ceaea09
feat: disabled feature dependency (#6731) 2024-03-28 16:02:25 +01:00
andreas-unleash
81aff26394
Chore: constraint context field legal values improvement (#6729)
Improves how we show context field legal values in the new strategy
configuration.

Refactored makeStyles to styled components 

Closes #
[1-2235](https://linear.app/unleash/issue/1-2235/context-field-ui-in-strategy-configuration)

Before: 

![Screenshot 2024-03-28 at 12 19
12](https://github.com/Unleash/unleash/assets/104830839/43c62cf4-f344-476f-9ef6-75e388fab000)

After:

![Screenshot 2024-03-28 at 13 03
46](https://github.com/Unleash/unleash/assets/104830839/16dd03e0-bc67-402b-ba54-56fa1af136a5)

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2024-03-28 14:15:14 +02:00
andreas-unleash
5b325568d1
Chore: context fields UI improvements when creating context field (#6714)
Styling adjustments based on
https://linear.app/unleash/issue/UNL-371/ui-improvement-createedit-context-field

- Remove maxWidth from container
- In ul - add maxHeight, padding and border and hide when :empty

Closes #
[UNL-371](https://linear.app/unleash/issue/UNL-371/ui-improvement-createedit-context-field)

Before: 
![Screenshot 2024-03-28 at 11 46
12](https://github.com/Unleash/unleash/assets/104830839/8150fb96-0a5a-4fd8-988a-82a42da51faf)

After:
![Screenshot 2024-03-28 at 11 47
03](https://github.com/Unleash/unleash/assets/104830839/186b806c-4557-42a8-b119-22d1b781cc57)

---------

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2024-03-28 13:07:04 +02:00
Mateusz Kwasniewski
99935fec94
feat: keep parent selection in edit dependency dialogue (#6727) 2024-03-28 11:15:26 +01:00
Mateusz Kwasniewski
089bc4851e
fix: remove duplicate banner (#6726) 2024-03-28 10:17:57 +01:00
gitar-bot[bot]
4932ae0539
[Gitar] Cleaning up stale feature flag: increaseUnleashWidth with value true (#6724)
Co-authored-by: Gitar Bot <noreply@gitar.co>
Co-authored-by: sjaanus <sellinjaanus@gmail.com>
2024-03-28 11:04:00 +02:00
Mateusz Kwasniewski
c12cb42885
fix: move outdated sdks check up (#6725) 2024-03-28 10:00:23 +01:00
gitar-bot[bot]
ca6946df86
chore: [Gitar] Cleaning up stale feature flag: sdkReporting with value true (#6717)
Co-authored-by: Gitar Bot <noreply@gitar.co>
Co-authored-by: sjaanus <sellinjaanus@gmail.com>
2024-03-28 09:19:11 +02:00
Jaanus Sellin
9393f86c66
feat: padding last seen (#6716) 2024-03-27 15:51:11 +02:00
Mateusz Kwasniewski
d7dc01d396
fix: adjust table spacing (#6715) 2024-03-27 14:30:05 +01:00