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

10428 Commits

Author SHA1 Message Date
Jaanus Sellin
1173b664da
feat: add created date filter component (#5569) 2023-12-08 10:07:57 +02:00
dependabot[bot]
896202e5ae
chore(deps): bump @adobe/css-tools from 4.3.1 to 4.3.2 in /frontend (#5517)
Bumps [@adobe/css-tools](https://github.com/adobe/css-tools) from 4.3.1
to 4.3.2.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/adobe/css-tools/blob/main/History.md"><code>@​adobe/css-tools</code>'s
changelog</a>.</em></p>
<blockquote>
<h1>4.3.2 / 2023-11-28</h1>
<ul>
<li>Fix redos vulnerability with specific crafted css string -
CVE-2023-48631</li>
<li>Fix Problem parsing with :is() and nested :nth-child() <a
href="https://redirect.github.com/adobe/css-tools/issues/211">#211</a></li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a
href="https://github.com/adobe/css-tools/commits">compare view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=@adobe/css-tools&package-manager=npm_and_yarn&previous-version=4.3.1&new-version=4.3.2)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
You can disable automated security fix PRs for this repo from the
[Security Alerts
page](https://github.com/Unleash/unleash/network/alerts).

</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-12-07 13:00:07 +01:00
Simon Hornby
0e5861ac33
chore: use explicit images for inverted operator rather than a boolean not operator (#5565) 2023-12-07 13:03:19 +02:00
Jaanus Sellin
e89ebf358e
refactor: split filter configuration with filter visibility state (#5563)
This PR splits the filter configuration with filter visibility state.
This will simplify adding different filter types in future, for example
date filters.
2023-12-07 11:59:35 +02:00
Mateusz Kwasniewski
38d02e1a85
feat: segments operators (#5562) 2023-12-06 17:38:36 +02:00
Thomas Heartman
a228f54344
feat: show scheduled CRs using strategies when removing it (#5560)
Show a warning about how deleting a strategy might mess up scheduled
change requests.

If there are change requests, list them. If there are no conflicts, show
nothing. If we don't know (because of no successful response from the
API), say that it might cause issues.


![image](https://github.com/Unleash/unleash/assets/17786332/2c6a4257-69f5-458a-ab6f-9b2ea2f5d550)
2023-12-06 15:39:17 +01:00
Mateusz Kwasniewski
87ebbb0fa2
feat: segments filter (#5558)
Co-authored-by: sjaanus <sellinjaanus@gmail.com>
2023-12-06 14:50:18 +02:00
Jaanus Sellin
eda4186a6c
fix: state now persist to filters (#5559)
When navigating to features list, now it will respect the query params.
2023-12-06 14:17:49 +02:00
Jaanus Sellin
d9648de08d
chore: rename is not any of to is none of (#5544) 2023-12-06 12:53:51 +02:00
Jaanus Sellin
eb43d37379
feat: segment cell and orval types (#5543) 2023-12-06 12:51:00 +02:00
Jaanus Sellin
b8fabbd726
feat: add new filter button with state (#5556)
[Screencast from 2023-12-05
16-59-28.webm](https://github.com/Unleash/unleash/assets/964450/793c771b-6246-4e28-8c13-920696a48bd5)

---------

Co-authored-by: kwasniew <kwasniewski.mateusz@gmail.com>
2023-12-06 12:50:33 +02:00
andreas-unleash
12f79f90bb
feat: Scheduled change conflict email templates and function (#5547)
Creates a new email template for scheduled change conflicts and a
function to send it.

Relates to:
#[1-1686](https://linear.app/unleash/issue/1-1686/send-an-email-when-the-conflicts-are-detected)


![Screenshot 2023-12-05 at 16 55
51](https://github.com/Unleash/unleash/assets/104830839/4d37527e-bb83-4ac5-9437-09b6ab08c979)

---------

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
Co-authored-by: Thomas Heartman <thomas@getunleash.io>
2023-12-06 11:57:19 +02:00
Mateusz Kwasniewski
da1a9d4036
test: Filter item test (#5557) 2023-12-06 09:10:15 +01:00
renovate[bot]
55e8073e3c
chore(deps): update dependency vite to v4.5.1 [security] (#5554)
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [vite](https://vitejs.dev)
([source](https://togithub.com/vitejs/vite/tree/HEAD/packages/vite)) |
[`4.5.0` -> `4.5.1`](https://renovatebot.com/diffs/npm/vite/4.5.0/4.5.1)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/vite/4.5.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/vite/4.5.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/vite/4.5.0/4.5.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/vite/4.5.0/4.5.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

### GitHub Vulnerability Alerts

####
[CVE-2023-49293](https://togithub.com/vitejs/vite/security/advisories/GHSA-92r3-m2mg-pj97)

### Summary
When Vite's HTML transformation is invoked manually via
`server.transformIndexHtml`, the original request URL is passed in
unmodified, and the `html` being transformed contains inline module
scripts (`<script type="module">...</script>`), it is possible to inject
arbitrary HTML into the transformed output by supplying a malicious URL
query string to `server.transformIndexHtml`.

### Impact
Only apps using `appType: 'custom'` and using the default Vite HTML
middleware are affected. The HTML entry must also contain an inline
script. The attack requires a user to click on a malicious URL while
running the dev server. Restricted files aren't exposed to the attacker.

### Patches
Fixed in vite@5.0.5, vite@4.5.1, vite@4.4.12

### Details
Suppose `index.html` contains an inline module script:

```html
<script type="module">
  // Inline script
</script>
```

This script is transformed into a proxy script like

```html
<script type="module" src="/index.html?html-proxy&index=0.js"></script>
```

due to Vite's HTML plugin:


7fd7c6cebf/packages/vite/src/node/plugins/html.ts (L429-L465)

When `appType: 'spa' | 'mpa'`, Vite serves HTML itself, and
`htmlFallbackMiddleware` rewrites `req.url` to the canonical path of
`index.html`,


73ef074b80/packages/vite/src/node/server/middlewares/htmlFallback.ts (L44-L47)

so the `url` passed to `server.transformIndexHtml` is `/index.html`.

However, if `appType: 'custom'`, HTML is served manually, and if
`server.transformIndexHtml` is called with the unmodified request URL
(as the SSR docs suggest), then the path of the transformed `html-proxy`
script varies with the request URL. For example, a request with path `/`
produces

```html
<script type="module" src="/@&#8203;id/__x00__/index.html?html-proxy&index=0.js"></script>
```

It is possible to abuse this behavior by crafting a request URL to
contain a malicious payload like

```
"></script><script>alert('boom')</script>
```

so a request to
http://localhost:5173/?%22%3E%3C/script%3E%3Cscript%3Ealert(%27boom%27)%3C/script%3E
produces HTML output like

```html
<script type="module" src="/@&#8203;id/__x00__/?"></script><script>alert("boom")</script>?html-proxy&index=0.js"></script>
```

which demonstrates XSS.

### PoC

- Example 1. Serving HTML from `vite dev` middleware with `appType:
'custom'`
- Go to
https://stackblitz.com/edit/vitejs-vite-9xhma4?file=main.js&terminal=dev-html
    - "Open in New Tab"
- Edit URL to set query string to
`?%22%3E%3C/script%3E%3Cscript%3Ealert(%27boom%27)%3C/script%3E` and
navigate
    - Witness XSS:
-
![image](https://user-images.githubusercontent.com/2456381/287434281-13757894-7a63-4a73-b1e9-d2b024c19d14.png)
- Example 2. Serving HTML from SSR-style Express server (Vite dev server
runs in middleware mode):
- Go to
https://stackblitz.com/edit/vitejs-vite-9xhma4?file=main.js&terminal=server
    - (Same steps as above)
- Example 3. Plain `vite dev` (this shows that vanilla `vite dev` is
_not_ vulnerable, provided `htmlFallbackMiddleware` is used)
- Go to
https://stackblitz.com/edit/vitejs-vite-9xhma4?file=main.js&terminal=dev
    - (Same steps as above)
    - You should _not_ see the alert box in this case

### Detailed Impact

This will probably predominantly affect [development-mode
SSR](https://vitejs.dev/guide/ssr#setting-up-the-dev-server), where
`vite.transformHtml` is called using the original `req.url`, per the
docs:


7fd7c6cebf/docs/guide/ssr.md (L114-L126)

However, since this vulnerability affects `server.transformIndexHtml`,
the scope of impact may be higher to also include other ad-hoc calls to
`server.transformIndexHtml` from outside of Vite's own codebase.

My best guess at bisecting which versions are vulnerable involves the
following test script

```js
import fs from 'node:fs/promises';
import * as vite from 'vite';

const html = `
<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
  </head>
  <body>
    <script type="module">
      // Inline script
    </script>
  </body>
</html>
`;
const server = await vite.createServer({ appType: 'custom' });
const transformed = await server.transformIndexHtml('/?%22%3E%3C/script%3E%3Cscript%3Ealert(%27boom%27)%3C/script%3E', html);
console.log(transformed);
await server.close();
```

and using it I was able to narrow down to #&#8203;13581. If this is
correct, then vulnerable Vite versions are 4.4.0-beta.2 and higher
(which includes 4.4.0).

---

### Release Notes

<details>
<summary>vitejs/vite (vite)</summary>

### [`v4.5.1`](https://togithub.com/vitejs/vite/releases/tag/v4.5.1)

[Compare
Source](https://togithub.com/vitejs/vite/compare/v4.5.0...v4.5.1)

Please refer to
[CHANGELOG.md](https://togithub.com/vitejs/vite/blob/v4.5.1/packages/vite/CHANGELOG.md)
for details.

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "" in timezone Europe/Madrid,
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/Unleash/unleash).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy44MS4zIiwidXBkYXRlZEluVmVyIjoiMzcuODEuMyIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-12-06 00:30:39 +00:00
Mateusz Kwasniewski
2dcf4af7b1
feat: filter persisted in url (#5549) 2023-12-05 17:31:23 +01:00
Nuno Góis
f348acb3b9
feat: improve role form validation (#5548)
https://linear.app/unleash/issue/2-1717/improve-the-ux-when-all-the-required-fields-are-not-filled-in

Improves role form validation behavior.
We may want to look into a form validation library, like
[react-hook-form](https://react-hook-form.com/), for future
implementations.
2023-12-05 12:39:30 +00:00
Saeed Akasteh
fa9d38fc22
fix(removeapitokenbutton.tsx): add environment name in delete token modal (#5469)
add environment name in delete token modal
2023-12-05 13:17:31 +01:00
Tymoteusz Czech
b5122a74e7
refactor: table state management in withTableState (#5531) 2023-12-05 12:16:58 +01:00
Gastón Fournier
607e01b6d3
fix: docker deploy failing (#5546)
#5537 updated package.json but not yarn.lock
2023-12-05 10:41:23 +00:00
Gastón Fournier
2164ff6a87
chore: require both build and test before merge (#5545)
## About the changes
Some of our PRs such as #5538 merged without passing the tests. This is
because we were running tests in a different workflow that's not
mandatory to pass before we merge.

With this, we remove duplicated work (we were executing build:backend in
two different workflows) and we enforce our PRs to pass tests before
merging
2023-12-05 11:21:03 +01:00
Jaanus Sellin
6f497e6708
feat: add openapi validation for search (#5541) 2023-12-05 11:25:56 +02:00
Mateusz Kwasniewski
e341a58364
fix: roll back client to 5.0 (#5542) 2023-12-05 09:29:58 +01:00
Mateusz Kwasniewski
2c5130d57e
chore: Update package.json (#5540) 2023-12-05 09:16:57 +01:00
Tymoteusz Czech
795c67306c
fix: features sidebar scroll (#5524)
Feature toggle overview screen - the sidebar getting sticky was making it hard to see many environments
2023-12-05 09:08:02 +01:00
renovate[bot]
20ebe8f7d3
fix(deps): update dependency unleash-client to v5.3.0 (#5538)
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [unleash-client](https://togithub.com/Unleash/unleash-client-node) |
[`5.0.0` ->
`5.3.0`](https://renovatebot.com/diffs/npm/unleash-client/5.0.0/5.3.0) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/unleash-client/5.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/unleash-client/5.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/unleash-client/5.0.0/5.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/unleash-client/5.0.0/5.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>Unleash/unleash-client-node (unleash-client)</summary>

###
[`v5.3.0`](https://togithub.com/Unleash/unleash-client-node/releases/tag/v5.3.0)

[Compare
Source](https://togithub.com/Unleash/unleash-client-node/compare/v5.2.0...v5.3.0)

#### What's Changed

- fix: backward compatibility by
[@&#8203;gastonfournier](https://togithub.com/gastonfournier) in
[https://github.com/Unleash/unleash-client-node/pull/540](https://togithub.com/Unleash/unleash-client-node/pull/540)

**Full Changelog**:
https://github.com/Unleash/unleash-client-node/compare/v5.2.0...v5.3.0

###
[`v5.2.0`](https://togithub.com/Unleash/unleash-client-node/releases/tag/v5.2.0)

[Compare
Source](https://togithub.com/Unleash/unleash-client-node/compare/v5.1.0...v5.2.0)

#### What's Changed

- chore(deps): update dependency
[@&#8203;types/semver](https://togithub.com/types/semver) to v7.5.5 by
[@&#8203;renovate](https://togithub.com/renovate) in
[https://github.com/Unleash/unleash-client-node/pull/527](https://togithub.com/Unleash/unleash-client-node/pull/527)
- feat: Backoff based on HTTP statuses by
[@&#8203;chriswk](https://togithub.com/chriswk) in
[https://github.com/Unleash/unleash-client-node/pull/537](https://togithub.com/Unleash/unleash-client-node/pull/537)

**Full Changelog**:
https://github.com/Unleash/unleash-client-node/compare/v5.1.0...v5.2.0

###
[`v5.1.0`](https://togithub.com/Unleash/unleash-client-node/releases/tag/v5.1.0)

[Compare
Source](https://togithub.com/Unleash/unleash-client-node/compare/v5.0.0...v5.1.0)

#### What's Changed

- feat: variant feature status - client specification update by
[@&#8203;Tymek](https://togithub.com/Tymek) in
[https://github.com/Unleash/unleash-client-node/pull/536](https://togithub.com/Unleash/unleash-client-node/pull/536)

**Full Changelog**:
https://github.com/Unleash/unleash-client-node/compare/v5.0.0...v5.1.0

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "after 7pm every weekday,before 5am
every weekday" in timezone Europe/Madrid, Automerge - At any time (no
schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/Unleash/unleash).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy44MS4zIiwidXBkYXRlZEluVmVyIjoiMzcuODEuMyIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-12-05 03:35:46 +00:00
renovate[bot]
d21a276b4f
fix(deps): update dependency passport to ^0.7.0 (#5537)
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [passport](https://www.passportjs.org/)
([source](https://togithub.com/jaredhanson/passport)) | [`^0.6.0` ->
`^0.7.0`](https://renovatebot.com/diffs/npm/passport/0.6.0/0.7.0) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/passport/0.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/passport/0.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/passport/0.6.0/0.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/passport/0.6.0/0.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>jaredhanson/passport (passport)</summary>

###
[`v0.7.0`](https://togithub.com/jaredhanson/passport/blob/HEAD/CHANGELOG.md#070---2023-11-27)

[Compare
Source](https://togithub.com/jaredhanson/passport/compare/v0.6.0...v0.7.0)

##### Changed

- Set `req.authInfo` by default when using the `assignProperty` option
to
`authenticate()` middleware. This makes the behavior the same as when
not using
the option, and can be disabled by setting `authInfo` option to `false`.

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "after 7pm every weekday,before 5am
every weekday" in timezone Europe/Madrid, Automerge - At any time (no
schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/Unleash/unleash).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy44MS4zIiwidXBkYXRlZEluVmVyIjoiMzcuODEuMyIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-12-05 02:18:20 +00:00
renovate[bot]
2f92ea3d75
chore(deps): update dependency @uiw/react-codemirror to v4.21.21 (#5534)
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@uiw/react-codemirror](https://uiwjs.github.io/react-codemirror)
([source](https://togithub.com/uiwjs/react-codemirror)) | [`4.21.20` ->
`4.21.21`](https://renovatebot.com/diffs/npm/@uiw%2freact-codemirror/4.21.20/4.21.21)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@uiw%2freact-codemirror/4.21.21?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@uiw%2freact-codemirror/4.21.21?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@uiw%2freact-codemirror/4.21.20/4.21.21?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@uiw%2freact-codemirror/4.21.20/4.21.21?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>uiwjs/react-codemirror (@&#8203;uiw/react-codemirror)</summary>

###
[`v4.21.21`](https://togithub.com/uiwjs/react-codemirror/releases/tag/v4.21.21)

[Compare
Source](https://togithub.com/uiwjs/react-codemirror/compare/v4.21.20...v4.21.21)

[![Buy me a
coffee](https://img.shields.io/badge/Buy%20me%20a%20coffee-048754?logo=buymeacoffee)](https://jaywcjlove.github.io/#/sponsor)
[![](https://img.shields.io/badge/Open%20in-unpkg-blue)](https://uiwjs.github.io/npm-unpkg/#/pkg/@&#8203;uiw/react-codemirror@4.21.21/file/README.md)

Documentation v4.21.21:
https://raw.githack.com/uiwjs/react-codemirror/61699f4/index.html\
Comparing Changes:
https://github.com/uiwjs/react-codemirror/compare/v4.21.20...v4.21.21

```shell
npm i @&#8203;uiw/react-codemirror@4.21.21
```

- 🌍 website: Remove margin from Example.tsx causing it do be cut off
([#&#8203;599](https://togithub.com/uiwjs/react-codemirror/issues/599))
[`31bacb8`](https://togithub.com/uiwjs/react-codemirror/commit/31bacb8)
[@&#8203;JohnnyDeuss](https://togithub.com/JohnnyDeuss)
- 🌟 feat(langs): add `liquid` extensions.
[`c68d27d`](https://togithub.com/uiwjs/react-codemirror/commit/c68d27d)
[@&#8203;jaywcjlove](https://togithub.com/jaywcjlove)
- 🎨 style(theme): modify xcode selection color.
([#&#8203;609](https://togithub.com/uiwjs/react-codemirror/issues/609))
[`62d9763`](https://togithub.com/uiwjs/react-codemirror/commit/62d9763)
[@&#8203;jaywcjlove](https://togithub.com/jaywcjlove)
- 💄 chore: add sponsor badge.
[`14fb085`](https://togithub.com/uiwjs/react-codemirror/commit/14fb085)
[@&#8203;jaywcjlove](https://togithub.com/jaywcjlove)
- 💄 chore: fix failed to parse source map & update dependency.
[`12448d8`](https://togithub.com/uiwjs/react-codemirror/commit/12448d8)
[@&#8203;jaywcjlove](https://togithub.com/jaywcjlove)
- 🌍 website: fix markdown type error.
[`33e1b98`](https://togithub.com/uiwjs/react-codemirror/commit/33e1b98)
[@&#8203;jaywcjlove](https://togithub.com/jaywcjlove)
- 🎨 style(theme): modify white/tokyo/tomorrow selection color.
([#&#8203;609](https://togithub.com/uiwjs/react-codemirror/issues/609))
[`04f21fc`](https://togithub.com/uiwjs/react-codemirror/commit/04f21fc)
[@&#8203;jaywcjlove](https://togithub.com/jaywcjlove)
- 🎨 style(theme): modify okaidia/quietlight/solarized selection color.
([#&#8203;609](https://togithub.com/uiwjs/react-codemirror/issues/609))
[`fd8b344`](https://togithub.com/uiwjs/react-codemirror/commit/fd8b344)
[@&#8203;jaywcjlove](https://togithub.com/jaywcjlove)
- 🎨 style(theme): modify kimbie/material/monokai/nord/noctis selection
color.
([#&#8203;609](https://togithub.com/uiwjs/react-codemirror/issues/609))
[`4dcc32b`](https://togithub.com/uiwjs/react-codemirror/commit/4dcc32b)
[@&#8203;jaywcjlove](https://togithub.com/jaywcjlove)
- 🎨 style(theme): modify duotone/eclipse/gruvbox selection color.
([#&#8203;609](https://togithub.com/uiwjs/react-codemirror/issues/609))
[`399d127`](https://togithub.com/uiwjs/react-codemirror/commit/399d127)
[@&#8203;jaywcjlove](https://togithub.com/jaywcjlove)
- 🎨 style(theme): modify basic/copilot/bespin selection color.
([#&#8203;609](https://togithub.com/uiwjs/react-codemirror/issues/609))
[`eb3af94`](https://togithub.com/uiwjs/react-codemirror/commit/eb3af94)
[@&#8203;jaywcjlove](https://togithub.com/jaywcjlove)
- 🎨 style(theme): modify
abcdef/abyss/androidstudio/andromeda/atomone/aura/basic selection color.
([#&#8203;609](https://togithub.com/uiwjs/react-codemirror/issues/609))
[`d233183`](https://togithub.com/uiwjs/react-codemirror/commit/d233183)
[@&#8203;jaywcjlove](https://togithub.com/jaywcjlove)
- 💢 ci: update workflows config.
[`f4b11c5`](https://togithub.com/uiwjs/react-codemirror/commit/f4b11c5)
[@&#8203;jaywcjlove](https://togithub.com/jaywcjlove)
- 🌟 feat: add .github/FUNDING.yml
[`5d7a372`](https://togithub.com/uiwjs/react-codemirror/commit/5d7a372)
[@&#8203;jaywcjlove](https://togithub.com/jaywcjlove)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "after 7pm every weekday,before 5am
every weekday" in timezone Europe/Madrid, Automerge - At any time (no
schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/Unleash/unleash).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy44MS4zIiwidXBkYXRlZEluVmVyIjoiMzcuODEuMyIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-12-04 22:43:58 +00:00
renovate[bot]
c4e784ff56
chore(deps): update dependency nock to v13.4.0 (#5535)
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [nock](https://togithub.com/nock/nock) | [`13.3.8` ->
`13.4.0`](https://renovatebot.com/diffs/npm/nock/13.3.8/13.4.0) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/nock/13.4.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/nock/13.4.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/nock/13.3.8/13.4.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/nock/13.3.8/13.4.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>nock/nock (nock)</summary>

### [`v13.4.0`](https://togithub.com/nock/nock/releases/tag/v13.4.0)

[Compare
Source](https://togithub.com/nock/nock/compare/v13.3.8...v13.4.0)

##### Features

- add `context.query()` to nock back
([#&#8203;2553](https://togithub.com/nock/nock/issues/2553))
([617511f](617511ffb4))

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "after 7pm every weekday,before 5am
every weekday" in timezone Europe/Madrid, Automerge - At any time (no
schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/Unleash/unleash).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy44MS4zIiwidXBkYXRlZEluVmVyIjoiMzcuODEuMyIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-12-04 22:41:10 +00:00
Jaanus Sellin
6b2b7a3388
chore: generate new models from openapi (#5528) 2023-12-04 21:49:49 +02:00
renovate[bot]
0481661a6f
chore(deps): update dependency @uiw/codemirror-theme-duotone to v4.21.21 (#5533)
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
|
[@uiw/codemirror-theme-duotone](https://uiwjs.github.io/react-codemirror/#/theme/data/duotone/light)
([source](https://togithub.com/uiwjs/react-codemirror)) | [`4.21.20` ->
`4.21.21`](https://renovatebot.com/diffs/npm/@uiw%2fcodemirror-theme-duotone/4.21.20/4.21.21)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@uiw%2fcodemirror-theme-duotone/4.21.21?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@uiw%2fcodemirror-theme-duotone/4.21.21?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@uiw%2fcodemirror-theme-duotone/4.21.20/4.21.21?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@uiw%2fcodemirror-theme-duotone/4.21.20/4.21.21?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>uiwjs/react-codemirror
(@&#8203;uiw/codemirror-theme-duotone)</summary>

###
[`v4.21.21`](https://togithub.com/uiwjs/react-codemirror/releases/tag/v4.21.21)

[Compare
Source](https://togithub.com/uiwjs/react-codemirror/compare/v4.21.20...v4.21.21)

[![Buy me a
coffee](https://img.shields.io/badge/Buy%20me%20a%20coffee-048754?logo=buymeacoffee)](https://jaywcjlove.github.io/#/sponsor)
[![](https://img.shields.io/badge/Open%20in-unpkg-blue)](https://uiwjs.github.io/npm-unpkg/#/pkg/@&#8203;uiw/react-codemirror@4.21.21/file/README.md)

Documentation v4.21.21:
https://raw.githack.com/uiwjs/react-codemirror/61699f4/index.html\
Comparing Changes:
https://github.com/uiwjs/react-codemirror/compare/v4.21.20...v4.21.21

```shell
npm i @&#8203;uiw/react-codemirror@4.21.21
```

- 🌍 website: Remove margin from Example.tsx causing it do be cut off
([#&#8203;599](https://togithub.com/uiwjs/react-codemirror/issues/599))
[`31bacb8`](https://togithub.com/uiwjs/react-codemirror/commit/31bacb8)
[@&#8203;JohnnyDeuss](https://togithub.com/JohnnyDeuss)
- 🌟 feat(langs): add `liquid` extensions.
[`c68d27d`](https://togithub.com/uiwjs/react-codemirror/commit/c68d27d)
[@&#8203;jaywcjlove](https://togithub.com/jaywcjlove)
- 🎨 style(theme): modify xcode selection color.
([#&#8203;609](https://togithub.com/uiwjs/react-codemirror/issues/609))
[`62d9763`](https://togithub.com/uiwjs/react-codemirror/commit/62d9763)
[@&#8203;jaywcjlove](https://togithub.com/jaywcjlove)
- 💄 chore: add sponsor badge.
[`14fb085`](https://togithub.com/uiwjs/react-codemirror/commit/14fb085)
[@&#8203;jaywcjlove](https://togithub.com/jaywcjlove)
- 💄 chore: fix failed to parse source map & update dependency.
[`12448d8`](https://togithub.com/uiwjs/react-codemirror/commit/12448d8)
[@&#8203;jaywcjlove](https://togithub.com/jaywcjlove)
- 🌍 website: fix markdown type error.
[`33e1b98`](https://togithub.com/uiwjs/react-codemirror/commit/33e1b98)
[@&#8203;jaywcjlove](https://togithub.com/jaywcjlove)
- 🎨 style(theme): modify white/tokyo/tomorrow selection color.
([#&#8203;609](https://togithub.com/uiwjs/react-codemirror/issues/609))
[`04f21fc`](https://togithub.com/uiwjs/react-codemirror/commit/04f21fc)
[@&#8203;jaywcjlove](https://togithub.com/jaywcjlove)
- 🎨 style(theme): modify okaidia/quietlight/solarized selection color.
([#&#8203;609](https://togithub.com/uiwjs/react-codemirror/issues/609))
[`fd8b344`](https://togithub.com/uiwjs/react-codemirror/commit/fd8b344)
[@&#8203;jaywcjlove](https://togithub.com/jaywcjlove)
- 🎨 style(theme): modify kimbie/material/monokai/nord/noctis selection
color.
([#&#8203;609](https://togithub.com/uiwjs/react-codemirror/issues/609))
[`4dcc32b`](https://togithub.com/uiwjs/react-codemirror/commit/4dcc32b)
[@&#8203;jaywcjlove](https://togithub.com/jaywcjlove)
- 🎨 style(theme): modify duotone/eclipse/gruvbox selection color.
([#&#8203;609](https://togithub.com/uiwjs/react-codemirror/issues/609))
[`399d127`](https://togithub.com/uiwjs/react-codemirror/commit/399d127)
[@&#8203;jaywcjlove](https://togithub.com/jaywcjlove)
- 🎨 style(theme): modify basic/copilot/bespin selection color.
([#&#8203;609](https://togithub.com/uiwjs/react-codemirror/issues/609))
[`eb3af94`](https://togithub.com/uiwjs/react-codemirror/commit/eb3af94)
[@&#8203;jaywcjlove](https://togithub.com/jaywcjlove)
- 🎨 style(theme): modify
abcdef/abyss/androidstudio/andromeda/atomone/aura/basic selection color.
([#&#8203;609](https://togithub.com/uiwjs/react-codemirror/issues/609))
[`d233183`](https://togithub.com/uiwjs/react-codemirror/commit/d233183)
[@&#8203;jaywcjlove](https://togithub.com/jaywcjlove)
- 💢 ci: update workflows config.
[`f4b11c5`](https://togithub.com/uiwjs/react-codemirror/commit/f4b11c5)
[@&#8203;jaywcjlove](https://togithub.com/jaywcjlove)
- 🌟 feat: add .github/FUNDING.yml
[`5d7a372`](https://togithub.com/uiwjs/react-codemirror/commit/5d7a372)
[@&#8203;jaywcjlove](https://togithub.com/jaywcjlove)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "after 7pm every weekday,before 5am
every weekday" in timezone Europe/Madrid, Automerge - At any time (no
schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/Unleash/unleash).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy44MS4zIiwidXBkYXRlZEluVmVyIjoiMzcuODEuMyIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-12-04 19:36:21 +00:00
renovate[bot]
5ad8e077a6
chore(deps): update dependency @codemirror/state to v6.3.2 (#5532)
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@codemirror/state](https://togithub.com/codemirror/state) | [`6.3.1`
->
`6.3.2`](https://renovatebot.com/diffs/npm/@codemirror%2fstate/6.3.1/6.3.2)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@codemirror%2fstate/6.3.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@codemirror%2fstate/6.3.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@codemirror%2fstate/6.3.1/6.3.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@codemirror%2fstate/6.3.1/6.3.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>codemirror/state (@&#8203;codemirror/state)</summary>

###
[`v6.3.2`](https://togithub.com/codemirror/state/blob/HEAD/CHANGELOG.md#632-2023-11-27)

[Compare
Source](https://togithub.com/codemirror/state/compare/6.3.1...6.3.2)

##### Bug fixes

Make sure transactions cannot add multiple selections when
`allowMultipleSelections` is false.

Fix a bug that caused `Text.iterLines` to not return empty lines at the
end of the iterated ranges.

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "after 7pm every weekday,before 5am
every weekday" in timezone Europe/Madrid, Automerge - At any time (no
schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/Unleash/unleash).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy44MS4zIiwidXBkYXRlZEluVmVyIjoiMzcuODEuMyIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-12-04 19:36:03 +00:00
Tymoteusz Czech
ddca82213a
refactor: project overview table state (#5530)
Use new table state management on project overview and on
project/features
2023-12-04 17:04:28 +01:00
Mateusz Kwasniewski
5c889df9be
test: persistent table state (#5529) 2023-12-04 15:47:53 +01:00
Jaanus Sellin
d1984b2447
feat: validate date filter and add more tests (#5525) 2023-12-04 15:41:05 +02:00
Tymoteusz Czech
a506b92544
feat: Refactor Table State Persistence in Feature Toggle List (#5527)
new custom hook, `usePersistentTableState`

Co-authored-by: Mateusz Kwasniewski <kwasniewski.mateusz@gmail.com>
2023-12-04 13:21:03 +00:00
Thomas Heartman
a0a15416c4
feat: display potential conflicts in existing change requests (#5521)
This update displays schedule conflicts in active change requests (any
CR that isn't applied, canceled, or rejected).


![image](https://github.com/Unleash/unleash/assets/17786332/181c6c0a-f5de-4eed-9093-ac0109e1e8f3)
2023-12-04 13:33:28 +01:00
Mateusz Kwasniewski
a9363efec1
fix: prevent search being stacked on top of the form dropdown (#5523) 2023-12-04 12:27:25 +01:00
andreas-unleash
3056456770
fix: scheduled cr failed email (#5522)
Relates to #
[1-1687](https://linear.app/unleash/issue/1-1687/send-an-email-when-the-scheduling-fails)

Removed `name` - not in template
Added missed `changeRequestTitle` for the html template context

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2023-12-04 11:51:06 +02:00
Gastón Fournier
08204e57d4
chore: schedule renovate to run early in the morning (#5477)
## About the changes
Schedule renovate to run and merge PRs before working hours to reduce
noise.
https://docs.renovatebot.com/presets-schedule/#schedulenonofficehours

From the documentation:

![image](https://github.com/Unleash/unleash/assets/455064/fc38f19f-09c3-4daa-a740-826d68cdbd06)
2023-12-01 22:33:02 +01:00
Jaanus Sellin
a299885e22
feat: update project overview endpoint (#5518)
1. Created new hook for endpoint
2. Start removing useProject hook, when features not needed.
2023-12-01 20:00:35 +02:00
Drew Gorton
87f03ea088
Docs: add redirect to docusaurus.config.js (#5516)
Docs: Add redirect from '/advanced/groups' to
'/reference/rbac'
2023-12-01 11:18:17 -06:00
Tymoteusz Czech
755c22f3b9
feat: features list pagination (#5496)
New paginated table - tested on /features-new behind a flag
2023-12-01 14:53:05 +00:00
andreas-unleash
be17b7f575
feat: new email template for scheduled-execution-failed email (#5519)
What it says on the box.

Relates to #
[1-1687](https://linear.app/unleash/issue/1-1687/send-an-email-when-the-scheduling-fails)


<img width="782" alt="Screenshot 2023-12-01 at 15 33 08"
src="https://github.com/Unleash/unleash/assets/104830839/513a0a71-5ca5-4ea7-8482-7903c8485737">

---------

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
Co-authored-by: Thomas Heartman <thomas@getunleash.io>
2023-12-01 15:48:13 +02:00
Tymoteusz Czech
fba80222de
Frontend OpenAPI types update (#5520) 2023-12-01 13:30:30 +00:00
Mateusz Kwasniewski
26f9cf98d5
refactor: feature oriented architecture for project-environment (#5510) 2023-12-01 12:41:46 +01:00
Jaanus Sellin
63f6af06da
feat: new project overview backend (#5344)
Adding new project overview endpoint and deprecating the old one.
The new one has extra info about feature types, but does not have
features anymore, because features are coming from search endpoint.
2023-12-01 11:20:24 +02:00
Gastón Fournier
9f3648dc81
chore: test migration backward compatibility (#5492)
## About the changes
This PR will validate that our current migrations are backward
compatible with the latest stable release of Unleash.
It will do so by starting a database, applying the latest migrations,
and then starting a docker container with the last stable unleash
release and running UI tests against it.

There's a risk that the current version of UI tests will not work with
the previous version of our UI. Because of that we copied the previous
version of cypress tests
(https://github.com/Unleash/unleash/tree/5.6/frontend/cypress) into oss
folder and removed the ones that are enterprise only. We can discuss a
better way of doing this to avoid having to maintain this folder always
in sync with the previous version of Unleash

This action will only run when there are changes in migrations or to
cypress tests.
2023-11-30 18:20:13 +01:00
andreas-unleash
02451baaf2
feat: hide change actions when change request is scheduled (#5514)
Added 'Scheduled' state to the check for non-pending change requests

Closes #
[1-1680](https://linear.app/unleash/issue/1-1680/remove-edit-change-ui-when-cr-is-scheduled)
<img width="868" alt="Screenshot 2023-11-30 at 11 54 44"
src="https://github.com/Unleash/unleash/assets/104830839/8e6afec5-1353-4030-b49b-4a8f3eaee5f6">

---------

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2023-11-30 12:52:29 +02:00
Jaanus Sellin
feae69643c
feat: created date operators for search (#5513)
1. Added operators for created date
2. Added better descriptions for searchable fields
2023-11-30 12:00:39 +02:00
Nuno Góis
44d85c0dcd
fix: UI navigation (reverts #5506) (#5512)
Latest version had a UI navigation bug where we wouldn't correctly
navigate to the tab and instead it would add infinitely to the
breadcrumbs / URL:


https://github.com/Unleash/unleash/assets/14320932/509fa528-7f9e-4476-a945-f74393e99dd5

This fixes the UI navigation by reverting
https://github.com/Unleash/unleash/pull/5506
2023-11-30 09:13:16 +00:00