1
0
mirror of https://github.com/Unleash/unleash.git synced 2025-02-19 00:15:43 +01:00
Commit Graph

5611 Commits

Author SHA1 Message Date
Thomas Heartman
abb0450a6a
fix: Use the right theme even if the payload is a variant. (#9292)
Also, use extra css selectors to increase specificity so that this
takes precedence over the MUI themes.

I don't like that we need to do this weird selector thing, but hey, it
is what it is.
2025-02-11 13:28:36 +00:00
Tymoteusz Czech
cac38b0cee
fix: font size flag change to boolean (#9290)
## About the changes
Fix for `uiGlobalFontSize` flag being returned as an object, which is truthy.
2025-02-11 13:24:18 +01:00
Thomas Heartman
63dbd40a2e
chore: add button styles to dark mode too (#9285)
This adds the same button stylings to the dark theme as we did to the
light theme in #9275.
2025-02-11 11:17:05 +01:00
Thomas Heartman
43a5d59225
fix: add legacy button styles (#9283)
Adds the button styles that were removed from `app.css` into the
legacy theme file. These change very slightly when the flag is on, and
because the hardcoded `app.css` styles have been removed, we'll use
the legacy file as fallback.
2025-02-11 09:32:26 +00:00
Thomas Heartman
65bec89d3c
chore(1-3356): make mui buttons respect font size changes (#9275)
Makes the MUI buttons use `body1.fontSize` for their own font size.

Turns out we had a hardcoded `16px` in the `app.css` file, which made it
hard to override. This change removes mui button styling in `app.css`
and puts it into the `theme.ts` file instead.

Also updates the border radius to match the one we use in the theme
(from 3px to 4px). It's a subtle change:

before:

![image](https://github.com/user-attachments/assets/a6f94250-9b4b-43e0-aa65-280f3fa007bb)


after:

![image](https://github.com/user-attachments/assets/3ef205c8-8119-4bf1-9541-39371b26dda9)
2025-02-11 08:33:27 +00:00
Thomas Heartman
fd1ad5ac5b
fix: some accessibility issues (#9282)
Fixes a small number of accessibility issues that Firefox was
complaining about (and some that I noticed myself):

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

Before:

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

After:

![image](https://github.com/user-attachments/assets/980114c6-6552-4e75-8a6c-281b97a8af03)
2025-02-11 09:16:20 +01:00
Tymoteusz Czech
23e8040cd9
refactor: theme - font size (#9273) 2025-02-11 09:07:27 +01:00
renovate[bot]
a0164e4c88
chore(deps): update dependency @tanstack/react-virtual to v3.12.0 (#9279)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@tanstack/react-virtual](https://tanstack.com/virtual)
([source](https://redirect.github.com/TanStack/virtual/tree/HEAD/packages/react-virtual))
| [`3.11.3` ->
`3.12.0`](https://renovatebot.com/diffs/npm/@tanstack%2freact-virtual/3.11.3/3.12.0)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@tanstack%2freact-virtual/3.12.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@tanstack%2freact-virtual/3.12.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@tanstack%2freact-virtual/3.11.3/3.12.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@tanstack%2freact-virtual/3.11.3/3.12.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>TanStack/virtual (@&#8203;tanstack/react-virtual)</summary>

###
[`v3.12.0`](https://redirect.github.com/TanStack/virtual/releases/tag/v3.12.0)

[Compare
Source](https://redirect.github.com/TanStack/virtual/compare/v3.11.3...v3.12.0)

Version 3.12.0 - 2/3/25, 4:02 AM

#### Changes

##### Feat

- virtual-core: add getVirtualIndexesAPI
([`a1cb9ce`](https://redirect.github.com/TanStack/virtual/commit/a1cb9ce))
by Kevin Van Cott

##### Other

-
([`a485978`](https://redirect.github.com/TanStack/virtual/commit/a485978))
by Kevin Van Cott

#### Packages

-
[@&#8203;tanstack/virtual-core](https://redirect.github.com/tanstack/virtual-core)[@&#8203;3](https://redirect.github.com/3).12.0
-
[@&#8203;tanstack/lit-virtual](https://redirect.github.com/tanstack/lit-virtual)[@&#8203;3](https://redirect.github.com/3).12.0
-
[@&#8203;tanstack/react-virtual](https://redirect.github.com/tanstack/react-virtual)[@&#8203;3](https://redirect.github.com/3).12.0
-
[@&#8203;tanstack/solid-virtual](https://redirect.github.com/tanstack/solid-virtual)[@&#8203;3](https://redirect.github.com/3).12.0
-
[@&#8203;tanstack/svelte-virtual](https://redirect.github.com/tanstack/svelte-virtual)[@&#8203;3](https://redirect.github.com/3).12.0
-
[@&#8203;tanstack/vue-virtual](https://redirect.github.com/tanstack/vue-virtual)[@&#8203;3](https://redirect.github.com/3).12.0
-
[@&#8203;tanstack/angular-virtual](https://redirect.github.com/tanstack/angular-virtual)[@&#8203;3](https://redirect.github.com/3).12.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 is behind base branch, 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 was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/Unleash/unleash).

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

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-02-10 18:10:28 +00:00
renovate[bot]
99a27d51a9
chore(deps): update dependency @codemirror/state to v6.5.2 (#9278)
This PR contains the following updates:

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

---

### Release Notes

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

###
[`v6.5.2`](https://redirect.github.com/codemirror/state/blob/HEAD/CHANGELOG.md#652-2025-02-03)

[Compare
Source](https://redirect.github.com/codemirror/state/compare/6.5.1...6.5.2)

##### Bug fixes

Fix a bug where reconfiguring a field with a new `init` value didn't
update the value of the field.

</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 is behind base branch, 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 was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/Unleash/unleash).

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

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-02-10 18:10:05 +00:00
Thomas Heartman
c3cef5be18
fix: don't check license in OSS (#9277)
The license check API call was giving me 404s in the console of the
OSS version of Unleash.

This changes the `useLicense` hook to use `useEnterpriseSWR` instead
of `useSWR` to avoid making the API call in the OSS version. This is
consistent with the `useLicenseCheck` hook in the same file.
2025-02-10 15:16:34 +01:00
Thomas Heartman
c4fa86b1aa
chore: make playground code editor height dynamic (#9271)
The playground code editor had a fixed height of `150px`. This works
well with the current font size, but if we're changing it, we'll end
up with too much height compared to the font size.

So instead, let's calculate the font size based on the current font
size.

Before this change (if you shrink font size):

![image](https://github.com/user-attachments/assets/cd6a5cc7-c5dc-421e-a34b-456cb1c318c7)

After this change:
 

![image](https://github.com/user-attachments/assets/b38cbc3d-7687-485f-8c36-244636b56f46)


It still looks the same with the old font size:

![image](https://github.com/user-attachments/assets/54cb69b3-4039-4422-9034-594aebc5a523)


Furthermore, this change uses `minHeight` instead of `height`, so that
if you have more JSON data, then you won't be stuck scrolling through 6
and 6 lines.

Before with lots of json:

![image](https://github.com/user-attachments/assets/8234fcd6-342c-44e7-a900-9893905c6191)


After with lots of json:

![image](https://github.com/user-attachments/assets/d77ee654-dfa5-4932-b0ed-0e6a39ca0b96)


And yes, the button doesn't respect the font size, but that's a
different task.
2025-02-10 12:36:16 +00:00
Nuno Góis
3bc72c84e0
chore: make truncator a span (#9272)
https://linear.app/unleash/issue/2-3255/make-truncator-a-span-instead-of-a-box

Makes the Truncator a `span` instead of a `Box`.

This should make it more flexible and help us avoid DOM nesting errors.
2025-02-10 12:29:58 +00:00
Simon Hornby
bf9fdd4f8d
feat: allow SCIM user deletion (#9190)
Co-authored-by: Gastón Fournier <gaston@getunleash.io>
2025-02-10 14:17:46 +02:00
Thomas Heartman
cdeb515488
chore: removes extra border on collapse for the event timeline (#9270)
Fixes a small visual glitch where the event timeline panel (which
usually doesn't have a bottom border on the summary) would get a
bottom border during the collapsing animation.

This happens because to make the border act as we want, we switch
between using the summary's bottom border and the content's top
border, and I'd only updated one of the borders to respect the new
design.
2025-02-10 10:52:32 +01:00
Thomas Heartman
2b668bc5c8
fix: open/close animation on personal dashboard is choppy (#9253)
Extracts each panel into its own component for the personal dashboard.
This lets us use separate states for each panel, which in turn lets each
panel change its open / close state without causing the other panels to
re-render.

When you have a lot of flags and/or projects, the list to render becomes
very long, which causes performance problems, especially when you need
to rerender both flags and projects and the timeline whenever one of
them changes.

The problems were especially noticeable in Firefox for me. Even with
this, the event timeline is a little choppy. I suspect that's because of
it might take a long time to paint? But we can look into that later.

Also updates the dashboard state hook to let you only pass in the
flags/projects you want. We could extract this into three different
hooks that all use the same localhost key, but I'm not sure whether
that's better or worse 🤷🏼
2025-02-10 10:40:26 +01:00
Nuno Góis
c07fb589a7
chore: add release management to new in unleash (#9257)
https://linear.app/unleash/issue/2-3244/add-release-management-to-new-in-unleash

Adds release management to "New in Unleash".


![image](https://github.com/user-attachments/assets/5bbfc502-f730-4cd4-bf5e-747f1fe9e773)
2025-02-07 14:33:25 +00:00
Nuno Góis
13ac0567c5
chore: make the milestone status a button (#9255)
https://linear.app/unleash/issue/2-3251/make-the-milestone-status-action-link-and-icon-a-proper-button-that

Makes the milestone status a button while trying to keep most of the
original design intact.


![image](https://github.com/user-attachments/assets/677cb9df-8ae2-4244-8d07-6cd2bd1da5fe)
2025-02-07 14:03:59 +00:00
Thomas Heartman
c02c5a4d47
fix(1-3296): don't navigate through the list on tab (#9259)
Prevents tab from navigating you through the list of results. Instead
makes it so that the tab key always takes you to the next item in the
same hierarchy.

As a bonus: also automatically closes the menu when you navigate
away (the previous implementation has a bug where it wouldn't if you
shift-tab).

The behavior of not letting you navigate the list with tab is
consistent with native HTML select elements as well as MUI select
elements. You typically navigate them with the arrow keys.
2025-02-07 14:58:05 +01:00
Thomas Heartman
4f30ce7155
chore(1-3349): no border for event timeline / dropdowns to the right (#9252)
Removes the border between the accordion summary and its contents for
the event timeline, and moves dropdown selectors to the right to avoid
overcrowding on the left.


![image](https://github.com/user-attachments/assets/b0df4c11-8e61-46f8-b844-349a709bd4e9)
2025-02-07 11:11:54 +01:00
Thomas Heartman
f9bd9d2d03
Adds a more visible focus indicator to the filter chips (#9251)
When the filter chip is focused, adds a 1px solid outline in the theme's
primary color. This makes it easier to tell when the chip has focused.

Additionally, adds a slight refactor in how we call the event log result
component. I'm pretty sure I've seen react docs say that you should
always use the component calling instead of a regular function call, so
this does that.

Before (the first chip has focus; can you tell?):

![image](https://github.com/user-attachments/assets/8fb4382c-9a38-4d77-acc2-35ae9fed1180)

After:

![image](https://github.com/user-attachments/assets/7f6969c3-059f-4c0f-bbfc-9a295adf4070)


Optionally, we could do something similar to on hover (first one has
focus again), but it's kinda subtle and .. I don't think it's a theme
color we have defined:

![image](https://github.com/user-attachments/assets/3fc10d34-858f-4007-9a80-06c4df2fc756)
2025-02-07 10:22:08 +01:00
renovate[bot]
9d453e6881
chore(deps): update yarn to v4.6.0 (#9248)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [yarn](https://redirect.github.com/yarnpkg/berry)
([source](https://redirect.github.com/yarnpkg/berry/tree/HEAD/packages/yarnpkg-cli))
| [`4.5.3` ->
`4.6.0`](https://renovatebot.com/diffs/npm/yarn/4.5.3/4.6.0) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/@yarnpkg%2fcli/4.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@yarnpkg%2fcli/4.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@yarnpkg%2fcli/4.5.3/4.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@yarnpkg%2fcli/4.5.3/4.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>yarnpkg/berry (yarn)</summary>

###
[`v4.6.0`](2fe7d635e8...1871484db8)

[Compare
Source](2fe7d635e8...1871484db8)

</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 is behind base branch, 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 was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/Unleash/unleash).

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

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-02-06 18:49:16 +00:00
renovate[bot]
6602e664a1
chore(deps): update testing-library monorepo (#9247)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
|
[@testing-library/react](https://redirect.github.com/testing-library/react-testing-library)
| [`16.1.0` ->
`16.2.0`](https://renovatebot.com/diffs/npm/@testing-library%2freact/16.1.0/16.2.0)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@testing-library%2freact/16.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@testing-library%2freact/16.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@testing-library%2freact/16.1.0/16.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@testing-library%2freact/16.1.0/16.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[@testing-library/user-event](https://redirect.github.com/testing-library/user-event)
| [`14.5.2` ->
`14.6.1`](https://renovatebot.com/diffs/npm/@testing-library%2fuser-event/14.5.2/14.6.1)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@testing-library%2fuser-event/14.6.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@testing-library%2fuser-event/14.6.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@testing-library%2fuser-event/14.5.2/14.6.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@testing-library%2fuser-event/14.5.2/14.6.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>testing-library/react-testing-library
(@&#8203;testing-library/react)</summary>

###
[`v16.2.0`](https://redirect.github.com/testing-library/react-testing-library/releases/tag/v16.2.0)

[Compare
Source](https://redirect.github.com/testing-library/react-testing-library/compare/v16.1.0...v16.2.0)

##### Features

- Add support for React error handlers
([#&#8203;1354](https://redirect.github.com/testing-library/react-testing-library/issues/1354))
([9618c51](9618c51337))

</details>

<details>
<summary>testing-library/user-event
(@&#8203;testing-library/user-event)</summary>

###
[`v14.6.1`](https://redirect.github.com/testing-library/user-event/releases/tag/v14.6.1)

[Compare
Source](https://redirect.github.com/testing-library/user-event/compare/v14.6.0...v14.6.1)

##### Bug Fixes

- correct description for `delay` option
([#&#8203;1175](https://redirect.github.com/testing-library/user-event/issues/1175))
([2edf14d](2edf14d2e7))
- **keyboard:** add `ContextMenu` to `defaultKeyMap`
([#&#8203;1079](https://redirect.github.com/testing-library/user-event/issues/1079))
([3e471d1](3e471d1feb))
- **keyboard:** add brackets to `defaultKeyMap`
([#&#8203;1226](https://redirect.github.com/testing-library/user-event/issues/1226))
([543ecb0](543ecb0ea9))
- **keyboard:** walk through radio group per arrow keys
([#&#8203;1049](https://redirect.github.com/testing-library/user-event/issues/1049))
([bf8111c](bf8111ca9f))
- **pointer:** dispatch mouse events if `pointerdown` is
`defaultPrevented`
([#&#8203;1121](https://redirect.github.com/testing-library/user-event/issues/1121))
([f681f7b](f681f7bbfe))
- **pointer:** set `button` and `buttons` properties on `PointerEvent`
([#&#8203;1219](https://redirect.github.com/testing-library/user-event/issues/1219))
([6614f72](6614f7282c))
- **pointer:** use `1` as default value for `PointerEvent.width` and
`PointerEvent.height`
([#&#8203;1224](https://redirect.github.com/testing-library/user-event/issues/1224))
([f0468d0](f0468d04d7))
- prevent `click` event loop on form-associated custom element
([#&#8203;1238](https://redirect.github.com/testing-library/user-event/issues/1238))
([465fc7e](465fc7eb49))
- prevent `click` event on non-focusable control
([#&#8203;1130](https://redirect.github.com/testing-library/user-event/issues/1130))
([e429094](e429094865))
- **upload:** apply `accept` filter more leniently
([#&#8203;1064](https://redirect.github.com/testing-library/user-event/issues/1064))
([a344ad4](a344ad4dfe))

###
[`v14.6.0`](https://redirect.github.com/testing-library/user-event/releases/tag/v14.6.0)

[Compare
Source](https://redirect.github.com/testing-library/user-event/compare/v14.5.2...v14.6.0)

##### Features

- dispatch `FocusEvent` in hidden documents
([#&#8203;1252](https://redirect.github.com/testing-library/user-event/issues/1252))
([1ed8b15](1ed8b1557b))

##### Bug Fixes

- **clipboard:** await `DataTransferItem.getAsString()` callback
([#&#8203;1251](https://redirect.github.com/testing-library/user-event/issues/1251))
([7b11b0e](7b11b0e88a))
- **event:** assign pointer coords to MouseEvent
([#&#8203;1039](https://redirect.github.com/testing-library/user-event/issues/1039))
([8528972](8528972577))
- **pointer:** check `PointerCoords.x` in `isDifferentPointerPosition`
([#&#8203;1216](https://redirect.github.com/testing-library/user-event/issues/1216))
([75edef5](75edef5c06))
- **pointer:** check all fields of `PointerCoords` in
`isDifferentPointerPosition()`
([#&#8203;1229](https://redirect.github.com/testing-library/user-event/issues/1229))
([5f3d28f](5f3d28fe3a))

</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 is behind base branch, or you tick the
rebase/retry checkbox.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get
[config
help](https://redirect.github.com/renovatebot/renovate/discussions) if
that's undesired.

---

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

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/Unleash/unleash).

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

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-02-06 18:46:58 +00:00
Tymoteusz Czech
4e36d2285e
chore: remove sortProjectRoles flag (#9226) 2025-02-06 19:40:10 +01:00
Nuno Góis
21fb9a3118
chore: release management plausible events (#9230)
https://linear.app/unleash/issue/2-2834/plausible

Adds the following Plausible events to the Release management feature:
 - Add plan
 - Start milestone
 - Remove plan
 - Create template
 - Edit template
 - Delete template
2025-02-06 16:09:15 +00:00
David Leek
e689e2e3d2
feat: implement dialogs for changerequest milestone handling and removing release plans (#9240) 2025-02-06 16:45:24 +01:00
Thomas Heartman
61f8236711
chore: changes the panel title to "Event timeline" (#9245)
Keeps it consistent with the previous title for this component and
with what it's known as in the docs.
2025-02-06 15:30:27 +01:00
Thomas Heartman
56c9584bb6
feat: move timeline to panel (#9243)
Moves the event timeline to the personal dashboard from the header when
the `frontendHeaderRedesign` flag is active.

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


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

---------

Co-authored-by: Nuno Góis <github@nunogois.com>
2025-02-06 13:55:59 +00:00
Tymoteusz Czech
54e4fd2190
chore: remove lifecycle v2 flag (#9224) 2025-02-06 14:54:45 +01:00
Nuno Góis
4871cd57d1
chore: mark release management as an enterprise feature (#9229)
https://linear.app/unleash/issue/2-3093/sales-pitch-ui-for-release-management-to-show-non-enterprise-users

Marks Release Management as a premium Enterprise feature.

Once the `releasePlans` flag is enabled for everyone / removed, this is
what non-Enterprise users will see:


![image](https://github.com/user-attachments/assets/7191fb09-976e-4e14-8e2f-6db114b5e2ca)
2025-02-06 09:59:38 +00:00
Thomas Heartman
2ff385a4b6
fix(1-3295): fix broken skip link (#9239)
Fixes the issue where the skip link wouldn't take you to the main
content of the page anymore.

Also includes a few related minor semantic and a11y improvements:

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

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

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

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


When it doesn't have focus, it's invisible.
2025-02-06 10:21:56 +01:00
renovate[bot]
cc25a2134c
chore(deps): update dependency swr to v2.3.0 (#9235)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [swr](https://swr.vercel.app)
([source](https://redirect.github.com/vercel/swr)) | [`2.2.5` ->
`2.3.0`](https://renovatebot.com/diffs/npm/swr/2.2.5/2.3.0) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/swr/2.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/swr/2.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/swr/2.2.5/2.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/swr/2.2.5/2.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>vercel/swr (swr)</summary>

###
[`v2.3.0`](https://redirect.github.com/vercel/swr/compare/v2.2.5...v2.3.0)

[Compare
Source](https://redirect.github.com/vercel/swr/compare/v2.2.5...v2.3.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 is behind base branch, 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 was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/Unleash/unleash).

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

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-02-05 21:25:54 +00:00
renovate[bot]
bec490df3c
chore(deps): update dependency semver to v7.7.0 (#9233)
This PR contains the following updates:

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

---

### Release Notes

<details>
<summary>npm/node-semver (semver)</summary>

###
[`v7.7.0`](https://redirect.github.com/npm/node-semver/blob/HEAD/CHANGELOG.md#770-2025-01-29)

[Compare
Source](https://redirect.github.com/npm/node-semver/compare/v7.6.3...v7.7.0)

##### Features

-
[`0864b3c`](0864b3ce79)
[#&#8203;753](https://redirect.github.com/npm/node-semver/pull/753) add
"release" inc type
([#&#8203;753](https://redirect.github.com/npm/node-semver/issues/753))
([@&#8203;mbtools](https://redirect.github.com/mbtools))

##### Bug Fixes

-
[`d588e37`](d588e37828)
[#&#8203;755](https://redirect.github.com/npm/node-semver/pull/755)
diff: fix prerelease to stable version diff logic
([#&#8203;755](https://redirect.github.com/npm/node-semver/issues/755))
([@&#8203;eminberkayd](https://redirect.github.com/eminberkayd),
berkay.daglar)
-
[`8a34bde`](8a34bdecc7)
[#&#8203;754](https://redirect.github.com/npm/node-semver/pull/754) add
identifier validation to `inc()`
([#&#8203;754](https://redirect.github.com/npm/node-semver/issues/754))
([@&#8203;mbtools](https://redirect.github.com/mbtools))

##### Documentation

-
[`67e5478`](67e54785a0)
[#&#8203;756](https://redirect.github.com/npm/node-semver/pull/756)
readme: added missing period for consistency
([#&#8203;756](https://redirect.github.com/npm/node-semver/issues/756))
([@&#8203;shaymolcho](https://redirect.github.com/shaymolcho))
-
[`868d4bb`](868d4bbe3d)
[#&#8203;749](https://redirect.github.com/npm/node-semver/pull/749)
clarify comment about obsolete prefixes
([#&#8203;749](https://redirect.github.com/npm/node-semver/issues/749))
([@&#8203;mbtools](https://redirect.github.com/mbtools),
[@&#8203;ljharb](https://redirect.github.com/ljharb))

##### Chores

-
[`145c554`](145c554b8c)
[#&#8203;741](https://redirect.github.com/npm/node-semver/pull/741) bump
[@&#8203;npmcli/eslint-config](https://redirect.github.com/npmcli/eslint-config)
from 4.0.5 to 5.0.0
([@&#8203;dependabot](https://redirect.github.com/dependabot)\[bot])
-
[`753e02b`](753e02b9d0)
[#&#8203;747](https://redirect.github.com/npm/node-semver/pull/747) bump
[@&#8203;npmcli/template-oss](https://redirect.github.com/npmcli/template-oss)
from 4.23.3 to 4.23.4
([#&#8203;747](https://redirect.github.com/npm/node-semver/issues/747))
([@&#8203;dependabot](https://redirect.github.com/dependabot)\[bot],
[@&#8203;npm-cli-bot](https://redirect.github.com/npm-cli-bot))
-
[`0b812d5`](0b812d5fb5)
[#&#8203;744](https://redirect.github.com/npm/node-semver/pull/744)
postinstall for dependabot template-oss PR
([@&#8203;hashtagchris](https://redirect.github.com/hashtagchris))

</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 is behind base branch, or you tick the
rebase/retry checkbox.

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

---

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

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/Unleash/unleash).

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

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-02-05 18:38:47 +00:00
renovate[bot]
811c1c64ad
chore(deps): update dependency react-confetti to v6.2.2 (#9232)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [react-confetti](https://redirect.github.com/alampros/react-confetti)
| [`6.1.0` ->
`6.2.2`](https://renovatebot.com/diffs/npm/react-confetti/6.1.0/6.2.2) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/react-confetti/6.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/react-confetti/6.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/react-confetti/6.1.0/6.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/react-confetti/6.1.0/6.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>alampros/react-confetti (react-confetti)</summary>

###
[`v6.2.2`](https://redirect.github.com/alampros/react-confetti/releases/tag/v6.2.2)

[Compare
Source](https://redirect.github.com/alampros/react-confetti/compare/v6.2.1...v6.2.2)

##### Bug Fixes

- build multiple module types
([3be757d](3be757d656)),
closes
[#&#8203;162](https://redirect.github.com/alampros/react-confetti/issues/162)
[#&#8203;158](https://redirect.github.com/alampros/react-confetti/issues/158)

###
[`v6.2.1`](https://redirect.github.com/alampros/react-confetti/blob/HEAD/CHANGELOG.md#621-2024-12-27)

[Compare
Source](https://redirect.github.com/alampros/react-confetti/compare/v6.2.0...v6.2.1)

##### Bug Fixes

- specify commonjs module
([aa99153](aa99153ccb))

###
[`v6.2.0`](https://redirect.github.com/alampros/react-confetti/blob/HEAD/CHANGELOG.md#620-2024-12-27)

[Compare
Source](https://redirect.github.com/alampros/react-confetti/compare/v6.1.0...v6.2.0)

##### Features

- update `peerDependencies` to support React 19
([ce2d40a](ce2d40a65c))
- upgrade tooling
([9c84a99](9c84a9941b))

</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 is behind base branch, 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 was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/Unleash/unleash).

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

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-02-05 18:38:30 +00:00
Nuno Góis
9fa7f5aa7b
chore: release plan changes in change request view (#9225)
https://linear.app/unleash/issue/2-3169/add-release-plan-ui-representation-in-change-request-ui

Adds visual representations for release plan change requests.

### Add release plan


![image](https://github.com/user-attachments/assets/8511c6a3-c83e-4eee-aa18-9affe4a9ac1d)

### Remove release plan


![image](https://github.com/user-attachments/assets/ed13f9ac-140c-40c9-a1a2-3c066c89c09a)

### Start milestone


![image](https://github.com/user-attachments/assets/ac8e5408-e877-470c-a98b-295b41444bfa)


![image](https://github.com/user-attachments/assets/abf19a55-89df-4dd8-8738-9dfcd63949b7)
2025-02-05 15:27:36 +00:00
Thomas Heartman
90e5adb695
chore: use union type for traffic search data (#9221)
Makes the data returned from the traffic search a union type to avoid
nasty object-is-undefined errors at runtime.

It requires more explicit handling, sure, but it means we don't need
to accept undefined.
2025-02-05 10:50:39 +00:00
Thomas Heartman
17a4099dbf
refactor: add functions to estimate monthly usage from data directly (#9219)
Adds new monthly estimation functions that operate on raw usage data
instead of chart data. This brings those methods in line with the rest
of the traffic calculation functions that we have in that file and means
we can remove other external dependencies.

 This is somewhat inspired by #9218, but not directly linked.
2025-02-05 11:12:17 +01:00
Thomas Heartman
543be6dede
chore(1-3342): extract into hook, use new endpoint if flag on (#9218)
Updates the existing BillingDetails pages (pro and payg) to use the new
traffic search endpoint (and calculations) if the flag to do so is on.
Otherwise, it falls back to using the existing method.

I've extracted the overage calculation into a separate shared hook.
2025-02-05 10:45:41 +01:00
Thomas Heartman
bd6a90ffd4
chore: add tests for new traffic usage functions (#9208)
This PR adds tests to all the TODOs created in
https://github.com/Unleash/unleash/pull/9191.

Additionally it finally manages to refactor the `toChartData` function.
2025-02-05 09:47:36 +01:00
renovate[bot]
29a4fe6c5d
chore(deps): update dependency cypress-vite to v1.6.0 (#9215)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [cypress-vite](https://redirect.github.com/mammadataei/cypress-vite) |
[`1.5.0` ->
`1.6.0`](https://renovatebot.com/diffs/npm/cypress-vite/1.5.0/1.6.0) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/cypress-vite/1.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/cypress-vite/1.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/cypress-vite/1.5.0/1.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/cypress-vite/1.5.0/1.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>mammadataei/cypress-vite (cypress-vite)</summary>

###
[`v1.6.0`](https://redirect.github.com/mammadataei/cypress-vite/blob/HEAD/CHANGELOG.md#160-2024-12-31)

[Compare
Source](https://redirect.github.com/mammadataei/cypress-vite/compare/v1.5.0...v1.6.0)

##### Features

- add support for vite v6
([#&#8203;104](https://redirect.github.com/mammadataei/cypress-vite/issues/104))
([6680e60](6680e60107))

</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 is behind base branch, 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 was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/Unleash/unleash).

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

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-02-05 01:39:45 +00:00
renovate[bot]
31b1ee70e3
fix(deps): update dependency json-2-csv to v5.5.8 (#9211)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [json-2-csv](https://mrodrig.github.io/json-2-csv)
([source](https://redirect.github.com/mrodrig/json-2-csv)) | [`5.5.7` ->
`5.5.8`](https://renovatebot.com/diffs/npm/json-2-csv/5.5.7/5.5.8) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/json-2-csv/5.5.8?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/json-2-csv/5.5.8?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/json-2-csv/5.5.7/5.5.8?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/json-2-csv/5.5.7/5.5.8?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>mrodrig/json-2-csv (json-2-csv)</summary>

###
[`v5.5.8`](https://redirect.github.com/mrodrig/json-2-csv/releases/tag/5.5.8):
NPM Release v5.5.8

[Compare
Source](https://redirect.github.com/mrodrig/json-2-csv/compare/5.5.7...5.5.8)

- Incorporates [@&#8203;sevrai](https://redirect.github.com/sevrai)'s
fix from
[#&#8203;271](https://redirect.github.com/mrodrig/json-2-csv/issues/271)
-   Dev Dependency vulnerability patch

</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 is behind base branch, 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 was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/Unleash/unleash).

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

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-02-04 18:46:10 +00:00
Gastón Fournier
a4a5687687
feat: render markdown in toats (#9207)
## About the changes
Toasts sometimes render messages that are in markdown format. This
changes how we display them from

![image](https://github.com/user-attachments/assets/61930d1d-b54c-49a0-b982-af1484cd2981)
to this:
![Screenshot from 2025-02-04
15-23-36](https://github.com/user-attachments/assets/a569345c-abf5-4d9d-9cf6-4c94701689c7)
2025-02-04 16:35:25 +01:00
Gastón Fournier
ae65919f92
fix: license banner using message type (#9209)
## About the changes
Actually uses messageType and maps from warn to warning.
2025-02-04 15:14:47 +00:00
Thomas Heartman
c85c687816
chore(1-3335): filters data coming from the API to remove data points we're not interested in (#9205)
Implements a function that cleans and filters incoming data from the
new traffic API.

Specifically, it:
- Removes `/edge` data points
- Removes any data from before may 2024, which is the first full month
we have on record

Because all uses of the existing hook do this filtering themselves, I
have added the filtering at the hook level. This is to avoid
forgetting this filtering later. If we find out we need this data, we
can move the filtering.
2025-02-04 13:26:08 +01:00
Thomas Heartman
96dac84880
refactor: period selector component (#9202)
Refactors the period selector component now that the design / system is
pretty much finished.

Main points are: change from using CSS selectors to using styled
components; use props instead of classes. This is in keeping with the
general Unleash approach.

There's two very slight visual changes here:
1. There is 4px of added space below the "range" "header" text.
2. The months in the grid are a little closer together and not as wide.
This is because we remove the explicit column gap due to the grid having
a set width. Previously the width was automatic, but because we want
this to line up with the button, we need to set the width explicitly on
both items. As such, with the padding, the grid was a little too wide,
so there was too little padding on the right. This rectifies that.
2025-02-04 11:37:58 +01:00
Thomas Heartman
2980c0de4e
refactor(1-3336): useTrafficData / NetworkTrafficUsage.tsx cleanup (#9191)
This PR refactors the `NetworkTrafficUsage.tsx` and `useTrafficData`
files a bit.

The primary objective was to make the network traffic usage component
easier to work with, so I suggest to the reviewer that they start there.

Part of that refactoring, was taking things out of the useTraffic hook
that didn't need to be there. In the end, I'd removed so much that I
didn't even need the hook itself in the new component, so I switched
that to a regular useState.

It made more sense to me to put some of the functions inside the hook
into a separate file and import them directly (because they don't rely
on any hook state), so I have done that and removed those functions from
the trafficData hook. In this case, I also moved the tests.

I have not added any new tests in this PR, but will do so in a
follow-up. The functions I intend to test have been marked as such.
2025-02-04 10:32:59 +01:00
Tymoteusz Czech
c1e41b2b05
fix: users groups table columns on small screens (#9194)
On page "edit users for group", prevent user names and avatars form
disappearing on devices with small screen.
2025-02-04 10:19:40 +01:00
Mateusz Kwasniewski
c68a542a63
refactor: project users virtual autocomplete (#9196) 2025-02-04 10:04:36 +01:00
Melinda Fekete
ef8191c68d
Update API tokens and client keys pages (#9143) 2025-02-04 09:32:32 +01:00
Mateusz Kwasniewski
c86ea091b7
feat: virtual autocomplete (#9181) 2025-02-03 16:07:24 +01:00
Gastón Fournier
b9aa554b0d
feat: ability to communicate other license messages (#9192)
## About the changes
This gives us the ability to communicate other license messages which
are not errors. By default they'll be warning but I'm opening the
possibility of using a backend-provided value to make them informative
instead of warning.

The intention is to communicate things like:
- Your license is about to expire in x days.
- You are getting close to the maximum number of seats in your license
- etc
2025-02-03 15:17:06 +01:00