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

3171 Commits

Author SHA1 Message Date
Jaanus Sellin
3f983d061a
feat: mark completed ui selector (#7025)
![image](https://github.com/Unleash/unleash/assets/964450/c6baa90b-5abb-4ba4-a3d9-36af6b426ed6)
2024-05-09 16:55:09 +03:00
Mateusz Kwasniewski
3fc7714e78
feat: Lifecycle in project overview (#7024) 2024-05-09 13:38:18 +02:00
Mateusz Kwasniewski
476959df8e
refactor: extract feature lifecycle component (#7023) 2024-05-09 12:19:24 +02:00
Jaanus Sellin
79739a1d7f
feat: add completed status backend (#7022)
1. Implemented controller, service, store for status saving
2024-05-09 12:05:19 +03:00
Jaanus Sellin
28a7797aea
feat: feature lifecycle completed schema (#7021)
1. Added new schema and tests
2. Controller also accepts the data
3. Also sending fake data from frontend currently

Next steps, implement service/store layer and frontend
2024-05-09 09:51:44 +03:00
Thomas Heartman
b043bcdd4a
feat: front end can create projects without ids (#7009)
This PR updates the new project creation form to not include the project
ID in the payload (because it's generated by the back end now).
2024-05-08 14:57:07 +02:00
Thomas Heartman
9f532834c8
chore: update orval schemas (#7010)
Main purpose is to get the new deprecated `id` property in the project
creation payload required for
https://github.com/Unleash/unleash/pull/7009 to pass.
2024-05-08 14:44:27 +02:00
Ivar Conradi Østhus
ea9a232acc
fix: removed dupliacted component (#7013) 2024-05-08 14:44:21 +02:00
Ivar Conradi Østhus
64c10f9eff
poc: many strategies pagination (#7011)
This fixes the case when a customer have thousands of strategies causing
the react UI to crash. We still consider it incorrect to use that amount
of strategies and this is more a workaround to help the customer out of
a crashing state.

We put it behind a flag called `manyStrategiesPagination` and plan to
only enable it for the customer in trouble.
2024-05-08 14:20:51 +02:00
Jaanus Sellin
81439d23f3
feat: lifecycle is now navigatable by tab (#7005)
![image](https://github.com/Unleash/unleash/assets/964450/ef5677e0-36c7-4cd6-a908-baa164190367)
2024-05-08 15:19:12 +03:00
Mateusz Kwasniewski
f6e85171d9
feat: completed stage lists all environments (#7007) 2024-05-08 14:16:10 +02:00
Mateusz Kwasniewski
f30910f628
fix: optimize table placeholder loading (#7002) 2024-05-08 09:40:37 +02:00
Thomas Heartman
6477ccf34b
test: test how the project form deals with project envs and cr env interaction (#6997)
This PR adds some tests around how project envs and change request envs
interact in the new project form. It tests that:
1. If you remove an env from the project setup, that env is also removed
from the change request list.
2. If you try to enable CRs for an env that isn't enabled, nothing
happens.
2024-05-08 07:26:49 +02:00
Mateusz Kwasniewski
843aab7447
fix: remove columns from the search api query (#6996) 2024-05-07 14:44:09 +02:00
Mateusz Kwasniewski
8ae78236d2
chore: remove project overview refactor flag (#6897) 2024-05-07 13:58:56 +02:00
Jaanus Sellin
b69c294272
feat: pass metrics to feature component (#6994)
![image](https://github.com/Unleash/unleash/assets/964450/39bb4551-dc03-4931-8a7f-cd9c0ceda056)
2024-05-07 11:52:38 +03:00
Mateusz Kwasniewski
a45be8d10c
test: move tests from cypress to rtl (#6987) 2024-05-07 09:03:40 +02:00
Thomas Heartman
913f81b40c
feat: show documentation relating to the specific thing your configuring in the new project form (#6993)
This PR updates the documentation text in the new project form to show
the documentation relating to the specific thing you're configuring.
2024-05-07 08:56:53 +02:00
Thomas Heartman
07871e73e5
feat: configure CRs when creating projects (#6979)
This PR adds the ability to configure CRs when creating a project.

The design is unfinished, and the code certainly needs cleanup, but I'd
like to get this into sandbox so we can look at it.

Things that still need to be done:

1. What do we do about this button when the user has no environments
selected? As a rough draft, I've disabled it. However, we should make it
possible to navigate to and give you an explanation why it was disabled,
e.g. "You have no project environments selected. Please select at least
one project environment.".
2. The form design is not done: the width should be constant and not
jumpy the way it is now. Also, the search field is too wide.
3. I've made the desicion that if you deselect a project env, we also
remove that env from your CR config it it's in there.
4. Potential improvement: if you enable and then disable CRs for an env,
we *could* probably store the data in between, so that if you set
required approvers 5 and then disabled it, it'd still be 5 when you
re-enabled it. That sounds like a good user experience. We should also
be able to extend that to adding/removing environments from project
envs.
2024-05-07 08:14:28 +02:00
Mateusz Kwasniewski
5c27e75014
test: move 2 table tests from cypress to rtl (#6984) 2024-05-06 15:00:53 +02:00
Mateusz Kwasniewski
d01100fbf0
test: move import test from cypress to RTL to make it less flaky (#6982) 2024-05-06 14:40:47 +02:00
Jaanus Sellin
d698eccb4a
fix: badge should render children 0 value (#6981)
When passing 0 in as child, the 0 was not rendred. Fixed the badge
component and added tests.


![image](https://github.com/Unleash/unleash/assets/964450/d681b70c-5d55-4818-86ea-7d05fa86c7b3)
2024-05-06 13:24:52 +03:00
Jaanus Sellin
233b882c7b
feat: merge feature toggle details with feature meta info box (#6977)
![image](https://github.com/Unleash/unleash/assets/964450/5286eb36-311d-42f9-90da-832724cc41d0)

---------

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
Co-authored-by: andreas-unleash <andreas@getunleash.ai>
2024-05-06 12:17:54 +03:00
Thomas Heartman
bd0cd018c9
support setting mode and stickiness in new project form (#6972)
This PR is a combination of two PRs:

This PR adds a functioning environment selection button to the new project creation form. Selected environments are added to the payload and to the API preview.

The implementation is mostly lifted from the existing FilterItem component we have for search filters. However, our need here is less complex, so I've removed some of the things we don't need. There is still more cleanup to be done, however, but I'd like to implement the rest of the submenus first, to see what we really do need in the end.

---

This PR adds support for stickiness and project mode in the new project
creation form.

Achieve this, it does a few things:

1. Moves `resolveStickinessOptions` from
`frontend/src/component/feature/StrategyTypes/FlexibleStrategy/StickinessSelect/StickinessSelect.tsx`
and into a separate hook. This component was used by the old project
creation form. Because the new form has a different input, but needs the
same option, moved that code into a reusable hook.
2. It adds functioning buttons for project stickiness and mode.
3. It adds labels to the search inputs for the dropdowns. Inputs *must*
have labels to meet a11y requirements. However, the designs don't have
labels, so we can hide them visually. Though that leads to another issue
(refer to the screen shot below).
4. It updates the `SelectionButton` component to handle both single- and
multiselect cases. It instead exports these two subcomponents. These are
currently in one file, but I'll split them out into their separate files
in a later PR.

As a side effect of working with the selection buttons, it also improves
how we handle keyboard interaction for these buttons.

Here's what it looks like for single-select lists. Notice the missing
part of the input's border around the top (where the label *would* be if
we showed it). We should figure out how best to handle it. I've done
like this for now, but we can sort it out later.


![image](https://github.com/Unleash/unleash/assets/17786332/5af979c2-6635-481e-8d3e-5aad1c0ab46f)
2024-05-03 07:27:13 +02:00
Thomas Heartman
44e86fc068
chore: fix failing test; don't rely on a single item only (#6974)
This test is breaking right now because it tests a date picker, week 21
is approaching, and `findByText` only expects a single element. Checking
that we have *at least* one element fixes that breakage and I don't
think it should cause any issues.

Of course, that means that right now, this test would also pass even if
the expected button wasn't there, but it would stop passing in about
four weeks time.
2024-05-02 15:03:49 +02:00
Tymoteusz Czech
0bacd60caf
refactor: badge icon spacing (#6962)
Simplified after previous modifications
2024-04-30 14:14:04 +02:00
Thomas Heartman
4fea198d6c
chore: add project icon to new form (#6965)
Imports and uses the same project icon used on the project cards. Also
aligns the header better and makes the text lighter.


![image](https://github.com/Unleash/unleash/assets/17786332/bf5082b0-1f00-45bb-a639-864963b6fe77)
2024-04-30 13:18:27 +02:00
Thomas Heartman
cdbe26330e
feat: enable project creation through new form (#6961)
This PR allows very simple project creation. You can add a name and
description. The ID is generated for you at the moment (we'll fix this
later). Nothing else works, but the project is created successfully.
2024-04-30 13:00:58 +02:00
Thomas Heartman
f77f8a71f8
rough layout of the new form (#6960)
This PR adds a very rough first implementation of the look of the new
project form. *It is not final and does not work yet*.

The important part here is that the layout is roughly right (we'll
adjust spacing etc later) and that we've got all the basic elements
present.

I'll hook it up to actually work in an upcoming PR. 


![image](https://github.com/Unleash/unleash/assets/17786332/b941702f-ec1b-4d16-9628-ba560b0919f2)

The missing icon, text alignment, etc, will also be solved later.
2024-04-30 08:09:07 +02:00
Thomas Heartman
a66b3c65c1
chore: add flag for the new project creation form layout (#6959)
Add a flag to enable/disable the new UI for project creation.
This flag is separate from the impl on the back end so that we can
enable one without the other (but uses flag dependencies in Unleash, so
that we can never enable the new UI without the new back end).

I have not set the flag to `true` in server startup because the form
doesn't work yet, so it's a manual step for now.
2024-04-29 13:52:56 +02:00
David Leek
c048156e19
fix: disable SCIM for OIDC, nothing to test it on (#6937)
disable SCIM for OIDC, nothing to test it on
Also checks scim enabled before saving
2024-04-29 13:14:39 +02:00
Tymoteusz Czech
b6865a5a9d
feat: Project owners UI (#6949)
---------

Co-authored-by: Thomas Heartman <thomas@getunleash.io>
2024-04-29 11:51:44 +02:00
Ivar Conradi Østhus
3978c690e0
fix: Data usage metrics chart included per day annotion (#6941)
Added a small annotation to the chart on how much data is included in
the pro plan on average per day to make it easier to spot when a
customer average above the included threshold.


![image](https://github.com/Unleash/unleash/assets/158948/c3105f87-03e0-4b27-9e3f-53c749c78078)
2024-04-29 10:35:01 +02:00
David Leek
0ac9624caf
fix: fix UI issues with SCIM new token button (#6948)
Makes the regenerate token button in SCIM settings behave like the rest
of the grid (remove margin left, add margin bottom)


![image](https://github.com/Unleash/unleash/assets/707867/ff3ac26e-87b3-4862-aebd-cdba0011ddad)
2024-04-26 14:31:53 +02:00
Jaanus Sellin
9f6badf5df
feat: add ui test for mark completed button (#6953)
Co-authored-by: kwasniew <kwasniewski.mateusz@gmail.com>
2024-04-26 14:31:20 +02:00
Tymoteusz Czech
514a18bf93
Update OpenAPI generated types for frontend (#6950) 2024-04-26 13:31:15 +02:00
Jaanus Sellin
7022ce8afb
feat: rever to live connected to backend (#6951)
![Screenshot from 2024-04-26
13-30-48](https://github.com/Unleash/unleash/assets/964450/03c57c62-bf51-440b-935d-46da729e3157)
![Screenshot from 2024-04-26
13-15-45](https://github.com/Unleash/unleash/assets/964450/c5ac44be-39dc-4b6c-97ec-5fc56b0cc111)
2024-04-26 13:43:38 +03:00
Jaanus Sellin
7d01dbb748
feat: feature completed connected to backend (#6947)
Connects feature complete to backend
2024-04-26 12:20:34 +03:00
Mateusz Kwasniewski
675e1a9f8b
feat: archive feature from lifecycle (#6938) 2024-04-26 09:29:07 +02:00
David Leek
d1bb65bebd
feat: scim assume control UI - move scim into sso configs (#6929)
- Adds support for the configuration option for SCIM taking over control
of users and groups
- Moves SCIM settings into SSO config pages (OIDC and SAML). SCIM
registers a callback to be invoked when saving in a parent SSO config
page
2024-04-25 15:39:56 +02:00
Mateusz Kwasniewski
19055b1e33
test: lifecycle tooltip (#6932) 2024-04-25 15:22:59 +02:00
Mateusz Kwasniewski
0eaf725e82
feat: lifecycle stage dates (#6926) 2024-04-25 13:30:00 +02:00
Mateusz Kwasniewski
44521c1c74
chore: remove variant dependencies flag (#6896) 2024-04-25 11:07:16 +02:00
Mateusz Kwasniewski
e6355f4676
feat: connect feature lifecycle to real API (#6921) 2024-04-25 09:18:05 +02:00
Ivar Conradi Østhus
1b2f983974
fix: improve traffic messaging summary (#6922)
Minor tweaks to traffic messaging summary.
2024-04-24 15:59:18 +02:00
Jaanus Sellin
143327844d
chore: clean up feedback component (#6918)
Removing the time based feedback
2024-04-24 14:22:18 +03:00
Mateusz Kwasniewski
9c883ca37d
feat: Completed stage UI (#6917) 2024-04-24 11:00:21 +02:00
Mateusz Kwasniewski
e91d471d17
feat: completed stage button (#6914) 2024-04-24 10:30:50 +02:00
Mateusz Kwasniewski
f63bae21f5
feat: live and pre-live stages UI (#6913) 2024-04-24 08:29:52 +02:00
Mateusz Kwasniewski
bf3366434c
feat: improve feature overview styling (#6910) 2024-04-23 15:08:59 +02:00
Mateusz Kwasniewski
18d317f1ff
feat: pass lifecycle stage to tooltip (#6904) 2024-04-23 11:19:24 +02:00
Mateusz Kwasniewski
d59f1adfe5
feat: Stage timeline styling (#6903) 2024-04-23 10:15:01 +02:00
Mateusz Kwasniewski
131e9dd6d6
feat: initial sketch for the lifecycle tooltip (#6899) 2024-04-23 08:56:18 +02:00
00Chaotic
13aa58e0e9
feat: allow admin login using demo auth (#6808)
This PR introduces a configuration option (`authentication.demoAllowAdminLogin`) that allows you to log in as admin when using demo authentication. To do this, use the username `admin`. 

## About the changes
The `admin` user currently cannot be accessed in `demo` authentication
mode, as the auth mode requires only an email to log in, and the admin
user is not created with an email. This change allows for logging in as
the admin user only if an `AUTH_DEMO_ALLOW_ADMIN_LOGIN` is set to `true`
(or the corresponding `authDemoAllowAdminLogin` config is enabled).

<!-- Does it close an issue? Multiple? -->
Closes #6398 

### Important files

[demo-authentication.ts](https://github.com/Unleash/unleash/compare/main...00Chaotic:unleash:feat/allow_admin_login_using_demo_auth?expand=1#diff-c166f00f0a8ca4425236b3bcba40a8a3bd07a98d067495a0a092eec26866c9f1R25)


## Discussion points
Can continue discussion of [this
comment](https://github.com/Unleash/unleash/pull/6447#issuecomment-2042405647)
in this PR.

---------

Co-authored-by: Thomas Heartman <thomasheartman+github@gmail.com>
2024-04-23 08:39:33 +02:00
Thomas Heartman
b6833d92aa
feat: split projects view into "my projects" and "other projects" (#6886)
This PR removes the previous "my projects" filter in favor always
splitting projects, but showing both on the main screen.

To make it a bit easier to work with, it also moves the project group
component into its own file, causing some extra lines of code change. My
apologies 🙇🏼
2024-04-22 13:16:53 +02:00
David Leek
2cb9ceaa72
feat: add selected month summary card for data usage (#6891)
## About the changes

Adds a summary card that sums up data usage for selected month, and for
Pro shows monthly quota and badge color according to monthly quota
2024-04-19 09:33:19 +02:00
Simon Hornby
6b5cdc2d24
fix: archive toggle no longer respects change request (#6882) 2024-04-18 13:10:22 +02:00
Tymoteusz Czech
fd4bcfffa5
Feat: new projects list (#6873)
New card view for list of projects.

Co-authored-by: Thomas Heartman <thomas@getunleash.io>
2024-04-18 11:20:01 +02:00
Jaanus Sellin
0572d37181
feat: restyle the project meta box (#6880)
Old:


![image](https://github.com/Unleash/unleash/assets/964450/14b1b2d4-ab54-4027-902c-f1a3028e7ab4)


New:


![image](https://github.com/Unleash/unleash/assets/964450/8eb07085-e253-4fb4-acf0-2ace2cc4ad2f)
2024-04-18 11:55:15 +03:00
Jaanus Sellin
f0ef7a6f31
feat: feature lifecycle getter hook (#6876) 2024-04-18 09:02:03 +03:00
Nuno Góis
bc0704581b
chore: UI SCIM guard for groups (#6866)
https://linear.app/unleash/issue/2-2113/ui-should-not-allow-manual-management-of-scim-managed-groups-in

Adds a UI SCIM guard when trying to manage groups.

The condition for the guard is:

 - Enterprise
 - SCIM flag enabled
 - SCIM setting enabled
 - SCIM group

Similar to https://github.com/Unleash/unleash/pull/6859
2024-04-17 08:27:56 +01:00
Jaanus Sellin
30ea2d91bd
chore: generate orval types (#6871) 2024-04-16 21:07:37 +03:00
Thomas Heartman
ef23cc0cc1
chore: add flag for improved project creation (#6870)
This PR adds the flag for the improved project creation flag to Unleash.
2024-04-16 14:57:52 +02:00
Nuno Góis
279d3431eb
chore: UI SCIM guard for users (#6859)
https://linear.app/unleash/issue/2-2092/ui-should-not-allow-manual-management-of-scim-managed-users-in-unleash

Adds a UI SCIM guard when trying to manage users.

The condition for the guard is:
 - Enterprise
 - SCIM flag enabled
 - SCIM setting enabled
 - SCIM user


![image](https://github.com/Unleash/unleash/assets/14320932/8a5451f1-0d6e-48ba-b090-bb5832c0e9ec)
2024-04-15 14:04:41 +01:00
Thomas Heartman
3d60c2acd0
feat: allow you to filter for "my projects" (#6855)
This change adds filtering functionality to the project list filter
buttons.

In this case, "my projects" is defined as any project that is marked as
a favorite OR (inclusive or) that you are a part of, as defined by your
user profile.
2024-04-15 11:17:53 +00:00
Jaanus Sellin
9aee1a7c42
feat: change time based feedback to button (#6837)
![image](https://github.com/Unleash/unleash/assets/964450/34070916-880d-41b6-809a-4046e3a1312f)
2024-04-15 12:44:35 +03:00
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
Jaanus Sellin
e8c50f55d5
feat: feedback for project overview (#6712) 2024-03-27 15:30:01 +02:00
Mateusz Kwasniewski
6a0135a482
feat: Table with feature overview cell (#6713) 2024-03-27 13:30:31 +01:00
Jaanus Sellin
f89c2aa829
chore: useProject cleanup (#6700) 2024-03-27 10:28:43 +02:00
Jaanus Sellin
20c41ca148
refactor: remove quering old features endpoint from BulkEnableDialog (#6698)
This was meant to repull the features, but we are using search, so it
was doing nothing.
I tested and features are still updated after removal.
2024-03-26 22:16:23 +02:00
Jaanus Sellin
93395d2c3f
chore: generate orval types (#6699) 2024-03-26 16:38:18 +02:00
Jaanus Sellin
06eda20344
feat: add flag for last seen progress (#6703) 2024-03-26 16:31:58 +02:00
Mateusz Kwasniewski
6762703db9
chore: remove extended usage metrics ui flag (#6701) 2024-03-26 15:14:39 +01:00
Mateusz Kwasniewski
a3ddefaf6d
feat: feature overview cell (#6697) 2024-03-26 14:32:17 +01:00
Jaanus Sellin
dc64a81bb9
feat: last usage metrics in project table (#6692)
![image](https://github.com/Unleash/unleash/assets/964450/342f43ed-ab81-4875-b855-5e59329288d8)
2024-03-26 14:50:37 +02:00
Mateusz Kwasniewski
df9229a90c
feat: beta indicator for project insights tab (#6686) 2024-03-26 08:55:35 +01:00
Mateusz Kwasniewski
d4f52cdb54
refactor: remove change requests from project insights api (#6685) 2024-03-25 14:44:32 +01:00
Mateusz Kwasniewski
501da974d6
feat: fetch change request overview in project overview (#6683) 2024-03-25 14:02:06 +01:00
Thomas Heartman
6025ad0f0d
fix: add forwardRef to ProjectSelect component (#6674)
Make the tooltip for project selection in the playground work properly
again. Right now, it doesn't work due to an error in react refs.

Because we wrap this in a tooltip in the Playground, we need to forward
the ref to the underlying component.

This follows the steps outlined in
https://mui.com/material-ui/guides/composition/#caveat-with-refs
2024-03-25 10:23:22 +01:00
Mateusz Kwasniewski
888a5c1283
feat: project overview change requests (#6679) 2024-03-25 10:00:31 +01:00
Mateusz Kwasniewski
a471f7369c
feat: when insights are enabled hide those widgets in other pages (#6675) 2024-03-22 12:09:31 +01:00
David Leek
e0994b088a
feat: traffic visibility UI and store (#6659)
Provides store method for retrieving traffic usage data based on
period parameter, and UI + ui hook with the new chart for displaying
traffic usage data spread out over selectable month.

![Skjermbilde 2024-03-21 kl 12 40
38](https://github.com/Unleash/unleash/assets/707867/539c6c98-b6f6-488a-97fb-baf4fccec687)

In this PR we copied and adapted a plugin written by DX for highlighting
a column in the chart:


![image](https://github.com/Unleash/unleash/assets/707867/70532b22-44ed-44c0-a9b4-75f65ed6a63d)

There are some minor improvements planned which will come in a separate
PR, reversing the order in legend and tooltip so the colors go from
light to dark, and adding a month -sum below the legend

## Discussion points

- Should any of this be extracted as a separate reusable component?

---------

Co-authored-by: Nuno Góis <github@nunogois.com>
2024-03-22 11:54:33 +01:00
Nuno Góis
a00c17ba3d
chore: upgrade typescript in frontend to 5.4.2 (#6673)
Follow up to https://github.com/Unleash/unleash/pull/6605

This upgrades TypeScript in frontend to `5.4.2`, matching the version we
have on the server.
Only 2 things broke with this upgrade, so the changes are related to
fixing the types in those places.

This fixes https://github.com/Unleash/unleash/pull/6659
2024-03-22 10:13:44 +00:00
Tymoteusz Czech
ccb067c69c
fix: show segment details in targetting (#6640)
Preview (eye icon) on a segment in "targetting" when creating or editing
a strategy now corectly shows details of a segment.

Previously it was not showing constraints present in this segment
2024-03-22 10:14:19 +01:00
Jaanus Sellin
f5a7cc9125
refactor: fix stats layout and unify components (#6671) 2024-03-22 10:07:44 +02:00
andreas-unleash
e6150def36
chore: call new insights endpoint (#6664)
What is says on the tin

Closes
#[1-2217](https://linear.app/unleash/issue/1-2217/point-fe-to-new-endpoint)

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2024-03-22 09:04:15 +02:00
Mateusz Kwasniewski
cf7507db98
fix: Adjust health chart for large values (#6665) 2024-03-21 17:56:34 +01:00
Mateusz Kwasniewski
7ca95295bc
fix: render small values in project health (#6663) 2024-03-21 15:46:17 +01:00
andreas-unleash
9be15d4976
Chore/rename dashboard files to insights (#6662)
Renames everything related to `executive dashboard` to `insights`

Closes: # [1-2213](https://linear.app/unleash/issue/1-2213/rename-in-fe)

---------

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2024-03-21 16:39:03 +02:00
Fredrik Strand Oseberg
8532e08398
fix: default strategy ui update fix (#6652)
This PR fixes a bug where editing the default strategy would not refresh
the resource it was depending on to display the data. This also surfaces
another issue, which is that project settings is using data from the
getProjectOverview hook to display the default strategies in each
environment. This should be it's own resource, but that is beyond the
scope of this PR.
2024-03-21 15:13:23 +01:00
andreas-unleash
9233d4ca33
fix: chart info naming bug fix (#6660)
Rename param

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2024-03-21 13:16:01 +00:00
andreas-unleash
ce4a243165
feat: ttp for all projects should show median value per day (#6656)
Separates out the calculation of the median to its own file and tested

Closes #
[1-2212](https://linear.app/unleash/issue/1-2212/timetoproduction-for-all-projects-should-show-the-change-in-the-median)

---------

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2024-03-21 14:21:53 +02:00
andreas-unleash
bce25bf0f1
fix: do not show flagsPerUser when calculation results to NaN (#6639)
What it says on the tin

Closes #
[1-2209](https://linear.app/unleash/issue/1-2209/total-flag-widget-says-nan-when-no-data)

---------

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
Co-authored-by: Thomas Heartman <thomas@getunleash.io>
2024-03-21 13:29:48 +02:00
Jaanus Sellin
c41ec49615
feat: remove active/inactive members (#6654)
![image](https://github.com/Unleash/unleash/assets/964450/769ef8bb-834d-4917-898f-b2ba17a9062b)
2024-03-21 11:27:37 +02:00
andreas-unleash
859fe098fe
chore: verify chart names and tooltips (#6635)
Centralises and improves the chart title and tooltip descriptions.  

Closes

[1-2199](https://linear.app/unleash/issue/1-2199/verify-tooltip-texts-and-explanations-are-clear-enough)
[1-2200](https://linear.app/unleash/issue/1-2200/verify-chart-naming)

---------

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
Co-authored-by: Thomas Heartman <thomas@getunleash.io>
2024-03-20 17:38:49 +02:00
andreas-unleash
84707e2bf3
chore: create new flag to hide insights ui (#6638)
Creates a new flag to control the executive dashboard ui

Closes #
[1-2208](https://linear.app/unleash/issue/1-2208/create-separate-ui-flag-decoupled-from-the-backend-flag)

---------

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2024-03-20 17:21:46 +02:00
andreas-unleash
33ec7e1894
chore: fix react errors (#6637)
Fix hook usage react error (console)

---------

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2024-03-20 17:11:50 +02:00
andreas-unleash
c67ad4222e
fix: ttp stat show latest date (#6626)
Makes the time to production stats show the current value (latest date).
This aligns it with other stats on the page.

Closes #
[1-2203](https://linear.app/unleash/issue/1-2203/make-the-time-to-production-stats-show-the-latest-current-data)

---------

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2024-03-20 15:46:00 +02:00
Thomas Heartman
990ef4144e
fix: render values that are N/A (#6633)
This change makes the tooltip still render values and headers that are
`N/A` (instead of not rendering them at all).

This makes the tooltip more consistent and predictable. At least to
me, it was confusing that some of the values were just hidden sometimes.

I've also added a test to make sure that the tooltip renders the N/A
values.

This is what it looks like now:


![image](https://github.com/Unleash/unleash/assets/17786332/46cb9250-6ce2-4567-a02d-b186f86c1de5)
2024-03-20 13:44:03 +00:00
Jaanus Sellin
0c0530ddcf
feat: make table scrollable (#6632) 2024-03-20 15:29:15 +02:00
Jaanus Sellin
99b5db1691
feat: connect lead time with backend (#6629) 2024-03-20 14:40:57 +02:00
Mateusz Kwasniewski
6dc6e36084
feat: expose stats, health and flag types insights (#6630) 2024-03-20 13:34:48 +01:00
Jaanus Sellin
1becfc0202
feat: project members widget (#6628)
![image](https://github.com/Unleash/unleash/assets/964450/7e27dbab-da24-44b2-8336-36df9660bd78)
2024-03-20 14:30:27 +02:00
Mateusz Kwasniewski
f0e5d075a7
feat: Fetch backend api data insights (#6622) 2024-03-20 10:54:21 +01:00
Mateusz Kwasniewski
8ea4aec3d4
chore: orval with project insights (#6621) 2024-03-20 09:20:54 +01:00
andreas-unleash
c126ae130d
fix: insights UI improvements and aggreated TTP (#6584)
Various ui enhancements
Aggregates the time to production and metrics summary by averaging by
date across all projects to get the value. Creates a single dataset for
the aggregation. This makes theme behave like eg the Health chart
(showing aggregated graph when show all projects and per project when
not)

Gradient fill when all projects across all related charts
Attached recording with generated data for 3 months 




https://github.com/Unleash/unleash/assets/104830839/7acd80a8-b799-4a35-9a2e-bf3798f56d32

---------

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2024-03-20 09:24:56 +02:00
Nuno Góis
899d9fe57f
chore: call signal endpoint example (#6611)
Adds a "call signal endpoint" example to the token dialog.


![image](https://github.com/Unleash/unleash/assets/14320932/9cd2b46e-dca7-4ae1-b389-c83f910cb377)
2024-03-19 15:53:41 +00:00
Fredrik Strand Oseberg
bb847e2935
chore: move project stats (#6602)
Add stats to project insights. Will follow up with UI enhancements in a
later iteration.

<img width="1408" alt="Skjermbilde 2024-03-19 kl 13 19 18"
src="https://github.com/Unleash/unleash/assets/16081982/f4726635-99eb-4f27-8c31-5c6d402f2ceb">
2024-03-19 14:27:42 +01:00
Mateusz Kwasniewski
aeb6291863
feat: change request insights for oss and pro (#6608) 2024-03-19 13:43:43 +01:00
Jaanus Sellin
407b348a45
feat: flag types used for project insights (#6607)
![image](https://github.com/Unleash/unleash/assets/964450/b9eecb3e-eb02-4cc7-96eb-033c010734c0)
2024-03-19 14:21:54 +02:00
Mateusz Kwasniewski
84005e27cc
feat: change request insights widget (#6606) 2024-03-19 12:21:06 +01:00
Jaanus Sellin
ec7bb2dae3
feat: add configurable event for banner goto action (#6603)
We added banner to get attention of customer, but we are not tracking
its usage.
Added a way to track the **goto action** button.
2024-03-19 12:09:09 +02:00
Mateusz Kwasniewski
52363f176a
feat: project health card (#6595) 2024-03-19 09:01:27 +01:00
Mateusz Kwasniewski
72758605b0
feat: project health chart (#6594) 2024-03-18 15:44:57 +01:00
Thomas Heartman
c2015c6f33
fix: invalid HTML and react errors in insights pages (#6593)
This PR fixes these errors (that were showing up in the dev console) in
the insights pages:
- nesting a div within a p in the count header (flags, environments,
apps); instead flip the relationship and nest the p within the div
- missing keys in mapped components
- passing a boolean "scrolled" value to the underlying component (a div)
is invalid: instead, make it so that that prop is not passed

The only one of these that could have a visual impact is the first one
(p>div -> div>p), but it appears to be the same to me.

Here's before the change:

![image](https://github.com/Unleash/unleash/assets/17786332/ffffd3cc-1236-458f-8449-3310b0044f14)



And here's after:

![image](https://github.com/Unleash/unleash/assets/17786332/9ad2d8f7-9f9e-492f-932e-a194683b1d75)
2024-03-18 15:25:03 +01:00
Jaanus Sellin
e4af2fbcd5
feat: lead time for changes (#6592)
![image](https://github.com/Unleash/unleash/assets/964450/3b4d4ed7-6b8d-42b7-81ad-3f006eb1efca)
2024-03-18 16:22:06 +02:00
Nuno Góis
19ae9b5486
fix: project settings selected tab bug (#6590)
https://linear.app/unleash/issue/2-2034/project-settings-url-bug

This prevents a bug where the wrong tab would show as selected, only
present in an edge case where the project has the name of a settings
tab.
2024-03-18 14:02:29 +00:00
Christopher Kolstad
53354224fc
chore: Bump biome and configure husky (#6589)
Upgrades biome to 1.6.1, and updates husky pre-commit hook.

Most changes here are making type imports explicit.
2024-03-18 13:58:05 +01:00
Jaanus Sellin
f2c57f0fbd
feat: insights grid initial layout (#6591) 2024-03-18 14:50:25 +02:00
Fredrik Strand Oseberg
3621c7282d
feat: setup ff (#6532)
Setup feature flag for the new refactoring of the project overview page

---------

Co-authored-by: sjaanus <sellinjaanus@gmail.com>
2024-03-18 13:38:59 +02:00
Nuno Góis
a86b8d36b3
chore: redesign action configurations (#6588)
https://linear.app/unleash/issue/2-2050/redesign-action-definitions-oss

Depends on a PR on Enterprise that will provide a new endpoint with
action configurations.

We should also clean up the now unnecessary constants and hook.
2024-03-18 11:09:49 +00:00
Nuno Góis
fca6146b3a
fix: action select value (#6582)
This should fix the action select bug where it shows as empty when the
form loads.
2024-03-15 11:54:31 +00:00
gitar-bot[bot]
3d4aa4abcb
[Remix] Cleaning up stale feature flag: proPlanAutoCharge with value true (#6581) 2024-03-15 11:53:30 +02:00
Mateusz Kwasniewski
59ee0b3bbe
feat: empty state application list improvements (#6579) 2024-03-15 10:02:43 +01:00
andreas-unleash
45634689f8
feat: average time to production chart (#6565)
Adds live data to TimeToProductionChart and AverageTimeToProduction
gauge.
Create a custom tooltip

Changes the interaction mode for tooltips as per @nicolaesocaciu pairing
session

Improvement:
Extract grouping by project to its own hook (3 charts that needed
grouped data where handling it independently.

<img width="1331" alt="Screenshot 2024-03-14 at 17 19 07"
src="https://github.com/Unleash/unleash/assets/104830839/199c556c-8264-46e3-9dd5-9a864588de1f">

Closes #
[1-2143](https://linear.app/unleash/issue/1-2143/time-to-production-total-aggregation)

---------

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2024-03-15 10:37:02 +02:00
Mateusz Kwasniewski
4d78c6dadf
feat: application overview loading state (#6562) 2024-03-15 09:08:56 +01:00
andreas-unleash
26ad9fc3f4
Fix: insights beta badge (#6568)
Reuses the beta badge from insights
<img width="1448" alt="Screenshot 2024-03-14 at 18 01 42"
src="https://github.com/Unleash/unleash/assets/104830839/c85b6838-c120-471b-9ff3-440c4208dc53">

---------

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2024-03-15 09:25:23 +02:00
Nuno Góis
de34497478
chore: drop action definition required (#6567)
https://linear.app/unleash/issue/2-2046/implement-dynamic-action-parameters

Follow up to https://github.com/Unleash/unleash/pull/6554

Cleans up the `required` property in action definitions after adapting
to using the `parameters` property instead.
2024-03-14 16:32:14 +00:00
Nuno Góis
7a3d2d6d87
chore: dynamic action parameters (#6554)
https://linear.app/unleash/issue/2-2046/implement-dynamic-action-parameters

Implements dynamic action parameters.

Also improves the action dropdown to better prepare for future actions.

<img width="771" alt="image"
src="https://github.com/Unleash/unleash/assets/14320932/ec3fcaf2-40c8-4dc8-8834-7a0d54671fd2">
2024-03-14 15:25:23 +00:00
Mateusz Kwasniewski
05c014cde7
fix: uri decode breadcrumbs (#6557) 2024-03-14 15:59:44 +01:00
Mateusz Kwasniewski
146fbbb875
fix: format api path for outdated sdks (#6555) 2024-03-14 14:09:59 +01:00
Jaanus Sellin
1780fae022
fix: now issue count under application will show correctly (#6553)
Previously if multiple environments had same missing SDK, it was counted
multiple times. Now it will take only unique.
2024-03-14 14:52:57 +02:00
Mateusz Kwasniewski
2b2089f7b5
feat: clickable banner modal links (#6552) 2024-03-14 13:19:27 +01:00
Nuno Góis
a1af0dd41c
chore: improve action parameters UI (#6549)
https://linear.app/unleash/issue/2-2041/improve-action-parameters-ui

Improves the UI of action parameters, implementing a new
`ProjectActionsActionParameterAutocomplete` component that allows
search.


![image](https://github.com/Unleash/unleash/assets/14320932/b87de507-2feb-433b-846f-0f3cc61721fa)
2024-03-14 11:25:14 +00:00
andreas-unleash
513d60c14d
Feat: sticky insights header and widget tooltip icon (#6537)
What it says on the tin

Closes #
[1-2182](https://linear.app/unleash/issue/1-2182/sticky-header-on-scroll)

<img width="1442" alt="Screenshot 2024-03-14 at 10 47 32"
src="https://github.com/Unleash/unleash/assets/104830839/5b57cd95-3c40-48e7-b25b-823df025e68c">


https://github.com/Unleash/unleash/assets/104830839/f5249fd6-a4cc-4e52-9b01-89ef3cbeb47c

---------

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2024-03-14 11:33:30 +02:00
andreas-unleash
d6482ab07d
fix: change insights icon to award star (#6534)
Changes the insights icon to award_star.  

Closes #
[1-2180](https://linear.app/unleash/issue/1-2180/change-icon-to-award-star)

<img width="320" alt="Screenshot 2024-03-13 at 13 59 21"
src="https://github.com/Unleash/unleash/assets/104830839/9bece091-23c3-4ebf-beda-31a81c1f75e4">

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2024-03-14 11:33:19 +02:00
Mateusz Kwasniewski
c6fd558da4
feat: show outdated sdks banner (#6541) 2024-03-14 10:15:33 +01:00
Nuno Góis
bc6a96cf6b
chore: suggest nested properties in action filters (#6533)
https://linear.app/unleash/issue/2-2029/support-filtering-on-nested-properties

Suggests nested properties in action filters. Also sorts them
alphabetically.

Follow up to https://github.com/Unleash/unleash/pull/6531

<img width="381" alt="image"
src="https://github.com/Unleash/unleash/assets/14320932/4e2c900d-335b-4360-8be4-186f3887e42b">
2024-03-13 16:07:01 +00:00
Mateusz Kwasniewski
f7062e2296
feat: making banner more composable (#6540) 2024-03-13 16:21:40 +01:00
Tymoteusz Czech
afbc047c77
fix(insights): chart start date (#6491)
Switch charts to stretch X-axis to the full width
2024-03-13 11:47:25 +02:00
Tymoteusz Czech
f2f38a60dc
Insights dashboard chart colors (#6504)
Improved consistent colors for charts


![image](https://github.com/Unleash/unleash/assets/2625371/f3cb66ec-89f4-46c3-b98d-e28fd4bc5cb5)
2024-03-13 11:46:32 +02:00
Tymoteusz Czech
d35ae7827f
feat: insights share events (#6480)
Figure out how many people are using and sharing insights in Beta.


https://linear.app/unleash/issue/1-2145/track-number-of-opened-share-links

---------

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
Co-authored-by: andreas-unleash <andreas@getunleash.ai>
2024-03-13 11:45:42 +02:00
Fredrik Strand Oseberg
bfbd18eb97
fix: allow deletion of segments referencing strategies in archived f… (#6406)
Subset of #6392, allowing you to delete segments that are referenced in
strategies on archived features.
2024-03-12 15:03:53 +01:00
Christopher Kolstad
d2767a0eb9
task: Make Inactive users an enterprise feature (#6510)
Ivar pointed out to me that this was intended as an enterprise only
feature. So this PR makes it an enterprise only feature. Conditionally
render the link in the normal user table, and use premium feature
component if you happen to hit the route and not be running on the
enterprise plan.
2024-03-12 10:01:10 +00:00
Fredrik Strand Oseberg
f381718fd6
fix: icon imports (#6499)
Based on this article:
https://mui.com/material-ui/guides/minimizing-bundle-size/ importing
from `'@mui/icons-material'` instead of specifying the actual path to
the icon like `import Delete from '@mui/icons-material/Delete';` can be
up to six time slower. This change changes all named imports in Unleash
referencing the `@mui/icons-material` to default imports.

This reduced the amount of modules we had to process when building the
frontend from 15206 to 4746

Before:
<img width="1016" alt="Skjermbilde 2024-03-11 kl 14 19 58"
src="https://github.com/Unleash/unleash/assets/16081982/f137d24a-6557-4183-a40f-f62a33524520">

After:
<img width="1237" alt="Skjermbilde 2024-03-11 kl 14 20 32"
src="https://github.com/Unleash/unleash/assets/16081982/05a27d6a-2c3f-4409-9862-7188ab4b9c72">

Build time locally decreased by around 50%

Before:
<img width="1504" alt="Skjermbilde 2024-03-11 kl 14 31 45"
src="https://github.com/Unleash/unleash/assets/16081982/bc931559-b022-47ed-9f8f-c87401578518">


After:
<img width="1219" alt="Skjermbilde 2024-03-11 kl 14 27 00"
src="https://github.com/Unleash/unleash/assets/16081982/3c3a8d6b-576d-45c3-aa40-cc5f95d9df2b">
2024-03-12 10:56:10 +01:00
Mateusz Kwasniewski
faf2153423
chore: generate orval after frontend api refactor (#6512) 2024-03-12 10:28:52 +01:00
Nuno Góis
b4454053e8
fix: check for project in the action permissions check (#6503)
Fixes the action permission check by also considering the project in the
check.
2024-03-11 15:06:00 +00:00
Jaanus Sellin
2997faecf6
refactor: remove client from frontend api (#6490)
There was extra call getClient().getAll() not needed and complicating
readability.
2024-03-11 13:30:32 +02:00
andreas-unleash
bf5f38ba1e
fix: chart xAxis and null values (#6472)
Changes the xAxis from 'week' to 'date' (timeline fix)

Replace null values with 0

---------

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2024-03-11 09:31:24 +01:00
andreas-unleash
ecd2693cfe
fix: insights navigation (#6473)
What it says on the tin

Also adds the beta badge

Closes #
[1-2152](https://linear.app/unleash/issue/1-2152/adjust-insights-placement-in-navigation)

<img width="902" alt="Screenshot 2024-03-08 at 16 14 59"
src="https://github.com/Unleash/unleash/assets/104830839/3e67cba3-fb0f-438c-9e53-e51d923a373e">

---------

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2024-03-11 09:31:03 +01:00