1
0
mirror of https://github.com/Unleash/unleash.git synced 2024-12-28 00:06:53 +01:00
Commit Graph

2234 Commits

Author SHA1 Message Date
Thomas Heartman
e824d83f93
feat: link to strategy edit screens from playground strategy results (#4063)
This PR adds links from the strategy evaluation results directly to the
strategy edit screen.

If the code doesn't find any links, nothing changes.

The link text will be the name of the strategy and the title (if it
exists).


![image](https://github.com/Unleash/unleash/assets/17786332/10ddbee2-2b19-46b8-a8be-994233f759ea)
2023-06-22 11:51:38 +00:00
Mateusz Kwasniewski
f0fe2368e1
feat: execution plan diff table (#4065) 2023-06-22 13:46:29 +02:00
andreas-unleash
fc35f227dc
fix: autocomplete bug when changing context field (#4064)
<!-- Thanks for creating a PR! To make it easier for reviewers and
everyone else to understand what your changes relate to, please add some
relevant content to the headings below. Feel free to ignore or delete
sections that you don't think are relevant. Thank you! ❤️ -->
Fixes a bug with the Autocomplete tags not clearing when moving from on
context field with values to another
## About the changes
<!-- Describe the changes introduced. What are they and why are they
being introduced? Feel free to also add screenshots or steps to view the
changes if they're visual. -->

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

<!-- (For internal contributors): Does it relate to an issue on public
roadmap? -->
<!--
Relates to [roadmap](https://github.com/orgs/Unleash/projects/10) item:
#
-->

### Important files
<!-- PRs can contain a lot of changes, but not all changes are equally
important. Where should a reviewer start looking to get an overview of
the changes? Are any files particularly important? -->


## Discussion points
<!-- Anything about the PR you'd like to discuss before it gets merged?
Got any questions or doubts? -->

---------

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2023-06-22 14:19:41 +03:00
Thomas Heartman
8cd89bb5a7
chore: update orval models (#4062)
Updates orval model based on the current enterprise changes.

Mostly doc/comment changes, but does introduce the new
strategySchemaLinks model.
2023-06-22 09:52:21 +00:00
Jaanus Sellin
e769cdd2ac
feat: plausible for new strategy flow (#4057) 2023-06-22 12:04:36 +03:00
andreas-unleash
559caee642
fix: multi env select should always have an environment selected (#4061)
<!-- Thanks for creating a PR! To make it easier for reviewers and
everyone else to understand what your changes relate to, please add some
relevant content to the headings below. Feel free to ignore or delete
sections that you don't think are relevant. Thank you! ❤️ -->

## About the changes
<!-- Describe the changes introduced. What are they and why are they
being introduced? Feel free to also add screenshots or steps to view the
changes if they're visual. -->

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

<!-- (For internal contributors): Does it relate to an issue on public
roadmap? -->
<!--
Relates to [roadmap](https://github.com/orgs/Unleash/projects/10) item:
#
-->

### Important files
<!-- PRs can contain a lot of changes, but not all changes are equally
important. Where should a reviewer start looking to get an overview of
the changes? Are any files particularly important? -->


## Discussion points
<!-- Anything about the PR you'd like to discuss before it gets merged?
Got any questions or doubts? -->

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2023-06-22 11:55:15 +03:00
Mateusz Kwasniewski
374d49f5bf
feat: ui tweaks for playground (#4058) 2023-06-22 10:13:17 +02:00
andreas-unleash
566b91e298
feat: advanced playground multi value context fields (#4053)
<!-- Thanks for creating a PR! To make it easier for reviewers and
everyone else to understand what your changes relate to, please add some
relevant content to the headings below. Feel free to ignore or delete
sections that you don't think are relevant. Thank you! ❤️ -->
Makes the autocomplete component in the playground context field - when
selecting a custom context field that has legal values - able to
select/edit multiple values.

## About the changes
<!-- Describe the changes introduced. What are they and why are they
being introduced? Feel free to also add screenshots or steps to view the
changes if they're visual. -->

<!-- Does it close an issue? Multiple? -->
Closes #
[1-1006](https://linear.app/unleash/issue/1-1006/multi-value-context-field)

<!-- (For internal contributors): Does it relate to an issue on public
roadmap? -->
<!--
Relates to [roadmap](https://github.com/orgs/Unleash/projects/10) item:
#
-->

### Important files
<!-- PRs can contain a lot of changes, but not all changes are equally
important. Where should a reviewer start looking to get an overview of
the changes? Are any files particularly important? -->


## Discussion points
<!-- Anything about the PR you'd like to discuss before it gets merged?
Got any questions or doubts? -->

---------

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2023-06-22 11:06:25 +03:00
Nuno Góis
7e9069e390
refactor: token permissions, drop admin-like permissions (#4050)
https://linear.app/unleash/issue/2-1155/refactor-permissions

- Our `rbac-middleware` now supports multiple OR permissions;
- Drops non-specific permissions (e.g. CRUD API token permissions
without specifying the token type);
- Makes our permission descriptions consistent;
- Drops our higher-level permissions that basically mean ADMIN (e.g.
ADMIN token permissions) in favor of `ADMIN` permission in order to
avoid privilege escalations;

This PR may help with
https://linear.app/unleash/issue/2-1144/discover-potential-privilege-escalations
as it may prevent privilege escalations altogether.

There's some UI permission logic around this, but in the future
https://linear.app/unleash/issue/2-1156/adapt-api-tokens-creation-ui-to-new-permissions
could take it a bit further by adapting the creation of tokens as well.

---------

Co-authored-by: Gastón Fournier <gaston@getunleash.io>
2023-06-22 08:35:54 +01:00
Nuno Góis
5c9bf7b0e9
refactor: misc cleanups (#4022)
Misc cleanups of unused imports / variables.
2023-06-21 15:08:52 +01:00
andreas-unleash
57066cf129
Feat/multi env select (#4028)
<!-- Thanks for creating a PR! To make it easier for reviewers and
everyone else to understand what your changes relate to, please add some
relevant content to the headings below. Feel free to ignore or delete
sections that you don't think are relevant. Thank you! ❤️ -->

## About the changes
<!-- Describe the changes introduced. What are they and why are they
being introduced? Feel free to also add screenshots or steps to view the
changes if they're visual. -->

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

<!-- (For internal contributors): Does it relate to an issue on public
roadmap? -->
<!--
Relates to [roadmap](https://github.com/orgs/Unleash/projects/10) item:
#
-->

### Important files
<!-- PRs can contain a lot of changes, but not all changes are equally
important. Where should a reviewer start looking to get an overview of
the changes? Are any files particularly important? -->


## Discussion points
<!-- Anything about the PR you'd like to discuss before it gets merged?
Got any questions or doubts? -->

---------

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2023-06-21 17:08:27 +03:00
Mateusz Kwasniewski
91f1072519
feat: initial scroll trigger (#4036) 2023-06-21 15:37:04 +02:00
Tymoteusz Czech
02ca60511f
Splitted strategy button (#4025)
## About the changes

![image](https://github.com/Unleash/unleash/assets/2625371/afaaaedf-4539-4a0b-a0fb-916d858ac6d3)


https://linear.app/unleash/issue/1-1038/strategy-creation-split-into-two-buttons
2023-06-21 15:26:07 +02:00
Jaanus Sellin
71d242a299
chore: remove variant metrics flag (#4042) 2023-06-21 15:55:21 +03:00
Jaanus Sellin
3763e1b24d
fix: default segments should only be selected when using default stra… (#4040) 2023-06-21 15:38:47 +03:00
Mateusz Kwasniewski
50d4de86dd
fix: infinite playground rendering (#4031) 2023-06-21 11:52:53 +02:00
Nuno Góis
a9e9ae8c3e
feat: use new role components in project access (#4018)
https://linear.app/unleash/issue/2-1143/adapt-project-roles-to-use-the-new-role-selector-and-role-description

This PR further unifies roles, by having a single `IRole` interface to
cover both types, and re-using the same components for project roles.
2023-06-21 08:16:37 +01:00
Mateusz Kwasniewski
a5ee50cfc9
test: advanced playground error (#4023) 2023-06-21 08:17:53 +02:00
Mateusz Kwasniewski
a0862cfc10
feat: Query complexity validation (#4017) 2023-06-20 14:28:02 +02:00
Mateusz Kwasniewski
2e4f55707d
feat: store playground settings in local storage (#4012) 2023-06-20 11:34:27 +02:00
andreas-unleash
7534ada672
Fix multiple env select (#4011)
<!-- Thanks for creating a PR! To make it easier for reviewers and
everyone else to understand what your changes relate to, please add some
relevant content to the headings below. Feel free to ignore or delete
sections that you don't think are relevant. Thank you! ❤️ -->
Fixes a bug with the multiple env select breaking playground
## About the changes
<!-- Describe the changes introduced. What are they and why are they
being introduced? Feel free to also add screenshots or steps to view the
changes if they're visual. -->

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

<!-- (For internal contributors): Does it relate to an issue on public
roadmap? -->
<!--
Relates to [roadmap](https://github.com/orgs/Unleash/projects/10) item:
#
-->

### Important files
<!-- PRs can contain a lot of changes, but not all changes are equally
important. Where should a reviewer start looking to get an overview of
the changes? Are any files particularly important? -->


## Discussion points
<!-- Anything about the PR you'd like to discuss before it gets merged?
Got any questions or doubts? -->

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2023-06-19 17:25:10 +03:00
Mateusz Kwasniewski
11e6236c0f
feat: environment diff (#4007) 2023-06-19 14:32:39 +02:00
Mateusz Kwasniewski
15dc98b497
fix: playground link (#4008) 2023-06-19 14:02:30 +02:00
Nuno Góis
3a27f2a4bd
feat: implement better roles sub-tabs (#4009)
https://linear.app/unleash/issue/2-1145/improve-roles-sub-tabs

Improves UI/UX of the roles sub-tabs.

Some of the logic is a bit specific due to the feature flag, will be
nice to clean this up once we remove it.

Before:

![image](https://github.com/Unleash/unleash/assets/14320932/cc277920-557c-45a9-a560-6026167dab1d)

After:

![image](https://github.com/Unleash/unleash/assets/14320932/51d1b5b3-068a-4bf5-84ca-24fdf708f899)
2023-06-19 12:52:56 +01:00
Ivar Conradi Østhus
02600880d1
fix: specific actions for enterprise trial messages (#4001)
Co-authored-by: Nuno Góis <github@nunogois.com>
2023-06-19 13:48:26 +02:00
andreas-unleash
b97c6bdc7b
chore: Add advanced playground table test (#4005)
<!-- Thanks for creating a PR! To make it easier for reviewers and
everyone else to understand what your changes relate to, please add some
relevant content to the headings below. Feel free to ignore or delete
sections that you don't think are relevant. Thank you! ❤️ -->
Adds a frontend test for AdvancedPlaygroundResultsTable
## About the changes
<!-- Describe the changes introduced. What are they and why are they
being introduced? Feel free to also add screenshots or steps to view the
changes if they're visual. -->

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

<!-- (For internal contributors): Does it relate to an issue on public
roadmap? -->
<!--
Relates to [roadmap](https://github.com/orgs/Unleash/projects/10) item:
#
-->

### Important files
<!-- PRs can contain a lot of changes, but not all changes are equally
important. Where should a reviewer start looking to get an overview of
the changes? Are any files particularly important? -->


## Discussion points
<!-- Anything about the PR you'd like to discuss before it gets merged?
Got any questions or doubts? -->

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2023-06-19 13:54:26 +03:00
Jaanus Sellin
54654c6368
feat: change CR strategy title and name behaviour (#4004) 2023-06-19 13:33:12 +03:00
Mateusz Kwasniewski
16a3f6069c
feat: Playground environment diff table (#4002) 2023-06-19 11:44:32 +02:00
Nuno Góis
eb8f16da8d
feat: roles unification (#3999)
https://linear.app/unleash/issue/2-1137/roles-unification-on-the-ui

Root and project roles should be managed in a similar manner, which
means using the same roles route and tab for both.

Additionally, this includes a big revamp to the project roles to align
them more closely with the modern and standardized custom root roles
that were recently developed. They mostly use the same components.

There are still more things we want to improve and unify, but we've left
some of that out of this PR due to PR size concerns.
2023-06-19 09:41:40 +01:00
Jaanus Sellin
60f4ce31f7
fix: usage of default strategy (#3995) 2023-06-19 11:31:08 +03:00
Jaanus Sellin
f7b0f0e410
fix: demo to use new query param (#4000) 2023-06-19 11:17:40 +03:00
Mateusz Kwasniewski
4035327d56
test: playground env table display (#3989) 2023-06-16 13:49:17 +02:00
Mateusz Kwasniewski
ce6ff2578a
fix: can review CR with skip change request (#3998) 2023-06-16 13:36:23 +02:00
Ivar Conradi Østhus
dcac61e4d9
fix: add trial expired warning for enterprise (#3997)
Adds the trial expired warning for enterprise as well.
2023-06-16 13:35:24 +02:00
Nuno Góis
58607f7f48
refactor: address custom root roles PR comments (#3994)
https://linear.app/unleash/issue/2-1135/address-3975-pr-comments-by-refactoring-some-of-the-new-custom-root

This pull request addresses the majority of the comments raised in issue
#3975 and lays the groundwork for unifying roles. The idea is for
project roles to also be managed in the "Roles" tab, and several
components, such as `RoleForm` and the `useRoleForm` can potentially be
reused.

I'll leave the further investigation and implementation of unifying
roles to be addressed in a separate task.

As a mostly unrelated UI fix, this also adds an arrow to the tooltip in
the `RoleBadge` component.
2023-06-15 14:03:47 +01:00
Mateusz Kwasniewski
c7ff3b472e
feat: Virtualized table with parent ref (#3993) 2023-06-15 14:11:04 +02:00
Tymoteusz Czech
221e3218df
fix: column initial state for project features (#3983) 2023-06-15 14:39:58 +03:00
Tymoteusz Czech
06f9e71f39
fix: show environment reorder handle (#3990)
## About the changes
Handle icon for reordering environments was not showing up.

**Before:**

![image](https://github.com/Unleash/unleash/assets/2625371/977cdda4-6cf2-4acf-affc-f812907bb543)

**After**

![image](https://github.com/Unleash/unleash/assets/2625371/ce495682-5366-4d31-8f5d-1601949d5089)
2023-06-15 13:39:22 +02:00
Jaanus Sellin
6e374be790
feat: strategy tooltip grouping and default (#3986) 2023-06-15 14:29:37 +03:00
Tymoteusz Czech
e0ed2fb830
fix: table imports (#3982)
## About the changes
Quick fix for build warnings on frontend - prevent circular
dependencies.
2023-06-15 13:02:14 +02:00
andreas-unleash
650f6cc857
feat: Advanced playground table (#3978)
<!-- Thanks for creating a PR! To make it easier for reviewers and
everyone else to understand what your changes relate to, please add some
relevant content to the headings below. Feel free to ignore or delete
sections that you don't think are relevant. Thank you! ❤️ -->
Implements the Advanced Playground Table

## About the changes
<!-- Describe the changes introduced. What are they and why are they
being introduced? Feel free to also add screenshots or steps to view the
changes if they're visual. -->

<!-- Does it close an issue? Multiple? -->
Closes #
[1-1007](https://linear.app/unleash/issue/1-1007/env-aware-results-table)

<!-- (For internal contributors): Does it relate to an issue on public
roadmap? -->
<!--
Relates to [roadmap](https://github.com/orgs/Unleash/projects/10) item:
#
-->

### Important files
<!-- PRs can contain a lot of changes, but not all changes are equally
important. Where should a reviewer start looking to get an overview of
the changes? Are any files particularly important? -->


![Screenshot 2023-06-14 at 15 04
08](https://github.com/Unleash/unleash/assets/104830839/2f76d6f5-f92b-4586-bb4b-265f26eeb836)

---------

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2023-06-15 09:29:31 +00:00
Mateusz Kwasniewski
9853aa0217
feat:playground environment table (#3985) 2023-06-15 09:56:13 +02:00
Nuno Góis
bb026c0ba1
feat: custom root roles (#3975)
## About the changes
Implements custom root roles, encompassing a lot of different areas of
the project, and slightly refactoring the current roles logic. It
includes quite a clean up.

This feature itself is behind a flag: `customRootRoles`

This feature covers root roles in:
 - Users;
 - Service Accounts;
 - Groups;

Apologies in advance. I may have gotten a bit carried away 🙈 

### Roles

We now have a new admin tab called "Roles" where we can see all root
roles and manage custom ones. We are not allowed to edit or remove
*predefined* roles.

![image](https://github.com/Unleash/unleash/assets/14320932/1ad8695c-8c3f-440d-ac32-39746720d588)
This meant slightly pushing away the existing roles to `project-roles`
instead. One idea we want to explore in the future is to unify both
types of roles in the UI instead of having 2 separate tabs. This
includes modernizing project roles to fit more into our current design
and decisions.

Hovering the permissions cell expands detailed information about the
role:

![image](https://github.com/Unleash/unleash/assets/14320932/81c4aae7-8b4d-4cb4-92d1-8f1bc3ef1f2a)

### Create and edit role

Here's how the role form looks like (create / edit):

![image](https://github.com/Unleash/unleash/assets/14320932/85baec29-bb10-48c5-a207-b3e9a8de838a)
Here I categorized permissions so it's easier to visualize and manage
from a UX perspective.

I'm using the same endpoint as before. I tried to unify the logic and
get rid of the `projectRole` specific hooks. What distinguishes custom
root roles from custom project roles is the extra `root-custom` type we
see on the payload. By default we assume `custom` (custom project role)
instead, which should help in terms of backwards compatibility.

### Delete role

When we delete a custom role we try to help the end user make an
informed decision by listing all the entities which currently use this
custom root role:

![image](https://github.com/Unleash/unleash/assets/14320932/352ed529-76be-47a8-88da-5e924fb191d4)
~~As mentioned in the screenshot, when deleting a custom role, we demote
all entities associated with it to the predefined `Viewer` role.~~
**EDIT**: Apparently we currently block this from the API
(access-service deleteRole) with a message:

![image](https://github.com/Unleash/unleash/assets/14320932/82a8e50f-8dc5-4c18-a2ba-54e2ae91b91c)
What should the correct behavior be?

### Role selector

I added a new easy-to-use role selector component that is present in:
 - Users 

![image](https://github.com/Unleash/unleash/assets/14320932/76953139-7fb6-437e-b3fa-ace1d9187674)
 - Service Accounts

![image](https://github.com/Unleash/unleash/assets/14320932/2b80bd55-9abb-4883-b715-15650ae752ea)
- Groups

![image](https://github.com/Unleash/unleash/assets/14320932/ab438f7c-2245-4779-b157-2da1689fe402)

### Role description

I also added a new role description component that you can see below the
dropdown in the selector component, but it's also used to better
describe each role in the respective tables:

![image](https://github.com/Unleash/unleash/assets/14320932/a3eecac1-2a34-4500-a68c-e3f62ebfa782)

I'm not listing all the permissions of predefined roles. Those simply
show the description in the tooltip:

![image](https://github.com/Unleash/unleash/assets/14320932/7e5b2948-45f0-4472-8311-bf533409ba6c)

### Role badge

Groups is a bit different, since it uses a list of cards, so I added yet
another component - Role badge:

![image](https://github.com/Unleash/unleash/assets/14320932/1d62c3db-072a-4c97-b86f-1d8ebdd3523e)

I'm using this same component on the profile tab:

![image](https://github.com/Unleash/unleash/assets/14320932/214272db-a828-444e-8846-4f39b9456bc6)

## Discussion points
- Are we being defensive enough with the use of the flag? Should we
cover more?
 - Are we breaking backwards compatibility in any way?
 - What should we do when removing a role? Block or demote?
- Maybe some existing permission-related issues will surface with this
change: Are we being specific enough with our permissions? A lot of
places are simply checking for `ADMIN`;
- We may want to get rid of the API roles coupling we have with the
users and SAs and instead use the new hooks (e.g. `useRoles`)
explicitly;
 - We should update the docs;
- Maybe we could allow the user to add a custom role directly from the
role selector component;

---------

Co-authored-by: Gastón Fournier <gaston@getunleash.io>
2023-06-14 14:40:40 +01:00
Mateusz Kwasniewski
1bd182d02a
chore: upgrade orval types (#3981) 2023-06-14 14:40:24 +02:00
Jaanus Sellin
b91b7276c5
feat: split strategies table into two with new design (#3969) 2023-06-14 09:10:04 +03:00
Jaanus Sellin
41370be591
feat: update predefined strategies tooltip (#3964) 2023-06-14 08:46:15 +03:00
Jaanus Sellin
4a2867bd78
feat: context/segment usage plausible (#3956) 2023-06-12 12:41:03 +03:00
Mateusz Kwasniewski
7b8b6bceaf
feat: walking skeleton of the advanced playground (#3949) 2023-06-12 11:01:52 +02:00
Jaanus Sellin
9f0d94287e
feat: context field usage frontend (#3938) 2023-06-12 10:55:58 +03:00
andreas-unleash
69e1c73db1
fix: only show simple tag type if there are no tag types in the server (#3919)
<!-- Thanks for creating a PR! To make it easier for reviewers and
everyone else to understand what your changes relate to, please add some
relevant content to the headings below. Feel free to ignore or delete
sections that you don't think are relevant. Thank you! ❤️ -->
Fixes `simple` tag type still visible in dropdown even after deleted
## About the changes
<!-- Describe the changes introduced. What are they and why are they
being introduced? Feel free to also add screenshots or steps to view the
changes if they're visual. -->

<!-- Does it close an issue? Multiple? -->
Closes #
[1-997](https://linear.app/unleash/issue/1-997/simple-tag-type-still-visible-in-dropdown-after-deletion)

<!-- (For internal contributors): Does it relate to an issue on public
roadmap? -->
<!--
Relates to [roadmap](https://github.com/orgs/Unleash/projects/10) item:
#
-->

### Important files
<!-- PRs can contain a lot of changes, but not all changes are equally
important. Where should a reviewer start looking to get an overview of
the changes? Are any files particularly important? -->


## Discussion points
<!-- Anything about the PR you'd like to discuss before it gets merged?
Got any questions or doubts? -->

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2023-06-09 09:59:27 +03:00
andreas-unleash
84a3a4cb61
fix: remove unneseccary constraint validation request (#3914)
<!-- Thanks for creating a PR! To make it easier for reviewers and
everyone else to understand what your changes relate to, please add some
relevant content to the headings below. Feel free to ignore or delete
sections that you don't think are relevant. Thank you! ❤️ -->
Fixes over-validating constraint
## About the changes
<!-- Describe the changes introduced. What are they and why are they
being introduced? Feel free to also add screenshots or steps to view the
changes if they're visual. -->

<!-- Does it close an issue? Multiple? -->
Closes #
[1-949](https://linear.app/unleash/issue/1-949/fix-overvalidating-constraint)

<!-- (For internal contributors): Does it relate to an issue on public
roadmap? -->
<!--
Relates to [roadmap](https://github.com/orgs/Unleash/projects/10) item:
#
-->

### Important files
<!-- PRs can contain a lot of changes, but not all changes are equally
important. Where should a reviewer start looking to get an overview of
the changes? Are any files particularly important? -->


## Discussion points
<!-- Anything about the PR you'd like to discuss before it gets merged?
Got any questions or doubts? -->

---------

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2023-06-07 15:35:20 +03:00
Mateusz Kwasniewski
44f752e714
feat: display strategy title and type (#3908) 2023-06-06 15:04:55 +02:00
Jaanus Sellin
0efaa346c4
feat: usage on context fields in list (#3906) 2023-06-06 13:59:41 +03:00
Mateusz Kwasniewski
5ec59c6e92
feat: change own password confirmation (#3894) 2023-06-05 11:58:25 +02:00
Mateusz Kwasniewski
ae1136075e
feat: autocomplete off on login password (#3901) 2023-06-05 11:29:38 +02:00
Mateusz Kwasniewski
b0a003ea58
feat: disable notifications flag (#3874) 2023-05-29 08:28:47 +02:00
Jaanus Sellin
5d269efa33
feat: segment usage ui test (#3872) 2023-05-28 21:26:09 +03:00
andreas-unleash
89df3f364e
Fix: laggy toggles (#3873)
This PR removes the `disabled` state for the feature toggle env
switches.

This is what causes the lag from when you toggle the switch to when it
becomes available for actions again.


Signed-off-by: andreas-unleash <andreas@getunleash.ai>
Co-authored-by: Nuno Góis <github@nunogois.com>
2023-05-26 16:42:42 +02:00
Jaanus Sellin
f73d36fda3
feat: add usage of segment in list (#3853) 2023-05-26 14:37:00 +03:00
Nuno Góis
959ac33905
fix: misc UI fixes mostly responsiveness related (#3868)
Includes:
 - https://linear.app/unleash/issue/2-1050/ui-fixes
 - https://linear.app/unleash/issue/2-1088/mobile-ui
 - https://linear.app/unleash/issue/2-1090/tablet-table

Which include things like:
 - zIndex adjustments;
 - Make the plans dialog more responsive;
 - Hide interactive demo guide on small screens;
 - Improve demo banner responsiveness;
 - Fix console error on `ResponsiveButton`;
 - Adjust sidebar header to be more consistent;
 
 

![image](https://github.com/Unleash/unleash/assets/14320932/e1fce811-a05a-42e6-abca-94789c9f3e37)![image](https://github.com/Unleash/unleash/assets/14320932/c7ce6528-25a6-4592-8c8a-aee765464873)

Co-authored-by @nicolaesocaciu
2023-05-25 20:28:08 +03:00
andreas-unleash
1ec4fd06d2
fix: rollout not reflected correctly for default strategy (#3859)
<!-- Thanks for creating a PR! To make it easier for reviewers and
everyone else to understand what your changes relate to, please add some
relevant content to the headings below. Feel free to ignore or delete
sections that you don't think are relevant. Thank you! ❤️ -->

## About the changes
<!-- Describe the changes introduced. What are they and why are they
being introduced? Feel free to also add screenshots or steps to view the
changes if they're visual. -->

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

<!-- (For internal contributors): Does it relate to an issue on public
roadmap? -->
<!--
Relates to [roadmap](https://github.com/orgs/Unleash/projects/10) item:
#
-->

### Important files
<!-- PRs can contain a lot of changes, but not all changes are equally
important. Where should a reviewer start looking to get an overview of
the changes? Are any files particularly important? -->


## Discussion points
<!-- Anything about the PR you'd like to discuss before it gets merged?
Got any questions or doubts? -->

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2023-05-24 16:17:26 +03:00
andreas-unleash
46d5e507f4
fix: default strategy screen not loading (#3857)
<!-- Thanks for creating a PR! To make it easier for reviewers and
everyone else to understand what your changes relate to, please add some
relevant content to the headings below. Feel free to ignore or delete
sections that you don't think are relevant. Thank you! ❤️ -->

Fixes the default strategy modal.  

The bug was the placement of the route component to `edit`

## About the changes
<!-- Describe the changes introduced. What are they and why are they
being introduced? Feel free to also add screenshots or steps to view the
changes if they're visual. -->

<!-- Does it close an issue? Multiple? -->
Closes #
https://linear.app/unleash/issue/1-965/fix-default-strategy-modal-re-render

<!-- (For internal contributors): Does it relate to an issue on public
roadmap? -->
<!--
Relates to [roadmap](https://github.com/orgs/Unleash/projects/10) item:
#
-->

### Important files
<!-- PRs can contain a lot of changes, but not all changes are equally
important. Where should a reviewer start looking to get an overview of
the changes? Are any files particularly important? -->


## Discussion points
<!-- Anything about the PR you'd like to discuss before it gets merged?
Got any questions or doubts? -->

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2023-05-24 15:02:56 +03:00
Nuno Góis
9f0de72e1a
fix: change password alert when password based login is disabled (#3856)
Accessing `/profile/change-password` directly would still allow you to
change your password on the UI when "password based login" is disabled.

This PR makes it so we show an alert in that scenario explaining why
you're not allowed to change your password.

We still allow users to change their password on the API level, but I
think that's fine. The UI should be consistent though.


![image](https://github.com/Unleash/unleash/assets/14320932/0406c773-7bc3-4519-83f8-9eddeb627e28)
2023-05-24 12:14:14 +01:00
Nuno Góis
ea057c0473
fix: profile should wait for loaded state before rendering (#3855)
Small change that makes it so that the profile page waits for the loaded
state before rendering.

E.g. Before this, there was a flash of the "change password" tab being
visible for a very short time before the auth settings loaded.
2023-05-24 10:33:40 +00:00
Nuno Góis
c0bcc50b28
fix: add confirmation to disable password login (#3829)
https://linear.app/unleash/issue/2-1071/prevent-users-from-disabling-password-authentication-when-there-are-no

Improves the behavior of disabling password based login by adding some
relevant information and a confirmation dialog with a warning. This felt
better than trying to disable the toggle, by still allowing the end
users to make the decision, except now it should be a properly informed
decision with confirmation.


![image](https://github.com/Unleash/unleash/assets/14320932/2ca754d8-cfa2-4fda-984d-0c34b89750f3)

- **Password based administrators**: Admin accounts that have a password
set;
- **Other administrators**: Other admin users that do not have a
password. May be SSO, but may also be users that did not set a password
yet;
- **Admin service accounts**: Service accounts that have the admin root
role. Depending on how you're using the SA this may not necessarily mean
locking yourself out of an admin account, especially if you secured its
token beforehand;
- **Admin API tokens**: Similar to the above. If you secured an admin
API token beforehand, you still have access to all features through the
API;

Each one of them link to the respective page inside Unleash (e.g. users
page, service accounts page, tokens page...);

If you try to disable and press "save", and only in that scenario, you
are presented with the following confirmation dialog:


![image](https://github.com/Unleash/unleash/assets/14320932/5ad6d105-ad47-4d31-a1df-04737aed4e00)
2023-05-23 15:56:34 +01:00
andreas-unleash
2a3f743daa
fix: default strategy screen not loading when no default strategy (#3840)
<!-- Thanks for creating a PR! To make it easier for reviewers and
everyone else to understand what your changes relate to, please add some
relevant content to the headings below. Feel free to ignore or delete
sections that you don't think are relevant. Thank you! ❤️ -->
Fixes a bug where default strategy would not edit 
## About the changes
<!-- Describe the changes introduced. What are they and why are they
being introduced? Feel free to also add screenshots or steps to view the
changes if they're visual. -->

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

<!-- (For internal contributors): Does it relate to an issue on public
roadmap? -->
<!--
Relates to [roadmap](https://github.com/orgs/Unleash/projects/10) item:
#
-->

### Important files
<!-- PRs can contain a lot of changes, but not all changes are equally
important. Where should a reviewer start looking to get an overview of
the changes? Are any files particularly important? -->


## Discussion points
<!-- Anything about the PR you'd like to discuss before it gets merged?
Got any questions or doubts? -->

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2023-05-23 15:34:37 +03:00
Thomas Heartman
f7006642a6
fix: Only show names as changed when titles have changed. (#3843)
Related to [linear task
1-954](https://linear.app/unleash/issue/1-954/disabling-last-strategy-in-change-request-shows-strikethrough).

This PR changes the display logic for showing titles as changed: it
previously fell back to always being `true` if there was a custom title
set for a strategy. This PR makes it so that it only shows as changed if
the title has actually changed, either from one custom title to another,
or to and from the display name.

To accommodate the last bit, it also shows display names with a
strikethrough if the strategy had no title previously, but now it does. This is consistent with how it displays the strategy name if you delete a title from a strategy.


Here's a number of different examples: 


![image](https://github.com/Unleash/unleash/assets/17786332/034bcc01-8715-4052-afec-56caf7edea51)
2023-05-23 12:16:20 +00:00
Mateusz Kwasniewski
3e84d2ed09
fix: make area behind bulk actions clickable (#3838) 2023-05-23 10:41:01 +02:00
andreas-unleash
8aadbc8ae9
Fix/cr should activate disabled lag free (#3826)
<!-- Thanks for creating a PR! To make it easier for reviewers and
everyone else to understand what your changes relate to, please add some
relevant content to the headings below. Feel free to ignore or delete
sections that you don't think are relevant. Thank you! ❤️ -->

- Adds change request option to activate disabled strategies UI
- Fixes Disable strategy bug (onSuggestDisable)

## About the changes
<!-- Describe the changes introduced. What are they and why are they
being introduced? Feel free to also add screenshots or steps to view the
changes if they're visual. -->

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

<!-- (For internal contributors): Does it relate to an issue on public
roadmap? -->
<!--
Relates to [roadmap](https://github.com/orgs/Unleash/projects/10) item:
#
-->

### Important files
<!-- PRs can contain a lot of changes, but not all changes are equally
important. Where should a reviewer start looking to get an overview of
the changes? Are any files particularly important? -->


## Discussion points
<!-- Anything about the PR you'd like to discuss before it gets merged?
Got any questions or doubts? -->

---------

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2023-05-23 10:16:09 +03:00
Mateusz Kwasniewski
e34c9bc0bf
feat: disable bulk toggles flag (#3827) 2023-05-22 13:31:31 +02:00
Tymoteusz Czech
40185e9066
Update strategies table (#3811)
- split strategies table in two
  - one for predefined strategies
  - one for custom strategies
- move custom strategy button
- add guidance why custom strategies are not recommended

https://linear.app/unleash/issue/1-894/improve-the-list-of-strategies
2023-05-22 12:46:27 +02:00
andreas-unleash
adfd79c261
Revert "feat: change requests UI for activate disabled strategies (#3… (#3817)
…787)"

This reverts commit 896b63616d.

<!-- Thanks for creating a PR! To make it easier for reviewers and
everyone else to understand what your changes relate to, please add some
relevant content to the headings below. Feel free to ignore or delete
sections that you don't think are relevant. Thank you! ❤️ -->

## About the changes
<!-- Describe the changes introduced. What are they and why are they
being introduced? Feel free to also add screenshots or steps to view the
changes if they're visual. -->

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

<!-- (For internal contributors): Does it relate to an issue on public
roadmap? -->
<!--
Relates to [roadmap](https://github.com/orgs/Unleash/projects/10) item:
#
-->

### Important files
<!-- PRs can contain a lot of changes, but not all changes are equally
important. Where should a reviewer start looking to get an overview of
the changes? Are any files particularly important? -->


## Discussion points
<!-- Anything about the PR you'd like to discuss before it gets merged?
Got any questions or doubts? -->
2023-05-20 09:40:48 +02:00
Gastón Fournier
6e847d0015
Revert "fix: laggy switch" (#3815)
Reverts Unleash/unleash#3814 forcing merge to fix issue in demo instance: https://github.com/Unleash/unleash/pull/3815#issuecomment-1554712970
2023-05-19 16:55:14 +02:00
Nuno Góis
0c538f070a
refactor: change plausible events to be more specific at the top level (#3810)
Splits the `demo` event into multiple more specific events so it's
easier to track on Plausible (fix `(none)` in Plausible).
2023-05-19 15:32:08 +01:00
andreas-unleash
e1dd1701cc
fix: laggy switch (#3814)
<!-- Thanks for creating a PR! To make it easier for reviewers and
everyone else to understand what your changes relate to, please add some
relevant content to the headings below. Feel free to ignore or delete
sections that you don't think are relevant. Thank you! ❤️ -->
Fixes laggy environment switch
## About the changes
<!-- Describe the changes introduced. What are they and why are they
being introduced? Feel free to also add screenshots or steps to view the
changes if they're visual. -->

Stabilising the functions with useCallback seems necessary in the table
view
Changed the `checked` property to be dependent on `isChecked` which
wraps the value in useOptimisticUpdate hook made the most difference

<!-- Does it close an issue? Multiple? -->
Closes
#(1-942)[https://linear.app/unleash/issue/1-942/bug-laggy-environment-toggles-in-the-ui]

<!-- (For internal contributors): Does it relate to an issue on public
roadmap? -->
<!--
Relates to [roadmap](https://github.com/orgs/Unleash/projects/10) item:
#
-->

### Important files
<!-- PRs can contain a lot of changes, but not all changes are equally
important. Where should a reviewer start looking to get an overview of
the changes? Are any files particularly important? -->


## Discussion points
<!-- Anything about the PR you'd like to discuss before it gets merged?
Got any questions or doubts? -->

---------

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2023-05-19 13:13:43 +00:00
andreas-unleash
6e2cd602c4
fix: Move title at the top in default strategy (#3812)
<!-- Thanks for creating a PR! To make it easier for reviewers and
everyone else to understand what your changes relate to, please add some
relevant content to the headings below. Feel free to ignore or delete
sections that you don't think are relevant. Thank you! ❤️ -->
Fix for consistency
## About the changes
<!-- Describe the changes introduced. What are they and why are they
being introduced? Feel free to also add screenshots or steps to view the
changes if they're visual. -->

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

<!-- (For internal contributors): Does it relate to an issue on public
roadmap? -->
<!--
Relates to [roadmap](https://github.com/orgs/Unleash/projects/10) item:
#
-->

### Important files
<!-- PRs can contain a lot of changes, but not all changes are equally
important. Where should a reviewer start looking to get an overview of
the changes? Are any files particularly important? -->


## Discussion points
<!-- Anything about the PR you'd like to discuss before it gets merged?
Got any questions or doubts? -->

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2023-05-19 11:27:34 +00:00
Tymoteusz Czech
d1c3be3b9e
Tracking for default strategy (#3800) 2023-05-19 13:47:55 +03:00
andreas-unleash
896b63616d
feat: change requests UI for activate disabled strategies (#3787)
<!-- Thanks for creating a PR! To make it easier for reviewers and
everyone else to understand what your changes relate to, please add some
relevant content to the headings below. Feel free to ignore or delete
sections that you don't think are relevant. Thank you! ❤️ -->
Change request UI fix for `shouldActivateDisabledStrategies`
## About the changes
<!-- Describe the changes introduced. What are they and why are they
being introduced? Feel free to also add screenshots or steps to view the
changes if they're visual. -->

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

<!-- (For internal contributors): Does it relate to an issue on public
roadmap? -->
<!--
Relates to [roadmap](https://github.com/orgs/Unleash/projects/10) item:
#
-->

### Important files
<!-- PRs can contain a lot of changes, but not all changes are equally
important. Where should a reviewer start looking to get an overview of
the changes? Are any files particularly important? -->


## Discussion points
<!-- Anything about the PR you'd like to discuss before it gets merged?
Got any questions or doubts? -->

---------

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2023-05-19 13:29:58 +03:00
Nuno Góis
4adc977ba0
fix: properly handle flag resolver variants (#3808)
Variants were not being properly handled in the `flag-resolver`: The
fact that the default value of the variant is not falsy made it so we
never asked the external flag resolver for the value.

This also moves the logic from `Variant | undefined` to `Variant` where
we use the `getDefaultVariant()` helper method to return us a [default
variant](55274e4953/src/variant.ts (L37-L42)).
2023-05-18 17:04:55 +01:00
Tymoteusz Czech
149c54b0b3
fix: strategy remove menu (#3807)
![image](https://github.com/Unleash/unleash/assets/2625371/6d0f0c58-3637-4586-a0c4-aeb45e5e4a2c)

Menu was hindering the rendering of confirmation dialog.
https://linear.app/unleash/issue/1-935/fix-feature-strategy-actions-menu
2023-05-18 17:35:46 +03:00
Mateusz Kwasniewski
c3de9d7161
test: bulk enable display (#3803) 2023-05-18 14:51:49 +02:00
Mateusz Kwasniewski
92ffc387f3
feat: Bulk enable hints (#3802) 2023-05-18 12:24:31 +02:00
Mateusz Kwasniewski
980332a074
feat: bulk enable disable change requests (#3801) 2023-05-18 11:21:10 +02:00
Nuno Góis
db61a8a40c
feat: message banner (variants) (#3788)
-
https://linear.app/unleash/issue/2-546/fetch-the-payload-from-a-real-feature-flag
-
https://linear.app/unleash/issue/2-547/adapt-ui-to-use-the-feature-flag-information-were-fetching

Tackles the 2 tasks above. 

Adapts our `FlagResolver` logic to support variants, so we can use them
for our message banner project but also anything else in the future.
Also adapts MessageBanner to the new logic.

 - Add support for variants in `FlagResolver`;
 - Adapt `MessageBanner` to a variants flag;
 - Adds `sticky` support for the `MessageBanner`;
- Adds our first variants flag to `uiConfig` and `experimental`:
`messageBanner`;
- Adds a `variant-flag-schema` to make it easy to represent the variant
output that we specify in `uiConfig`;
- Adapts `experimental` to be able to represent default variants while
still maintaining type safety;
- Adds helpers to make it easy to use variants in our project, such as
`getVariantValue` and the `useVariant` hook;
 - Adapts and adds new tests in `flag-resolver.test.ts`;
 
### Notes

- ~~The `as PayloadType` assertions need
https://github.com/Unleash/unleash-client-node/pull/454 since it
includes https://github.com/Unleash/unleash-client-node/pull/452~~
(50ccf60893);
 - ~~Enterprise needs a PR that will follow soon~~;
 
 

![image](https://github.com/Unleash/unleash/assets/14320932/034ff64f-3020-4ed0-863b-ed1fd9190430)
2023-05-18 09:38:59 +01:00
Mateusz Kwasniewski
2487b990bd
feat: Bulk enabled disable (#3797) 2023-05-18 06:07:56 +00:00
Jaanus Sellin
d216c56df5
fix: fix deleting feature from global archive (#3786) 2023-05-17 16:19:19 +03:00
Mateusz Kwasniewski
8dd70e922a
feat: remove icons to prepare space for bulk toggle (#3796) 2023-05-17 12:34:28 +02:00
Nuno Góis
6d473164ab
refactor: rename demo img assets (#3795)
Small PR that simply renames `demo`-related assets for better
organization and readability.
2023-05-17 08:47:19 +00:00
Nuno Góis
6a12403eca
fix: demo QR code (#3793)
https://linear.app/unleash/issue/2-1062/update-the-qr-code

Updates the QR code to a correct one, since the last one expired.

Relates to [roadmap](https://github.com/orgs/Unleash/projects/10) item:
#3537
2023-05-17 09:03:11 +01:00
Simon Hornby
4790a26e6f
fix: prevent variant name from containing extra whitespace (#3777) 2023-05-16 13:50:57 +02:00
Tymoteusz Czech
0cb6174f75
Fix/strategy UI improvements (#3766)
https://linear.app/unleash/issue/1-889/ui-adjustments


![image](https://github.com/Unleash/unleash/assets/2625371/e9d851e6-57b5-4deb-b3de-2c0c69fa71dd)

---------

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
Co-authored-by: andreas-unleash <andreas@getunleash.ai>
2023-05-16 11:15:59 +00:00
Nuno Góis
dabb6c00a3
fix: demo guide dialogs behavior (#3762)
Improves the dialogs behavior to address
https://linear.app/unleash/issue/2-1053/bug-when-big-dialog-is-open-if-you-click-on-a-step-the-flow-is-broken

Also prevents close on backdrop click for the welcome dialog.
2023-05-12 17:58:06 +00:00
Nuno Góis
f7b05c39f9
fix: demo userId screenshot path (#3761)
Fixes an issue where the userId screenshot did not load correctly.
2023-05-12 14:34:59 +00:00
Nuno Góis
7116b47a39
fix: point demo website links and QR to new URL (#3754)
https://linear.app/unleash/issue/2-1035/apply-changes-with-demo-instance-in-mind

Applies this item in the task:
- Ensure that the demo guide points to the URL mentioned above, with the
correct QR code;

Relates to [roadmap](https://github.com/orgs/Unleash/projects/10) item:
#3537
2023-05-12 12:07:51 +03:00
Nuno Góis
bf4cbd24b0
fix: ensure rel=noreferrer on target=_blank (#3755)
https://linear.app/unleash/issue/2-1043/ensure-that-links-with-target=-blank-include-rel=noreferrer-to-prevent

Ensures that links with `target="_blank"` include `rel="noreferrer"` to
prevent warnings such as:


![image](https://github.com/Unleash/unleash/assets/14320932/9e64df53-b4b9-4346-9394-edb0c2d2d555)
https://mathiasbynens.github.io/rel-noopener/#recommendations
2023-05-12 09:51:33 +01:00
Nuno Góis
b8171cf909
fix: interactive demo guide adjustments (#3747)
https://linear.app/unleash/issue/2-1027/adjustments
https://linear.app/unleash/issue/2-989/add-imagegif-to-some-of-the-steps

Includes small adjustments from the tasks above:
 - Adjust zIndex values for the demo guide;
- Add a screenshot to better guide the users to their `userId` in the
demo website;

Relates to [roadmap](https://github.com/orgs/Unleash/projects/10) item:
#3537
2023-05-11 18:01:08 +00:00
Christopher Kolstad
eaacb979d6
fix: Removed CR on variants flag (it's GA) (#3738)
This PR removes the usage of crOnVariants flag, but keeps the behaviour,
so CR are now enabled on variants.

---------

Co-authored-by: Nuno Góis <github@nunogois.com>
2023-05-10 13:46:41 +00:00
Nuno Góis
aaf15c96f9
feat: use new demo website (#3737)
https://linear.app/unleash/issue/2-1023/use-new-demo-website-for-testing-purposes

Use https://unleash-demo-app.vercel.app/ for now, which will help us
testing.
Should be reverted/updated before we release to the current `demo`
instance.

Relates to [roadmap](https://github.com/orgs/Unleash/projects/10) item:
#3537
2023-05-10 11:48:00 +00:00
Nuno Góis
9d680a782d
fix: improve steps for demo guide toggle topic (#3728)
https://linear.app/unleash/issue/2-1006/steps-improvement-enabledisable-a-feature-toggle

Step improvements for the "toggle" topic.
Includes a smarter "Next" label that can also be "Start" or "Finish"
depending (nice-to-have).

Relates to [roadmap](https://github.com/orgs/Unleash/projects/10) item:
#3537
2023-05-09 22:33:01 +03:00
Nuno Góis
64bae9a042
fix: improve steps for demo guide specific user topic (#3727)
https://linear.app/unleash/issue/2-980/steps-improvements-enable-for-a-specific-user

Step improvements for the "specific user" topic.

Relates to [roadmap](https://github.com/orgs/Unleash/projects/10) item:
#3537
2023-05-09 22:30:18 +03:00
Nuno Góis
0da0b13379
fix: improve steps for demo guide gradual rollout topic (#3723)
https://linear.app/unleash/issue/2-1007/steps-improvement-adjust-gradual-rollout

Step improvements for the "gradual rollout" topic.

Relates to [roadmap](https://github.com/orgs/Unleash/projects/10) item:
#3537
2023-05-09 18:24:28 +03:00
Nuno Góis
8746cb1f89
fix: strategyId in edit strategy API command endpoint (#3725)
Fixes a small issue where the "API Command" for edit strategy was
showing the strategyId as `undefined`:


`/api/admin/projects/demo-app/features/demoApp.step1/environments/dev/strategies/undefined'`


![image](https://github.com/Unleash/unleash/assets/14320932/19650a15-5cde-43c3-9d2b-a7e790bea0ac)
2023-05-09 13:39:28 +00:00
Nuno Góis
93a7d29003
fix: application name link styling (#3724)
https://linear.app/unleash/issue/2-1021/bug-dark-mode-application-screen-name-of-the-application-not-visible

Applies the styling changes mentioned in the task above, fixing the
style in dark mode and making these links more consistent in general.


![image](https://github.com/Unleash/unleash/assets/14320932/f3a873c1-e25e-4137-8b74-8020ebde0493)
2023-05-09 13:02:32 +00:00
Nuno Góis
29857e2bc5
fix: improve steps for demo guide variants topic (#3721)
https://linear.app/unleash/issue/2-1008/steps-improvement-adjust-variants

Step improvements for the "variants" topic.

Relates to [roadmap](https://github.com/orgs/Unleash/projects/10) item:
#3537
2023-05-09 11:47:55 +01:00
Nuno Góis
0c620656ef
fix: small fixes for the interactive demo guide (#3713)
https://linear.app/unleash/issue/2-1005/small-ui-improvements

https://linear.app/unleash/issue/2-1020/fix-issues-with-interactive-demo-guide

Tackles the 2 tasks above, which include items such as:
 - Change drop-shadow of step tooltips;
 - Change transparency of overlay;
 - Change box-shadow of topics "widget";
 - Gradual rollout should use `default` stickiness;
 - Improve last step behavior when redirecting (add optional delay);

Relates to [roadmap](https://github.com/orgs/Unleash/projects/10) item:
#3537
2023-05-09 10:04:39 +03:00
Jaanus Sellin
bacb73667a
feat: add UI to variant metrics (#3697) 2023-05-08 10:15:26 +00:00
andreas-unleash
83bb9b1656
Feat: enable toggle dialog (#3686)
<!-- Thanks for creating a PR! To make it easier for reviewers and
everyone else to understand what your changes relate to, please add some
relevant content to the headings below. Feel free to ignore or delete
sections that you don't think are relevant. Thank you! ❤️ -->
- Creates a dialog when the feature has ONLY disabled strategies and the
environment in turned on
- Adds functionality to either `enable` the strategies or add the
default one (if a project specific default strategy is set, uses it)
## About the changes
<!-- Describe the changes introduced. What are they and why are they
being introduced? Feel free to also add screenshots or steps to view the
changes if they're visual. -->

<!-- Does it close an issue? Multiple? -->



Uploading Screen Recording 2023-05-05 at 17.40.48.mov…



Closes #

<!-- (For internal contributors): Does it relate to an issue on public
roadmap? -->
<!--
Relates to [roadmap](https://github.com/orgs/Unleash/projects/10) item:
#
-->

### Important files
<!-- PRs can contain a lot of changes, but not all changes are equally
important. Where should a reviewer start looking to get an overview of
the changes? Are any files particularly important? -->


## Discussion points
<!-- Anything about the PR you'd like to discuss before it gets merged?
Got any questions or doubts? -->

---------

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2023-05-08 11:42:26 +03:00
Nuno Góis
edefa6fc7e
test: add interactive demo guide e2e test (#3656)
This PR revamps e2e tests, while adding a new one for the interactive
demo guide:
 - Bumps Cypress from `9.7.0` to `12.11.0`;
 - Bumps Cypress GH action from `v2` to `v5`;
 - Makes any adjustments needed;
 - Fixes a lot of issues identified with existing tests;
- Adds new `demo.spec.ts` e2e test that covers the entire demo guide
flow;

**Note:** Currently does not include `demo.spec.ts` in the GH action, as
it
[fails](https://github.com/Unleash/unleash/actions/runs/4896839575/jobs/8744137231?pr=3656)
on step 2.13 (last step of "user-specific" topic). It runs perfectly
fine locally, though.

Might be placebo, but in general tests seem less flaky now and they may
even be faster (especially when not adding the `demo` one, which would
always take a long time).
2023-05-08 09:16:18 +01:00
andreas-unleash
a8936a13c3
Feat: default strategy UI (#3682)
<!-- Thanks for creating a PR! To make it easier for reviewers and
everyone else to understand what your changes relate to, please add some
relevant content to the headings below. Feel free to ignore or delete
sections that you don't think are relevant. Thank you! ❤️ -->
- Removed `strategyTitle` and `strategyDisable` flags. Unified under
`strategyImprovements` flag
- Implements the default strategy UI
- Bug fixes

## About the changes
<!-- Describe the changes introduced. What are they and why are they
being introduced? Feel free to also add screenshots or steps to view the
changes if they're visual. -->

<!-- Does it close an issue? Multiple? -->
Closes #
[1-875](https://linear.app/unleash/issue/1-875/default-strategy-frontend)

<!-- (For internal contributors): Does it relate to an issue on public
roadmap? -->
<!--
Relates to [roadmap](https://github.com/orgs/Unleash/projects/10) item:
#
-->
![Screenshot 2023-05-04 at 11 21
05](https://user-images.githubusercontent.com/104830839/236149232-84601829-1327-42af-9527-5cc15196517a.png)

### Important files
<!-- PRs can contain a lot of changes, but not all changes are equally
important. Where should a reviewer start looking to get an overview of
the changes? Are any files particularly important? -->


## Discussion points
<!-- Anything about the PR you'd like to discuss before it gets merged?
Got any questions or doubts? -->

---------

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2023-05-05 14:32:44 +03:00
Jaanus Sellin
50fe3ebcaf
feat: metrics for variants (#3685) 2023-05-05 11:10:54 +03:00
Nuno Góis
710b2a6d5e
feat: demo guide improvements (#3676)
https://linear.app/unleash/issue/2-986/feedback-from-sebastian

Implements the items mentioned in the task:
 - Refactors logic to track completion separately;
- When finishing a topic, jumps to the next unfinished topic it can
find;
- Shows the finish dialog when finishing a topic, as long as completion
is 100%;
- Changes the guide overlay behavior and implements the necessary
changes to adapt to light and dark mode;
- Fixes an issue where some guide dialogs would close when clicking
outside;
- Added a final "toggle" step for each topic (still needs alignment,
different task);
- Improve navigation logic to hopefully fix the feature toggle name
sorting;


![image](https://user-images.githubusercontent.com/14320932/236003007-6e441acc-f933-4eb0-93a4-4b6c15a45b96.png)

Relates to [roadmap](https://github.com/orgs/Unleash/projects/10) item:
#3537
2023-05-03 21:47:35 +03:00
Nuno Góis
2e1064b1f7
feat: demo sorts features by name (#3663)
https://linear.app/unleash/issue/2-983/can-we-we-reverse-order-of-the-toggles

This PR makes it so that, on topic navigation to the project overview
page, we assume a feature toggle name sorting by default:


![image](https://user-images.githubusercontent.com/14320932/235666804-94511704-010d-4173-809b-0c61252b02d6.png)

Relates to [roadmap](https://github.com/orgs/Unleash/projects/10) item:
#3537
2023-05-02 16:20:23 +03:00
andreas-unleash
e61c4524b0
fix: fix broken ImportOptions.tsx (#3657)
<!-- Thanks for creating a PR! To make it easier for reviewers and
everyone else to understand what your changes relate to, please add some
relevant content to the headings below. Feel free to ignore or delete
sections that you don't think are relevant. Thank you! ❤️ -->
Fixes ImportOptions.tsx

## About the changes
<!-- Describe the changes introduced. What are they and why are they
being introduced? Feel free to also add screenshots or steps to view the
changes if they're visual. -->

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

<!-- (For internal contributors): Does it relate to an issue on public
roadmap? -->
<!--
Relates to [roadmap](https://github.com/orgs/Unleash/projects/10) item:
#
-->

### Important files
<!-- PRs can contain a lot of changes, but not all changes are equally
important. Where should a reviewer start looking to get an overview of
the changes? Are any files particularly important? -->


## Discussion points
<!-- Anything about the PR you'd like to discuss before it gets merged?
Got any questions or doubts? -->

---------

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
Co-authored-by: Prabodh Meshram <prabodh.meshram7@gmail.com>
2023-05-02 10:17:05 +03:00
Mateusz Kwasniewski
be55961e6f
feat: Footer sdks (#3654) 2023-04-28 15:56:35 +02:00
andreas-unleash
1ccbbfeb57
Feat: project default strategy (#3644)
<!-- Thanks for creating a PR! To make it easier for reviewers and
everyone else to understand what your changes relate to, please add some
relevant content to the headings below. Feel free to ignore or delete
sections that you don't think are relevant. Thank you! ❤️ -->

Adds default strategy to project environment link table

## About the changes
<!-- Describe the changes introduced. What are they and why are they
being introduced? Feel free to also add screenshots or steps to view the
changes if they're visual. -->

<!-- Does it close an issue? Multiple? -->
Closes #
[1-876](https://linear.app/unleash/issue/1-876/default-strategy-backend)

<!-- (For internal contributors): Does it relate to an issue on public
roadmap? -->
<!--
Relates to [roadmap](https://github.com/orgs/Unleash/projects/10) item:
#
-->

### Important files
<!-- PRs can contain a lot of changes, but not all changes are equally
important. Where should a reviewer start looking to get an overview of
the changes? Are any files particularly important? -->


## Discussion points
<!-- Anything about the PR you'd like to discuss before it gets merged?
Got any questions or doubts? -->

---------

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2023-04-28 14:59:04 +03:00
Nuno Góis
9df9095b1f
feat: demo small UI adjustments (#3653)
https://linear.app/unleash/issue/2-975/small-ui-adjustments

Adds some small UI adjustments we identified in the meantime:
 - "Get Unleash" -> "Get started" in the top banner;
 - Topics list header is now the same color as the top banner;
- Added `focus` capabilities to steps, added it to the appropriate
steps;
 - No longer closes tooltip when clicked when using `anyClick`;
 - Reversed the topics list header arrow rotation;

Relates to [roadmap](https://github.com/orgs/Unleash/projects/10) item:
#3537


![image](https://user-images.githubusercontent.com/14320932/235139390-a40db29d-befe-44f9-9f61-a0ad120b7251.png)
2023-04-28 11:54:58 +00:00
Mateusz Kwasniewski
c8bce08e94
feat: remove project overview flag (#3648) 2023-04-28 12:25:59 +02:00
Jaanus Sellin
383aa3dde4
feat: remove bulk operations flag (#3643) 2023-04-28 11:18:03 +03:00
Nuno Góis
3c48171c78
feat: add user tracking to demo (#3637)
https://linear.app/unleash/issue/2-946/explore-and-implement-options-for-user-tracking

Adds user tracking to the interactive demo, so we can measure how users
are using this feature and improve it in the feature.

## Events

- **start** - When the user starts the demo by clicking on the "Try
Unleash Demo" button;
- **finish** - When the user finishes the demo by seeing the "You
finished the demo" dialog;
- **restart** - When the user decides to restart the demo on the "You
finished the demo" dialog;
- **close** - When the user closes a demo dialog;
- **topic** - In what topic this happened (topic title, can also be
`start` if user closes on the start dialog);
- **step** - In what step this happened (step number, `1` would mean
first step);
- **start_topic** - When the user decides to start a specific topic by
clicking it in the list;
  - **topic** - What topic was clicked (topic title);
- **ask_questions** - When the user decides to ask questions by clicking
the appropriate option in the top banner;
- **see_plans** - When the user decides to see the plans by clicking the
appropriate option in the top banner;
- **plan** - What plan was clicked (one of: `open_source`, `pro`,
`enterprise` or `compare_plans`);
- **open_demo_web** - User decided to open the demo website using the
link on the start dialog;
- **view_demo_link** - User decided to open the start dialog again on
the bottom of the topics list;

Relates to [roadmap](https://github.com/orgs/Unleash/projects/10) item:
#3537
2023-04-27 14:12:02 +01:00
Nuno Góis
3599e7478c
feat: demo ui-ux improvements (#3634)
https://linear.app/unleash/issue/2-914/improve-demo-guide-uiux

Includes a big batch of UI/UX improvements, including but not limited
to:

- Updating steps text;
- Improve behavior of intro step dialogs (use normal dialogs);
- Improve overall design;
- Improve escape key and backdrop click behaviors;
- Add plans dialog;
- Add sticky demo banner;
- Assume `demo-app` project and `dev` environment to better fit our demo
instance;
- Misc fixes and refactors;

Relates to [roadmap](https://github.com/orgs/Unleash/projects/10) item:
#3537


![image](https://user-images.githubusercontent.com/14320932/234637210-1936fd48-ce40-4980-81ae-f1fe64e65545.png)
2023-04-27 08:15:17 +01:00
andreas-unleash
2667e55d4a
chore: remove projectScopedStickinessFlag (#3620)
<!-- Thanks for creating a PR! To make it easier for reviewers and
everyone else to understand what your changes relate to, please add some
relevant content to the headings below. Feel free to ignore or delete
sections that you don't think are relevant. Thank you! ❤️ -->

## About the changes
<!-- Describe the changes introduced. What are they and why are they
being introduced? Feel free to also add screenshots or steps to view the
changes if they're visual. -->

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

<!-- (For internal contributors): Does it relate to an issue on public
roadmap? -->
<!--
Relates to [roadmap](https://github.com/orgs/Unleash/projects/10) item:
#
-->

### Important files
<!-- PRs can contain a lot of changes, but not all changes are equally
important. Where should a reviewer start looking to get an overview of
the changes? Are any files particularly important? -->


## Discussion points
<!-- Anything about the PR you'd like to discuss before it gets merged?
Got any questions or doubts? -->

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2023-04-26 17:07:09 +03:00
Tymoteusz Czech
3bb09c5ce4
Disable and enable strategies - frontend (#3582)
Signed-off-by: andreas-unleash <andreas@getunleash.ai>
Co-authored-by: andreas-unleash <andreas@getunleash.ai>
2023-04-26 11:41:24 +02:00
Simon Hornby
9521c452c5
chore: move google auth ui behind flag (#3606)
Moves the access tab for Google Auth behind a flag. The elements
are still accessible but hidden by default so this is a soft change.
This is a deprecated feature and is on its way out.
2023-04-26 10:55:55 +02:00
Mateusz Kwasniewski
e538cb8a7f
fix: add segment to strategy payload (#3611) 2023-04-25 10:57:53 +02:00
Mateusz Kwasniewski
545e231cae
feat: enable dark mode for all (#3614) 2023-04-25 10:13:06 +02:00
Mateusz Kwasniewski
abd19d46e7
feat: search cr by title (#3610) 2023-04-25 08:36:27 +02:00
Jaanus Sellin
514961632f
feat: edit change requests (#3573) 2023-04-24 15:32:19 +02:00
Nuno Góis
697fb6aab5
feat: update the user-specific topic (#3608)
https://linear.app/unleash/issue/2-961/update-demo-guide-steps-to-not-include-a-userids-strategy

Updates the user-specific toggle topic to use a standard strategy with a
constraint instead (deprecate UserID strategy).

Relates to [roadmap](https://github.com/orgs/Unleash/projects/10) item:
#3537

<img width="1282" alt="image"
src="https://user-images.githubusercontent.com/14320932/233987506-380d89e3-bd5d-461d-a5dc-89e54ad21d88.png">
2023-04-24 13:02:06 +01:00
Nuno Góis
2129736ca6
chore: make login history GA (remove flag) (#3604)
https://linear.app/unleash/issue/2-956/remove-loginhistory-feature-flag

Promotes [login
history](https://docs.getunleash.io/reference/login-history) to GA by
removing the `loginHistory` feature flag.
2023-04-24 12:37:13 +01:00
andreas-unleash
f9b8abfe34
fix: override built in stickiness options (#3563)
<!-- Thanks for creating a PR! To make it easier for reviewers and
everyone else to understand what your changes relate to, please add some
relevant content to the headings below. Feel free to ignore or delete
sections that you don't think are relevant. Thank you! ❤️ -->
Created migration for updating context fields
Context fields with stickiness are now the source of truth for
stickiness options.

## About the changes
`userId` context field is updated to have stickiness on by default
`sessionId` context field is added with stickiness on by default
If `default` or `random` are not part of the context field - we add them
This will allow for the option to disable them, by creating a eg.
`random` context field with stickiness off


https://user-images.githubusercontent.com/104830839/233581147-9a514af4-1fdd-4c2e-b954-3cfa13b1a203.mov



<!-- Describe the changes introduced. What are they and why are they
being introduced? Feel free to also add screenshots or steps to view the
changes if they're visual. -->

<!-- Does it close an issue? Multiple? -->
Closes to #
[1-794](https://linear.app/unleash/issue/1-794/reach-out-to-yousician-for-early-beta-test)

<!-- (For internal contributors): Does it relate to an issue on public
roadmap? -->
<!--
Relates to [roadmap](https://github.com/orgs/Unleash/projects/10) item:
#
-->

### Important files
<!-- PRs can contain a lot of changes, but not all changes are equally
important. Where should a reviewer start looking to get an overview of
the changes? Are any files particularly important? -->


## Discussion points
<!-- Anything about the PR you'd like to discuss before it gets merged?
Got any questions or doubts? -->

---------

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2023-04-21 17:13:42 +03:00
Nuno Góis
0b4df3f53c
feat: add demo guide finish dialog (#3578)
https://linear.app/unleash/issue/2-925/add-final-tutorial-complete-dialog

Adds the finish dialog, similar to
https://github.com/Unleash/unleash/pull/3574

Also includes some fixes and improvements identified in the meantime.

Relates to [roadmap](https://github.com/orgs/Unleash/projects/10) item:
#3537


![image](https://user-images.githubusercontent.com/14320932/233421564-447c559b-db70-4f72-a1d2-b6b5bef3707f.png)

---------

Co-authored-by: Gastón Fournier <gaston@getunleash.io>
2023-04-21 11:48:44 +01:00
Gastón Fournier
4dd4d43cce
chore: remove deprecated strategies and allow deprecate default (#3575)
## About the changes
Improvements around strategies to steer users toward using [strategy
constraints](https://docs.getunleash.io/reference/strategy-constraints)
instead of [custom
strategies](https://docs.getunleash.io/reference/custom-activation-strategies)


Related to #1265 

Important changes:
1.[ Ability to deprecate default
strategy](https://github.com/Unleash/unleash/pull/3575/files#diff-3b49e566565b01580ff7a15f662d2cb824547fdfb3935d0a0baa7fae326d28d6L232-L235)
2. [Remove strategies that were deprecated in v4 only if they're not
used](https://github.com/Unleash/unleash/pull/3575/files#diff-a04de7adf327c48d54b030bed70d9b1d62ff14df3efc668eb6897a210124ebe0R7-R10)
3. [Fresh Unleash installations will not include deprecated strategies
from
v4](https://github.com/Unleash/unleash/pull/3575/files#diff-46265b0d51725a5acbf251589b98a8970e45d3a1c6f3d7ea77bdcc3714e672d8L31-L78)
4. [Deprecate userWithId
strategy](https://github.com/Unleash/unleash/pull/3575/files#diff-a04de7adf327c48d54b030bed70d9b1d62ff14df3efc668eb6897a210124ebe0R13)
(note: if in use it will continue to work, it'll be not listed when
selecting strategies for a feature toggle).
5. [Switch the order of strategies to make gradual rollout first and
change the comment to suggest using gradual rollout instead of other
existing
strategies](https://github.com/Unleash/unleash/pull/3575/files#diff-a04de7adf327c48d54b030bed70d9b1d62ff14df3efc668eb6897a210124ebe0R16-R18)
2023-04-21 11:42:36 +02:00
Gastón Fournier
ab4a6f5c92
chore: GA project specific segments (#3583)
## About the changes
General availability of project-specific segments 

Now new permissions can be assigned to non-admin users to allow them to
create segments specifically bounded to a project (note that unique
naming restriction applies across projects, this limitation can be
lifted later).

![image](https://user-images.githubusercontent.com/455064/233579161-40ab25c5-a306-4fbc-82e5-8d09b3cb6a5f.png)

This enables a section in the project configuration to add
project-specific segments

![image](https://user-images.githubusercontent.com/455064/233578924-7056c626-ff1f-4dad-b00c-7fbd851158a6.png)
2023-04-21 10:25:40 +02:00
Nuno Góis
2cf6e689ee
feat: add demo guide welcome dialog (#3574)
https://linear.app/unleash/issue/2-923/add-initial-getting-started-dialog

Adds the welcome dialog with the static QR code pointing to our demo
website. Also changes how the run logic works a bit, so that we have
better control over it (only start demo steps once we click the start
button, etc).

Relates to [roadmap](https://github.com/orgs/Unleash/projects/10) item:
#3537


![image](https://user-images.githubusercontent.com/14320932/233395897-133edc18-371f-424f-a276-9ca0c9ec5b49.png)
2023-04-20 16:32:26 +01:00
Simon Hornby
3b42e866ec
feat: root roles from groups (#3559)
feat: adds a way to specify a root role on a group, which will cause any user entering into that group to take on the permissions of that root role

Co-authored-by: Nuno Góis <github@nunogois.com>
2023-04-20 12:29:30 +02:00
Nuno Góis
58fb1a21fd
feat: implement demo guide steps (#3569)
https://linear.app/unleash/issue/2-924/implement-the-guide-steps

While https://github.com/Unleash/unleash/pull/3528 implemented the basic
guide logic with some example steps, this PR adds the guide steps as per
the current demo, along with any necessary changes and features that
were needed to accomplish this.

Relates to [roadmap](https://github.com/orgs/Unleash/projects/10) item:
#3537


https://user-images.githubusercontent.com/14320932/233133252-a3790f11-ec5d-4ee3-952d-88348212bd3c.mp4
2023-04-19 19:40:29 +01:00
Tymoteusz Czech
169b2bd0c5
Strategy title frontend (#3556)
Ability to add a title to a strategy
2023-04-19 17:27:23 +00:00
Jaanus Sellin
592b40f8c0
feat: deletion confirmation spelling (#3548) 2023-04-18 17:10:34 +02:00
Nuno Góis
6c79c790a9
feat: implement demo guide steps logic (#3528)
https://linear.app/unleash/issue/2-915/implement-guide-steps-logic


https://user-images.githubusercontent.com/14320932/232099388-a8138b29-8256-4ed2-b8f4-f7607cf3ab9c.mp4

See discussion for context:
https://unleash-internal.slack.com/archives/C046LV85N3C/p1681723816687779?thread_ts=1681488537.345059&cid=C046LV85N3C

Relates to [roadmap](https://github.com/orgs/Unleash/projects/10) item:
#3537
2023-04-18 10:56:15 +01:00
Christopher Kolstad
867a514d1f
feat: Added configurable signing algorithm to OIDC configuration (#3522)
We've had requests from customers that use RS512 as the default signing
algorithm in their OIDC server deployment. This PR adds that as a config
variable to the OIDC form.
2023-04-18 10:42:32 +02:00
Jaanus Sellin
56f09ce392
feat: list affected features (#3534) 2023-04-17 16:03:59 +03:00
Mateusz Kwasniewski
5fa13aba0e
feat: remove project overview flags (#3532) 2023-04-17 11:21:52 +02:00
Mateusz Kwasniewski
c270344cff
feat: visualize adding a default strategy (#3521) 2023-04-14 12:33:04 +02:00
Jaanus Sellin
5dd5b4f614
feat: linkify comments (#3517) 2023-04-13 15:48:03 +03:00
Jaanus Sellin
6874df66f0
feat: cr overview title (#3516) 2023-04-13 15:33:37 +03:00
Nuno Góis
d2da6de7d5
feat: adds demo feature flag (#3514)
https://linear.app/unleash/issue/2-912/create-demo-feature-flag

Adds `demo` as a feature flag that controls the new interactive demo
feature.
2023-04-13 12:06:00 +01:00
Jaanus Sellin
353cb8c05d
feat: CR title from review page (#3509) 2023-04-13 12:24:31 +03:00
andreas-unleash
60a2c1a996
chore: Backport 4.22.3 (#3508)
<!-- Thanks for creating a PR! To make it easier for reviewers and
everyone else to understand what your changes relate to, please add some
relevant content to the headings below. Feel free to ignore or delete
sections that you don't think are relevant. Thank you! ❤️ -->
Backports stickiness fixes 
## About the changes
<!-- Describe the changes introduced. What are they and why are they
being introduced? Feel free to also add screenshots or steps to view the
changes if they're visual. -->

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

<!-- (For internal contributors): Does it relate to an issue on public
roadmap? -->
<!--
Relates to [roadmap](https://github.com/orgs/Unleash/projects/10) item:
#
-->

### Important files
<!-- PRs can contain a lot of changes, but not all changes are equally
important. Where should a reviewer start looking to get an overview of
the changes? Are any files particularly important? -->


## Discussion points
<!-- Anything about the PR you'd like to discuss before it gets merged?
Got any questions or doubts? -->

---------

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
Co-authored-by: Gastón Fournier <gaston@getunleash.io>
Co-authored-by: GitHub Actions Bot <>
Co-authored-by: Mateusz Kwasniewski <kwasniewski.mateusz@gmail.com>
2023-04-12 16:22:13 +03:00
Jaanus Sellin
427030c390
feat: add username to CR overview and list (#3498) 2023-04-12 09:43:05 +03:00
Mateusz Kwasniewski
3b1157b869
feat: skip change request in UI (#3495) 2023-04-11 14:47:54 +02:00
Jaanus Sellin
ac04f4331f
feat: add comment when submitting CR (#3489) 2023-04-11 10:20:10 +03:00
Tymoteusz Czech
8f278cb726
Fix: feature schema (#3456) 2023-04-07 09:16:00 +00:00
Tymoteusz Czech
b20ac68605
fix: media query issue in feedback modal (#3470) 2023-04-07 11:10:14 +02:00
Tymoteusz Czech
e864657ef8
fix: bulk update delete flag (#3466)
Allow deleting with BULK_UPDATE flag turned off
2023-04-06 20:50:19 +03:00
Jaanus Sellin
33487d11b9
feat: authorization middleware (#3464) 2023-04-06 11:46:54 +02:00
andreas-unleash
c6ba6059cc
fix: reset stickiness to default on variants modal close (#3455)
<!-- Thanks for creating a PR! To make it easier for reviewers and
everyone else to understand what your changes relate to, please add some
relevant content to the headings below. Feel free to ignore or delete
sections that you don't think are relevant. Thank you! ❤️ -->
Expanded the onClose handler to reset stickiness to default for project
on modal close
## About the changes
<!-- Describe the changes introduced. What are they and why are they
being introduced? Feel free to also add screenshots or steps to view the
changes if they're visual. -->

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

<!-- (For internal contributors): Does it relate to an issue on public
roadmap? -->
<!--
Relates to [roadmap](https://github.com/orgs/Unleash/projects/10) item:
#
-->

### Important files
<!-- PRs can contain a lot of changes, but not all changes are equally
important. Where should a reviewer start looking to get an overview of
the changes? Are any files particularly important? -->


## Discussion points
<!-- Anything about the PR you'd like to discuss before it gets merged?
Got any questions or doubts? -->

---------

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2023-04-05 14:20:58 +03:00
Gastón Fournier
0e37e68424
feat: add PAT kill switch (#3454)
## Add the ability to disable Personal Access Tokens (PAT) admin API

This PR disables PAT admin endpoints so it's not possible to create or
get PATs the kill switch is enabled, the UI is hidden but the existing
PATs will continue to work if they were created before. The delete
endpoint still works allowing an admin to delete old PATs

By default the kill switch is disabled (i.e. PAT is enabled by default)
2023-04-05 10:20:50 +02:00
Mateusz Kwasniewski
3912b57b09
feat: remove project mode flag (#3438) 2023-04-04 13:28:59 +02:00
andreas-unleash
99c555bf59
chore: refactor Cypress tests (#3445)
Adds proper typescript support.
Created reusable commands
Added README for cypress test
Refactored tests
Fixed bugs as I found them.
<!-- Thanks for creating a PR! To make it easier for reviewers and
everyone else to understand what your changes relate to, please add some
relevant content to the headings below. Feel free to ignore or delete
sections that you don't think are relevant. Thank you! ❤️ -->

## About the changes
<!-- Describe the changes introduced. What are they and why are they
being introduced? Feel free to also add screenshots or steps to view the
changes if they're visual. -->

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

<!-- (For internal contributors): Does it relate to an issue on public
roadmap? -->
<!--
Relates to [roadmap](https://github.com/orgs/Unleash/projects/10) item:
#
-->

### Important files
<!-- PRs can contain a lot of changes, but not all changes are equally
important. Where should a reviewer start looking to get an overview of
the changes? Are any files particularly important? -->


## Discussion points
<!-- Anything about the PR you'd like to discuss before it gets merged?
Got any questions or doubts? -->

---------

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2023-04-04 11:46:28 +03:00
Nuno Góis
e903a3ae89
fix: proper check for billing seats on user creation (#3432)
https://unleash-community.slack.com/archives/C033ES94QMT/p1680236503981349
Fixes the user creation extra seat billing alert to only show when the
total users exceed the number of free seats.
2023-03-31 13:37:33 +03:00
Nuno Góis
2e6b6cd354
fix: dark theme UI fixes (#3423)
https://linear.app/unleash/issue/2-849/dark-mode-ui-fixes


![image](https://user-images.githubusercontent.com/14320932/228607663-fd474e42-b23d-4fc2-a083-d42b87332399.png)


![image](https://user-images.githubusercontent.com/14320932/228607757-bf53d67b-8ef1-4aba-bcc1-f2c6b9cc56a2.png)


![image](https://user-images.githubusercontent.com/14320932/228607875-5bfaeb46-e37c-41d3-941f-bc89e10ad43f.png)

Also includes misc UI fixes and improvements we identified along the
way.

Co-authored by @NicolaeUnleash

---------

Co-authored-by: NicolaeUnleash <103567375+NicolaeUnleash@users.noreply.github.com>
2023-03-30 16:57:35 +01:00
andreas-unleash
87c1407923
chore: remove showProjectApiAccess flag (#3406)
<!-- Thanks for creating a PR! To make it easier for reviewers and
everyone else to understand what your changes relate to, please add some
relevant content to the headings below. Feel free to ignore or delete
sections that you don't think are relevant. Thank you! ❤️ -->

Remove `showProjectApiAccess` flag

## About the changes
<!-- Describe the changes introduced. What are they and why are they
being introduced? Feel free to also add screenshots or steps to view the
changes if they're visual. -->

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

<!-- (For internal contributors): Does it relate to an issue on public
roadmap? -->
<!--
Relates to [roadmap](https://github.com/orgs/Unleash/projects/10) item:
#
-->

### Important files
<!-- PRs can contain a lot of changes, but not all changes are equally
important. Where should a reviewer start looking to get an overview of
the changes? Are any files particularly important? -->


## Discussion points
<!-- Anything about the PR you'd like to discuss before it gets merged?
Got any questions or doubts? -->

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2023-03-30 10:22:45 +03:00
Tymoteusz Czech
f124997485
E2E test - batch updates (#3392) 2023-03-29 14:47:12 +03:00
andreas-unleash
9b6f5cd198
fix: make api tokens ui consistent and remove check for deprecated envs. (#3410)
<!-- Thanks for creating a PR! To make it easier for reviewers and
everyone else to understand what your changes relate to, please add some
relevant content to the headings below. Feel free to ignore or delete
sections that you don't think are relevant. Thank you! ❤️ -->

This PR removes the check for deprecated environments when validating
api token environment.

Unifies global and project level tokens allow selection of deprecated
environments when creating an api token

Adds 'deprecated' to the EnvironmentSelector when appropriate

## About the changes
<!-- Describe the changes introduced. What are they and why are they
being introduced? Feel free to also add screenshots or steps to view the
changes if they're visual. -->

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

<!-- (For internal contributors): Does it relate to an issue on public
roadmap? -->
<!--
Relates to [roadmap](https://github.com/orgs/Unleash/projects/10) item:
#
-->

### Important files
<!-- PRs can contain a lot of changes, but not all changes are equally
important. Where should a reviewer start looking to get an overview of
the changes? Are any files particularly important? -->


## Discussion points
<!-- Anything about the PR you'd like to discuss before it gets merged?
Got any questions or doubts? -->

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2023-03-29 10:33:14 +03:00
Jaanus Sellin
7af5023511
fix: add export button behind flag (#3416) 2023-03-29 10:02:44 +03:00
Jaanus Sellin
99bcd7ca5c
feat: add import export flag (#3411) 2023-03-29 09:19:33 +03:00
Nuno Góis
9e178de570
fix: update route modes (#3412)
Follow up to https://github.com/Unleash/unleash/pull/3409:
`Login history` and `Project roles` are also Enterprise features.
2023-03-28 20:14:57 +01:00
andreas-unleash
0d68febdf7
Fix: make stickiness accept any string (#3408)
<!-- Thanks for creating a PR! To make it easier for reviewers and
everyone else to understand what your changes relate to, please add some
relevant content to the headings below. Feel free to ignore or delete
sections that you don't think are relevant. Thank you! ❤️ -->
Changes the schema and api to accept any string for defaultStickiness
## About the changes
<!-- Describe the changes introduced. What are they and why are they
being introduced? Feel free to also add screenshots or steps to view the
changes if they're visual. -->

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

<!-- (For internal contributors): Does it relate to an issue on public
roadmap? -->
<!--
Relates to [roadmap](https://github.com/orgs/Unleash/projects/10) item:
#
-->

### Important files
<!-- PRs can contain a lot of changes, but not all changes are equally
important. Where should a reviewer start looking to get an overview of
the changes? Are any files particularly important? -->


## Discussion points
<!-- Anything about the PR you'd like to discuss before it gets merged?
Got any questions or doubts? -->

---------

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2023-03-28 16:42:16 +03:00
Mateusz Kwasniewski
39acf9f104
fix: hide pro routes (#3409) 2023-03-28 15:12:24 +02:00
Mateusz Kwasniewski
f09565f38f
feat: disable apply button on loading (#3404) 2023-03-28 13:13:51 +02:00
Jaanus Sellin
e9271d8eec
fix: notifcations word break (#3403) 2023-03-28 13:27:47 +03:00
andreas-unleash
6037542fc0
fix: Make api token environment selector accept environments (#3379)
<!-- Thanks for creating a PR! To make it easier for reviewers and
everyone else to understand what your changes relate to, please add some
relevant content to the headings below. Feel free to ignore or delete
sections that you don't think are relevant. Thank you! ❤️ -->
Makes the api token environment selector accept options to allow
different environment to be passed in according to the use case ie use
all envs when creating api tokens and use project envs when creating
project scoped tokens
## About the changes
<!-- Describe the changes introduced. What are they and why are they
being introduced? Feel free to also add screenshots or steps to view the
changes if they're visual. -->

<!-- Does it close an issue? Multiple? -->
Closes [#
1-811](https://linear.app/unleash/issue/1-811/change-environment-dropdown-to-show-all-environments-enabled-for-the)

<!-- (For internal contributors): Does it relate to an issue on public
roadmap? -->
<!--
Relates to [roadmap](https://github.com/orgs/Unleash/projects/10) item:
#
-->

### Important files
<!-- PRs can contain a lot of changes, but not all changes are equally
important. Where should a reviewer start looking to get an overview of
the changes? Are any files particularly important? -->


## Discussion points
<!-- Anything about the PR you'd like to discuss before it gets merged?
Got any questions or doubts? -->

---------

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2023-03-28 13:11:07 +03:00
Mateusz Kwasniewski
3b311f74c0
feat: stop change project on change request enabled (#3391) 2023-03-28 11:28:22 +02:00
Fredrik Strand Oseberg
a98bfb2229
fix: remove notification feature flag from oss (#3390)
Removes the notifications feature flag
2023-03-27 16:08:27 +02:00
Mateusz Kwasniewski
2caab45801
feat: disallow clone toggle on change request enabled (#3383) 2023-03-27 13:21:50 +02:00
Mateusz Kwasniewski
a1535aed91
fix: error boundary plausible (#3389) 2023-03-27 13:17:37 +02:00
Mateusz Kwasniewski
9abe859e60
chore: remove export import flag (#3371) 2023-03-27 12:31:19 +02:00
NicolaeUnleash
3e602ceed5
fix: header-responsiveness (#3381)
- when introducing dark mode icon in the header, on tablet the menu
items don't have enough space anymore, and this fix it

- fixing also the color for dark mode of the keyboard nav button "skip
to content"
2023-03-24 15:51:28 +02:00
andreas-unleash
f4e0c9a905
fix: settings endpoint add basePath (#3377)
<!-- Thanks for creating a PR! To make it easier for reviewers and
everyone else to understand what your changes relate to, please add some
relevant content to the headings below. Feel free to ignore or delete
sections that you don't think are relevant. Thank you! ❤️ -->
Fix missing basePath for project settings endpoint
## About the changes
<!-- Describe the changes introduced. What are they and why are they
being introduced? Feel free to also add screenshots or steps to view the
changes if they're visual. -->

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

<!-- (For internal contributors): Does it relate to an issue on public
roadmap? -->
<!--
Relates to [roadmap](https://github.com/orgs/Unleash/projects/10) item:
#
-->

### Important files
<!-- PRs can contain a lot of changes, but not all changes are equally
important. Where should a reviewer start looking to get an overview of
the changes? Are any files particularly important? -->


## Discussion points
<!-- Anything about the PR you'd like to discuss before it gets merged?
Got any questions or doubts? -->

---------

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2023-03-23 16:13:28 +02:00
Jaanus Sellin
117c31791d
fix: fix transparancy of sticky component (#3376) 2023-03-23 11:57:21 +00:00
Thomas Heartman
e9c2a332b6
Add collab mode docs to side bar + fix casing inconsistency in tooltip (#3375)
This change does two things:

- Adds project collaboration mode docs to the sidebar
- Fixes a casing inconsistency in the collaboration mode tooltip:
previously, one of the explanations started with a lowercase character
and the other with an uppercase character. Now they both start with
lowercase characters.
2023-03-23 10:27:54 +00:00
andreas-unleash
a1952aca9d
Feat: plausible tracking stickiness (#3363)
<!-- Thanks for creating a PR! To make it easier for reviewers and
everyone else to understand what your changes relate to, please add some
relevant content to the headings below. Feel free to ignore or delete
sections that you don't think are relevant. Thank you! ❤️ -->

Adds plausible tracking when default project stickiness is changed

## About the changes
<!-- Describe the changes introduced. What are they and why are they
being introduced? Feel free to also add screenshots or steps to view the
changes if they're visual. -->

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

<!-- (For internal contributors): Does it relate to an issue on public
roadmap? -->
<!--
Relates to [roadmap](https://github.com/orgs/Unleash/projects/10) item:
#
-->

### Important files
<!-- PRs can contain a lot of changes, but not all changes are equally
important. Where should a reviewer start looking to get an overview of
the changes? Are any files particularly important? -->


## Discussion points
<!-- Anything about the PR you'd like to discuss before it gets merged?
Got any questions or doubts? -->

---------

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2023-03-22 20:04:02 +02:00
Nuno Góis
e0d2536d6f
feat: dark mode switch (#3370)
https://linear.app/unleash/issue/1-802/replace-the-dark-mode-switch

<img width="221" alt="image"
src="https://user-images.githubusercontent.com/14320932/226900284-642f5f0d-5f10-47a5-92cc-080bddbcbfc1.png">
<img width="159" alt="image"
src="https://user-images.githubusercontent.com/14320932/226900684-13a044a3-4a18-41fc-bc76-f4f34a911a53.png">

**Note**: The second screenshot does not show the dark theme because
that's part of https://github.com/Unleash/unleash/pull/3298

Improves the dark mode switch to be a simple IconButton that acts as a
flip switch.
2023-03-22 14:39:02 +00:00
NicolaeUnleash
705462f0cf
feat: dark theme v1 (#3298)
## About the changes

Creating the first version of the Dark theme

Refactor: colors variables
Refactor: use theme variable instead 
- this change will help us to use MuiCssBaseline, and we can use classes
directly for easy customization when we can't identify MUI classes

Refactor: adjusting some files components
- i’ve touched also the structure of some files, not only the colors
variables (but only to adjust the style, not functionality)

Fix: dark mode persistence on refresh (by Nuno)

Feat: dark mode sees light logos, and light mode sees dark logos (by
Nuno)

---------

Co-authored-by: Nuno Góis <github@nunogois.com>
2023-03-22 16:37:40 +02:00
Tymoteusz Czech
5585a9bed0
Sticky batch actions bar (#3366) 2023-03-22 13:15:53 +01:00
Mateusz Kwasniewski
e03307e286
docs: Project collaboration mode docs (#3360) 2023-03-22 13:13:56 +01:00
Jaanus Sellin
55f8d5b09e
feat: batch operatsion plausible events (#3367) 2023-03-22 13:46:16 +02:00
Nuno Góis
6c697615dc
fix: revert overflow hidden in section, unset in modal (#3364)
This reverts and adapts
https://github.com/Unleash/unleash/pull/3307/files#r1135784293 -
Apparently it broke the form border radius when not in modal mode.

This change makes it so that we have `overflow: hidden` in most cases
but `overflow: unset` when using `FormTemplate` as a modal, effectively
covering both use cases.

Normal:

![image](https://user-images.githubusercontent.com/14320932/226637777-cc8dba05-4447-4bee-b517-59d4e1dc1923.png)

Modal (`position: sticky` header in variants still works correctly):

![image](https://user-images.githubusercontent.com/14320932/226637986-bb744c3f-822b-454b-b058-450e7263bf5f.png)
2023-03-22 10:58:39 +01:00
Gastón Fournier
64c41b8c6d
fix: properly escaping app names (#3368)
## About the changes
Network overview was not escaping square brackets from app names and
that caused mermaid graph to break. We've also identified problems with
quotes and some characters not showing properly when using utf-8 (but
still no solution for this). We're going to be testing the utf-8 issue
in our sandbox instances.
2023-03-22 10:40:22 +01:00
Fredrik Strand Oseberg
96da121863
Fix/show notification state (#3365)
Adds
* Missing notification switch state
* Fixed width
* Notification icon outline
2023-03-22 00:14:49 +01:00
Nuno Góis
27d48b3437
Feat segments project safeguards (#3359)
https://linear.app/unleash/issue/2-811/ability-to-move-project-specific-segments


![image](https://user-images.githubusercontent.com/14320932/226572047-19ed225c-13d5-4f2e-b10f-e17a7f7e6ae7.png)

Provides some safeguards to project-specific segments when managing them
on a global level (segments page):
- You can always promote a segment to global;
- You can't specify a project if the segment is currently in use in
multiple projects;
- You can't specify a different project if the segment is currently
already in use in a project;
2023-03-21 20:28:43 +00:00
Tymoteusz Czech
2147206b49
Bulk tags (#3337)
1-753/frontend-features-in-project-overview
2023-03-21 13:37:25 +01:00
Mateusz Kwasniewski
9495df6705
feat: project mode tooltip (#3353) 2023-03-21 10:27:46 +01:00
Jaanus Sellin
9969433f8c
refactor: not used cleanup (#3347) 2023-03-21 11:10:07 +02:00
Jaanus Sellin
076768215e
feat: delete features FE (#3350) 2023-03-21 10:45:02 +02:00
andreas-unleash
8a03e5526c
Fix/remove settings post endpoint (#3356)
<!-- Thanks for creating a PR! To make it easier for reviewers and
everyone else to understand what your changes relate to, please add some
relevant content to the headings below. Feel free to ignore or delete
sections that you don't think are relevant. Thank you! ❤️ -->
This PR removes the call the setDefaultProjectStickiness from
EditProject.

The value is part of the payload for the project
## About the changes
<!-- Describe the changes introduced. What are they and why are they
being introduced? Feel free to also add screenshots or steps to view the
changes if they're visual. -->

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

<!-- (For internal contributors): Does it relate to an issue on public
roadmap? -->
<!--
Relates to [roadmap](https://github.com/orgs/Unleash/projects/10) item:
#
-->

### Important files
<!-- PRs can contain a lot of changes, but not all changes are equally
important. Where should a reviewer start looking to get an overview of
the changes? Are any files particularly important? -->


## Discussion points
<!-- Anything about the PR you'd like to discuss before it gets merged?
Got any questions or doubts? -->

---------

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2023-03-21 10:18:48 +02:00
Mateusz Kwasniewski
fe6324760e
fix: project stickiness behind flag (#3355) 2023-03-21 08:13:43 +01:00
Mateusz Kwasniewski
02dda7248f
fix: hidden notifications (#3354) 2023-03-20 15:36:57 +00:00
Mateusz Kwasniewski
476f246faa
feat: hide notifications from oss version (#3352) 2023-03-20 15:11:22 +01:00
Mateusz Kwasniewski
acc05a4b84
feat: verify project collaboration mode in CR permissions for buttons (#3349) 2023-03-20 14:50:50 +01:00
Jaanus Sellin
d28e65b94c
feat: revive features (#3344) 2023-03-17 18:21:13 +00:00
Nuno Góis
2c2da4ad3f
Feat project segments permissions (#3346)
- Adds `UPDATE_PROJECT_SEGMENT` permission checks;
- Allows `PermissionIconButton` to evaluate multiple permissions, just
like `PermissionButton`;
- Also includes a possible fix for `hasAccess` in `AccessProvider`.
2023-03-17 17:43:48 +00:00
Nuno Góis
71f6b8e172
fix: revert form section 100 height (#3345)
Small fix that reverts
https://github.com/Unleash/unleash/pull/3335/files#r1138829014 - Turns
out it wasn't totally harmless and broke some modals that had more than
100% height and no overflow.

This approach maintains the original logic and adds a new prop for the
segment forms to make them proper modals when used in the project
context.
2023-03-17 13:59:46 +00:00
andreas-unleash
32e1ad44ed
Feat/add cypress tests for project scoped stickiness (#3340)
<!-- Thanks for creating a PR! To make it easier for reviewers and
everyone else to understand what your changes relate to, please add some
relevant content to the headings below. Feel free to ignore or delete
sections that you don't think are relevant. Thank you! ❤️ -->


## About the changes
<!-- Describe the changes introduced. What are they and why are they
being introduced? Feel free to also add screenshots or steps to view the
changes if they're visual. -->

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

<!-- (For internal contributors): Does it relate to an issue on public
roadmap? -->
<!--
Relates to [roadmap](https://github.com/orgs/Unleash/projects/10) item:
#
-->

### Important files
<!-- PRs can contain a lot of changes, but not all changes are equally
important. Where should a reviewer start looking to get an overview of
the changes? Are any files particularly important? -->


## Discussion points
<!-- Anything about the PR you'd like to discuss before it gets merged?
Got any questions or doubts? -->

---------

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2023-03-17 14:41:59 +02:00
Nuno Góis
292d6a7f60
feat: implement project-scoped segments in project settings (#3335)
https://linear.app/unleash/issue/2-743/have-a-project-specific-configuration-section


![image](https://user-images.githubusercontent.com/14320932/225657038-1a385e6e-deb3-4229-a30d-e7ca28ef2b3c.png)

Adds the "segments" option to project settings, providing the usual CRUD
operations but scoped to the specific project.
2023-03-17 08:23:27 +00:00
Mateusz Kwasniewski
f907dfad15
fix: remove stickiness error (#3338)
<!-- Thanks for creating a PR! To make it easier for reviewers and
everyone else to understand what your changes relate to, please add some
relevant content to the headings below. Feel free to ignore or delete
sections that you don't think are relevant. Thank you! ❤️ -->

## About the changes

Code was failing on create project because project id is empty
<img width="1123" alt="Screenshot 2023-03-16 at 16 43 55"
src="https://user-images.githubusercontent.com/1394682/225688715-98a2bd19-cb1a-43ce-a405-f1911645c638.png">


### Important files
<!-- PRs can contain a lot of changes, but not all changes are equally
important. Where should a reviewer start looking to get an overview of
the changes? Are any files particularly important? -->


## Discussion points
<!-- Anything about the PR you'd like to discuss before it gets merged?
Got any questions or doubts? -->
2023-03-17 04:35:55 +02:00
Fredrik Strand Oseberg
e2ad0cae45
fix: refactor calculate time to prod (#3333)
This PR changes how we calculate average time to production. Instead of
calculating fleeting 30 day windows and calculating the past and current
window, we now calculate a flat average across the entire project life.
This is less error prone as each feature will be tied to the earliest
time it was turned on in a production environment.
2023-03-16 15:45:24 +01:00
Mateusz Kwasniewski
1064dfa40c
feat: project mode (#3334) 2023-03-16 15:29:52 +01:00
Tymoteusz Czech
a983cf15b9
UI/bulk stale (#3320)
Mark and un-mark selected toggles as stale.
2023-03-16 14:54:38 +01:00
Nuno Góis
bd17c631e0
feat: filter segments by project on the strategy (#3325)
https://linear.app/unleash/issue/2-737/when-listing-segments-project-specific-segments-should-also-be-present

Simple filter on the UI for segments that are either global or for the
specific project.
2023-03-16 12:17:33 +00:00
Fredrik Strand Oseberg
40f8ed771d
fix: project permissions (#3317)
This PR fixes an issue where permissions would not allow you to create
an API token in the new project API management view. In addition, it
fixes an issue where if you missed the permission to read API tokens,
you would be blocked from creating one as well.
2023-03-15 15:24:35 +01:00
Fredrik Strand Oseberg
fd4874eaec
fix: add container for EditGroups (#3318)
This PR fixes an issue that would manifest when you navigated directly
to the groups and tried to edit the group from the group card. When you
were redirected to the edit groups view, the data fields would be empty.
The root cause of this issue is that the data has not arrived over the
wire before we load the UI, resulting in the UI showing an empty
dataset.

Normally, if this data came directly from useSWR, the app would
re-render and display the data correctly. However, in this instance we
are passing the data to an intermediary hook (useGroupForm) which does
not have the same re-render logic. Therefore we are effectively working
from stale data. We solve this issue by adding a container that resolves
the group before the edit form is rendered, and that invokes the
intermediary hook only when the data is available.
2023-03-15 15:23:59 +01:00
andreas-unleash
933455e308
feat: use api instead of localStorage (#3305)
<!-- Thanks for creating a PR! To make it easier for reviewers and
everyone else to understand what your changes relate to, please add some
relevant content to the headings below. Feel free to ignore or delete
sections that you don't think are relevant. Thank you! ❤️ -->
This PR replaces localStorage with api calls for getting/setting project
scoped stickiness
## About the changes
<!-- Describe the changes introduced. What are they and why are they
being introduced? Feel free to also add screenshots or steps to view the
changes if they're visual. -->

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

<!-- (For internal contributors): Does it relate to an issue on public
roadmap? -->
<!--
Relates to [roadmap](https://github.com/orgs/Unleash/projects/10) item:
#
-->

### Important files
<!-- PRs can contain a lot of changes, but not all changes are equally
important. Where should a reviewer start looking to get an overview of
the changes? Are any files particularly important? -->


## Discussion points
<!-- Anything about the PR you'd like to discuss before it gets merged?
Got any questions or doubts? -->

---------

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2023-03-15 16:06:25 +02:00
Tymoteusz Czech
0784afd255
UI/bulk archive (#3319)
Ability to archive multiple feature toggles from project overview
2023-03-15 14:10:16 +01:00
Tymoteusz Czech
ac1be475e4
re-generate fontend openapi schema 2023-03-15 13:30:07 +01:00
Nuno Góis
4e36981c96
feat: improve variants modal UI/UX (#3307)
https://linear.app/unleash/issue/2-758/add-variant-improve-the-flow


![image](https://user-images.githubusercontent.com/14320932/225064841-7fdb3b23-a06d-4078-b33a-50166e54a8b8.png)

![image](https://user-images.githubusercontent.com/14320932/225063913-ff92a563-7aa8-493f-a0dd-ef16f1474151.png)

### Variants form

- Fix variants edit form to follow natural tab order;
- Update variants form UI to new design with multiple improvements and
fixes, including a sticky header;
- New variants are now added at the bottom of the edit form instead of
at the top, with a smooth scroll and focus;

### Change requests

- On the variants diff, use variant names instead of index;
- Use an object-based diff logic (instead of array-based) for cleaner
diffs on variants (thanks @thomasheartman !);
- Display a table with the new variants data and display the diff on a
`TooltipLink`;
- Adapt strategy CR changes to the new `TooltipLink` logic for
consistency;

### Other

- `TooltipLink` and `Badge` components are now tab-selectable;
- Small enhancements, refactors and improvements;

---------

Co-authored-by: Gastón Fournier <gaston@getunleash.io>
2023-03-15 12:22:06 +00:00
andreas-unleash
efd9e523ed
feat: Generate new OAS types, tags component upgrade (#3269)
<!-- Thanks for creating a PR! To make it easier for reviewers and
everyone else to understand what your changes relate to, please add some
relevant content to the headings below. Feel free to ignore or delete
sections that you don't think are relevant. Thank you! ❤️ -->
Create/Add/Remove at the same time per tag type


## About the changes
<!-- Describe the changes introduced. What are they and why are they
being introduced? Feel free to also add screenshots or steps to view the
changes if they're visual. -->

<!-- Does it close an issue? Multiple? -->
Closes #
[1-769](https://linear.app/unleash/issue/1-769/refactor-existing-tag-component-to-also-allow-removing-tags)

<!-- (For internal contributors): Does it relate to an issue on public
roadmap? -->
<!--
Relates to [roadmap](https://github.com/orgs/Unleash/projects/10) item:
#
-->

### Important files
<!-- PRs can contain a lot of changes, but not all changes are equally
important. Where should a reviewer start looking to get an overview of
the changes? Are any files particularly important? -->


## Discussion points
<!-- Anything about the PR you'd like to discuss before it gets merged?
Got any questions or doubts? -->

---------

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
Co-authored-by: sjaanus <sellinjaanus@gmail.com>
2023-03-15 11:35:24 +02:00
Tymoteusz Czech
30a753b93f
UI/bulk select (#3267)
Select multiple toggles on project overview.
2023-03-14 08:56:03 +00:00
Nuno Góis
fe1e3566ee
fix: assume undefined instead of null on segment project (#3304)
Assume `undefined` instead of `null` for project in terms of interfacing
with segments: If the `project` field is not present, that means that it
is not set, which means we're dealing with a "global" segment. If we
want to unset `project` and make a segment global, we simply don't send
the `project` property on our PUT method.
2023-03-13 10:25:48 +00:00
David Leek
792d0e42de
feat: add projectid to the segments table (#3287)
https://linear.app/unleash/issue/2-742/add-an-extra-column-in-global-segments-configuration-to-display-the

<!-- Thanks for creating a PR! To make it easier for reviewers and
everyone else to understand what your changes relate to, please add some
relevant content to the headings below. Feel free to ignore or delete
sections that you don't think are relevant. Thank you! ❤️ -->

## About the changes
<!-- Describe the changes introduced. What are they and why are they
being introduced? Feel free to also add screenshots or steps to view the
changes if they're visual. -->

Adds projectid column to the segments table and defaults to the value
"Global" if none is set.


![image](https://user-images.githubusercontent.com/707867/224053267-e52a398a-6f89-4d27-bd52-72b73eedc99a.png)


<!-- (For internal contributors): Does it relate to an issue on public
roadmap? -->
<!--
Relates to [roadmap](https://github.com/orgs/Unleash/projects/10) item:
#
-->

### Important files
<!-- PRs can contain a lot of changes, but not all changes are equally
important. Where should a reviewer start looking to get an overview of
the changes? Are any files particularly important? -->
SegmentTable.tsx

## Discussion points
<!-- Anything about the PR you'd like to discuss before it gets merged?
Got any questions or doubts? -->

---------

Co-authored-by: Nuno Góis <github@nunogois.com>
2023-03-10 14:45:10 +01:00
andreas-unleash
3193423d2d
feat: Project scoped stickiness (#3289)
Project scoped stickiness 
<!-- Thanks for creating a PR! To make it easier for reviewers and
everyone else to understand what your changes relate to, please add some
relevant content to the headings below. Feel free to ignore or delete
sections that you don't think are relevant. Thank you! ❤️ -->

Adds `projectScopedStickiness` flag to experimental.ts
Refactor Stickiness select for reusability
Modify FlexibleStrategy to respect the setting.
Modify EnvironmentVariantModal to respect the setting

## About the changes
<!-- Describe the changes introduced. What are they and why are they
being introduced? Feel free to also add screenshots or steps to view the
changes if they're visual. -->

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

<!-- (For internal contributors): Does it relate to an issue on public
roadmap? -->
<!--
Relates to [roadmap](https://github.com/orgs/Unleash/projects/10) item:
#
-->

### Important files
<!-- PRs can contain a lot of changes, but not all changes are equally
important. Where should a reviewer start looking to get an overview of
the changes? Are any files particularly important? -->


## Discussion points
<!-- Anything about the PR you'd like to discuss before it gets merged?
Got any questions or doubts? -->

---------

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2023-03-10 12:28:02 +02:00
Tymoteusz Czech
85b63bd8f7
Update frontend OpenAPI schema (#3294) 2023-03-10 09:36:31 +01:00
Nuno Góis
ff7185fe5b
feat: allow adding project to segment (#3290)
https://linear.app/unleash/issue/2-741/add-project-dropdown-into-creation-of-segments

Allows users to bind a segment to a project when creating or editing a
segment.

<img width="1051" alt="image"
src="https://user-images.githubusercontent.com/14320932/224103846-1fe1f849-496c-4a77-9831-53bcb36f822e.png">
2023-03-10 08:16:54 +00:00
Nuno Góis
d96a2134f3
fix: hide change password when simple auth is disabled (#3282)
https://linear.app/unleash/issue/2-764/change-password-should-be-disabled-when-password-login-is-disabled

Hides "Change password" option on the profile page when "Password based
login" is disabled.


![image](https://user-images.githubusercontent.com/14320932/224018081-d866a17f-97a4-4e6e-8057-2f60a20e3d52.png)
2023-03-09 14:13:40 +01:00
Jaanus Sellin
a52dd10cf8
feat: bulk update tags (#3274) 2023-03-09 11:58:06 +02:00
Gastón Fournier
7c289369cc
chore: add a toggle for project segments (#3272)
## About the changes
This adds a new flag that can be used in the UI to display project
specific segments
2023-03-08 14:55:03 +01:00
andreas-unleash
068c55a925
Feat/notifications cypress (#3244)
<!-- Thanks for creating a PR! To make it easier for reviewers and
everyone else to understand what your changes relate to, please add some
relevant content to the headings below. Feel free to ignore or delete
sections that you don't think are relevant. Thank you! ❤️ -->

## About the changes
<!-- Describe the changes introduced. What are they and why are they
being introduced? Feel free to also add screenshots or steps to view the
changes if they're visual. -->

<!-- Does it close an issue? Multiple? -->
Closes #
[1-743](https://linear.app/unleash/issue/1-743/add-cypress-test-for-notifications-happy-path)

<!-- (For internal contributors): Does it relate to an issue on public
roadmap? -->
<!--
Relates to [roadmap](https://github.com/orgs/Unleash/projects/10) item:
#
-->

### Important files
<!-- PRs can contain a lot of changes, but not all changes are equally
important. Where should a reviewer start looking to get an overview of
the changes? Are any files particularly important? -->


## Discussion points
<!-- Anything about the PR you'd like to discuss before it gets merged?
Got any questions or doubts? -->

---------

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2023-03-08 12:47:42 +02:00
Mateusz Kwasniewski
5957d8f2ea
fix: load export dialog after envs loaded (#3234) 2023-03-08 09:21:45 +01:00
Jaanus Sellin
b9a009b002
feat: fix global archive (#3259) 2023-03-06 14:18:39 +00:00
NicolaeUnleash
23af7a3474
refactor: light theme colors (#3252)
## About the changes
Refactoring the colors for the light theme to be much easier to continue
with dark mode

This is the first step to finish dark mode

https://linear.app/unleash/project/[low][s][alpha]-dark-mode-in-unleash-admin-ui-31b407d13c4b/1

This PR uses `main-theme` as a placeholder for `dark-theme` for now due
to the new changes. Still need to set the correct values here.

---------

Co-authored-by: Nuno Góis <github@nunogois.com>
2023-03-06 12:58:36 +02:00
Jaanus Sellin
f8a209a1d1
feat: add due date for invoices (#3257) 2023-03-06 11:01:13 +02:00
Jaanus Sellin
8c0411dc20
feat: invoices created date (#3250) 2023-03-03 14:31:27 +02:00
Jaanus Sellin
2672e7386d
feat: users ui adjustments (#3249) 2023-03-03 14:05:45 +02:00
Nuno Góis
6a8ed55c63
feat: better segment info (#3243)
## About the changes

- Updates the segment information on top to be clearer - No longer an
experimental feature, but we do have some limits in place;
- Also updates the documentation to better reflect this;

Co-authored-by: @thomasheartman


![image](https://user-images.githubusercontent.com/14320932/222380864-029e7eef-bcee-4576-b9af-22a591d494a9.png)

---------

Co-authored-by: Thomas Heartman <thomas@getunleash.ai>
Co-authored-by: Gastón Fournier <gaston@getunleash.ai>
2023-03-02 14:13:27 +00:00
Nuno Góis
ea83849cd3
refactor: rename sign-on log to login history (#3245)
Renames `sign-on log` to `login history`.
2023-03-02 13:49:50 +00:00
Fredrik Strand Oseberg
7c988a063a
feat: add user created by (#3235)
Adds the user created by avatar and name to the notification.
2023-03-01 16:05:39 +01:00
Fredrik Strand Oseberg
b000ecc8fd
feat: notifications ui polish (#3232)
This PR adds:
* Keyboard events
* Boxshadow
* Filtering by unread notifications
* Increases smartness for logic around when to prompt whether or not the
functionality is useful
2023-03-01 14:28:05 +01:00
Nuno Góis
45cfaece6f
feat: add download and delete all buttons to sign-on log UI (#3231)
Adds `Download sign-on log` and `Clear sign-on log` buttons to the UI,
making it easy for admins to manage their sign-on log.


![image](https://user-images.githubusercontent.com/14320932/222138757-284c3f79-142f-4e25-847d-666938d4c12c.png)

![image](https://user-images.githubusercontent.com/14320932/222138863-bccf6343-41dd-4068-95b0-fac3ce37313f.png)
2023-03-01 12:38:47 +00:00
Tymoteusz Czech
587c48e3fc
fix: strategy access tooltip (#3228)
Fixing this issue:

![image
(9)](https://user-images.githubusercontent.com/2625371/222119224-f3482e5d-96b2-4ea3-a676-b77f349a1326.png)


https://linear.app/unleash/issue/1-699/ui-bug-duplicate-strategy-tooltip
2023-03-01 13:17:31 +01:00
Tymoteusz Czech
f1e59b2265
fix: project stats (#3227) 2023-03-01 13:04:52 +01:00
Tymoteusz Czech
e209acfa25
feat: paid users limit in UI (#3210) 2023-03-01 08:49:14 +01:00
Nuno Góis
d27f0fe5ab
feat: smarter auth type labels on sign-on log table (#3220)
Small change to make the `Authentication` column in the Sign-on Log
table display nice-to-read labels for the multiple authentication types.


![image](https://user-images.githubusercontent.com/14320932/221917306-d115f447-bfda-4d18-9bc7-545d76c03c22.png)
2023-02-28 17:58:29 +01:00
Nuno Góis
c489151028
feat: add url/query sort/search to sign on log table (#3215)
https://linear.app/unleash/issue/2-729/adapt-signontable-to-use-querystored-sortsearch-params

Adds the feature where the current sort + search are reflected in the
URL.


![image](https://user-images.githubusercontent.com/14320932/221870486-22b7b0d5-1620-48f1-9d32-17a61cf11b52.png)
(notice the URL at the top)
2023-02-28 13:51:38 +00:00
Fredrik Strand Oseberg
87312f90ca
feat: implement plausible tracking (#3212)
Adds plausible event tracking for notifications. Refactors Feedback
component to be reusable and to ask whether or not this functionality is
useful.
2023-02-28 14:29:14 +01:00
Nuno Góis
c0124371ca
feat: add authentication as a table filter (#3206)
Adds `auth` as a table filter.
Also fixes the hook to correctly fetch the events based on the new
return type.

<img width="1046" alt="image"
src="https://user-images.githubusercontent.com/14320932/221603312-a40055a8-4c23-4f1f-9a87-7fbd03e7b49e.png">
2023-02-28 09:32:21 +01:00
Jaanus Sellin
dcc02dc229
feat: only email users billable (#3205) 2023-02-28 08:50:11 +02:00
Nuno Góis
d94ba82e3a
chore: rename login-event to sign-on-log (#3204)
Renames `login-event` to `sign-on-log`, in preparation for the rename
and refactor happening for this feature in Enterprise.
2023-02-27 14:44:06 +00:00
Jaanus Sellin
af82202ada
feat: remove maintenance feature flag (#3199) 2023-02-27 15:36:56 +02:00
Fredrik Strand Oseberg
ef2f184845
Feat/notifications UI followup (#3197)
This PR adds more capabilities to the notification UI. Including: 
* Displaying new notification types
* Update visual expression based on whether it's read or not
* Mark items as read
* Follow the items link to go to the notification destination
* Cleanup and styled components
2023-02-27 13:04:09 +01:00
Nuno Góis
aa961823fe
feat: dateFormat in TimeAgoCell (#3202)
Slight refactor to `TimeAgoCell` that allows passing in a date format
function.
Suggested by @gastonfournier in
https://github.com/Unleash/unleash/pull/3193#pullrequestreview-1315064957
2023-02-27 13:00:03 +01:00