1
0
mirror of https://github.com/Unleash/unleash.git synced 2025-06-04 01:18:20 +02:00
Commit Graph

4031 Commits

Author SHA1 Message Date
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
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
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
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
Thomas Heartman
fd1ad31bb5
fix: make traffic usage test more robust by using this month's actual numbers (#9193)
The test was breaking because it assumed a month would have at least
30 days.

Because the test relies on the current month, this isn't necessarily
true.

Further, there's parts of the code that relies on "impure" state via
the "current date" (which will change based on when you run it), so
setting a specific month in the test won't work.

As such, this test makes the calculation explicit and uses the number
of days in the current month.
2025-02-03 13:29:07 +00:00
Thomas Heartman
bd12cfce7c
fix(1-3334): re-align the dropdown menu with the dropdown (#9188)
Makes it so that the dropdown menu sits below the dropdown button,
rather than being offset to the end of the containing flexbox.

The issue was caused by the surrounding container being a flexbox.
This caused the popover anchor to grow to the full height of the box,
making the menu look offset.

By using `align-items: start`, we get around this.

Before

![image](https://github.com/user-attachments/assets/0f044627-05a3-4225-9a25-b20393c40158)


After:

![image](https://github.com/user-attachments/assets/9a6d1d7f-7f18-48d3-abdf-f4bb7c02ba68)
2025-02-03 11:00:15 +01:00
Thomas Heartman
e72a7c1197
chore(1-3316): update request info boxes to new design (#9180)
Updates the existing number of requests and overage info boxes to the
new design.

The existing versions of the boxes had some issues on narrower screens,
so it was easier to just leave them as is and start from scratch.

The previous boxes on narrow screens:

![image](https://github.com/user-attachments/assets/f3efa00d-ac0d-41ed-82d8-11766e043cb5)


The current ones (from wide to narrower):
Wide

![image](https://github.com/user-attachments/assets/0a48c013-afcd-4652-9229-0fca19a83733)

Mid (the text should probably ideally wrap at the same time here, but
I'm not sure how at the moment)

![image](https://github.com/user-attachments/assets/2ea3a672-80a6-4445-ae90-736c91c6e88e)

Narrow

![image](https://github.com/user-attachments/assets/03e3de0e-23c1-436a-8f6c-4c78cd4fdae7)

Extra narrow:

![image](https://github.com/user-attachments/assets/652c0c3b-71b1-4b2e-9e86-217f0c827aa6)



There's still some work we **could** do, but we should have UX have a
look first. In particular, it's about how the text wraps in certain
places etc, but I think it's good enough for now.

I'll come back with tests for the calculations and some refactoring and
cleanup in a followup.
2025-01-31 14:05:36 +01:00
Nuno Góis
25e8f80f21
chore: drag to reorder release plan template milestones (#9176)
https://linear.app/unleash/issue/2-2821/drag-to-reorder-template-milestones

This PR introduces reordering release plan template milestones by
dragging and dropping them.

Was a bit undecided on the approach, but it seems like using an old
`useDragItem` hook we have is pretty elegant and behaves as expected.

I suggest reviewers try it out themselves.

Includes a slight refactor to `useDragItem`, which so far is only used
here and in environments. I manually tested, but I suggest trying that
one out as well just in case.


![image](https://github.com/user-attachments/assets/3e433f70-53f8-4860-a704-60361f3b0ed7)
2025-01-31 09:12:27 +00:00
Mateusz Kwasniewski
ec014c0fdf
feat: limit user filter options (#9179) 2025-01-31 10:09:29 +01:00
David Leek
b04079c82d
feat: send the add release plan change request from dialog when submitted (#9174) 2025-01-30 10:56:31 +01:00
Nuno Góis
91d318a495
chore: add hint to release plan template gradual rollout strategy groupId (#9171)
https://linear.app/unleash/issue/2-3101/ui-hint-for-gradual-rollout-groupid-magic-string-featurename

Explains the current release plan milestone gradual rollout strategy
groupId behavior with an HelpIcon and a tooltip next to the field, when
creating or editing a release plan template.


![image](https://github.com/user-attachments/assets/46f3d943-d9cf-4670-b05b-322c14401a19)
2025-01-29 15:39:02 +00:00
Thomas Heartman
08c016b755
chore: minor button style adjustments (#9170)
Make it look more like a dropdown
2025-01-29 15:43:10 +01:00
Thomas Heartman
f4556839c8
feat(1-3281): wraps the new datepicker in a dropdown (#9169)
Wraps the datepicker in a popover, making it function largely the same
as a dropdown list.

The dropdown displays one of:
- "current month" if you've selected the current month
- "<month> <year>" (e.g. "December 2024") if you've selected a month
that isn't the current month
- "Last n months" (e.g. "Last 3 months") if you have selected a range

Additionally, the range selections have been updated to span the whole
row, aligning with the look of generic dropdown lists.


![image](https://github.com/user-attachments/assets/d356aec5-d51b-42fa-9591-60e2b5038a8e)

Like with the rest of this file (`PeriodSelector`), the code is rough
and not according to Unleash standards. However, I'm prioritizing fast
changes so UX can have a look before I clean up the code to switch to
using styled components etc later. It's still behind a flag, so I'm not
very worried about it.
2025-01-29 15:29:30 +01:00
Thomas Heartman
7ca8cc2276
fix: dynamic highlight width (#9166)
This makes the width of the highlight bars in the network dynamic and
based on the number of labels included in the chart.

Since the number of labels should always correspond to the number of
data points, this seems like a sensible approach.

With this, the label width will now be calculated on the fly, so even if
you resize the window or change the number of labels, the highlighting
will still work as expected.

Daily view:

![image](https://github.com/user-attachments/assets/e1d158db-0587-46b3-afb1-76dfc523505d)

Monthly aggregate:

![image](https://github.com/user-attachments/assets/8c74d2a3-afc8-4623-8ac7-0c263c7e6037)

The labels are now a little narrower on the daily graphs, but it avoids
them being super wide on the monthly graphs
2025-01-29 12:03:31 +01:00
Thomas Heartman
87a84426ec
feat(1-3267): use new API for chart creation (#9149)
Adds support for the new /traffic-search API behind a flag. When active, you'll be able to select month ranges as well as specific single months.

Largely copies the existing network traffic component, and adds some minor tweaks to make it work with the new data.

This is quite rough, but it gives us a base to build on for later. There's still things that we need to solve for in following PRs.
2025-01-29 10:43:41 +01:00
Thomas Heartman
d0fa929847
chore(1-3267): add orval schemas for the new API endpoint (#9164)
Adds Orval schemas for the new API enpdoint to display monthly/daily
traffic data usage.
2025-01-29 09:11:29 +01:00
Fredrik Strand Oseberg
18857c8992
fix: commandbar colors (#9162)
Searchbar should be white when the new header is active.
2025-01-28 14:48:15 +01:00
Fredrik Strand Oseberg
1fba4e10d1
fix: tabs not growing to fill all available space (#9161)
Fix an issue where tabs would fill out all available space, now it's
left aligned.
2025-01-28 14:17:02 +01:00
Fredrik Strand Oseberg
378bbe5133
feat: configurable global font size (#9155)
This PR sets up the application to accept a value from a variant we
control to set the font size of the application on a global level. If it
fails, the value falls back to the previously set CSS value.
2025-01-27 14:43:32 +01:00
David Leek
7aefc573dc
feat: show a dialog when adding a release plan to a change request enabled feature environment (#9139) 2025-01-23 13:48:44 +01:00
David Leek
09872ae760
chore: create the releasePlanChangeRequests feature flag (#9126) 2025-01-21 14:26:22 +01:00
Thomas Heartman
e4eab4587c
fix: add a hover color for buttons in the period selectors. (#9125)
Adds the same hover color as for the sidebar. Also adds a transition
animation.
2025-01-21 13:23:07 +01:00
Thomas Heartman
5846952d7c
fix: specify colors for buttons (#9124)
Fixes an issue where the buttons would be illegible in dark mode
because we don't set the color explicitly. It just happened to work in
light mode.
2025-01-21 12:51:20 +01:00
Thomas Heartman
857c91b803
feat(1-3262): initial impl of new month/range picker (#9122)
This PR implements a first version of the new month/range picker for the
data usage graphs. It's minimally hooked up to the existing
functionality to not take anything away.

This primary purpose of this PR is to get the design and interaction out
on sandbox so that UX can have a look and we can make adjustments.

As such, there are a few things in the code that we'll want to clean up
before removing the flag later:
- for faster iteration, I've used a lot of CSS nesting and element
selectors. this isn't usually how we do it here, so we'll probably want
to extract into styled components later
- there is a temporary override of the value in the period selector so
that you can select ranges. It won't affect the chart state, but it
affects the selector state. Again, this lets you see how it acts and
works.
- I've added a `NewHeader` component because the existing setup smushed
the selector (it's a MUI grid setup, which isn't very flexible). I don't
know what we want to do with this in the end, but the existing chart
*does* have some problems when you resize your window, at least
(although this is likely due to the chart, and can be solved in the same
way that we did for the personal dashboards).


![image](https://github.com/user-attachments/assets/f3ce3ff9-bab3-4d00-afbe-56f5624fbe16)
2025-01-21 12:15:43 +01:00
Tymoteusz Czech
08a28c99d6
fix: align project roles checkboxes (#9123)
Fix checkbox alignment and grouping
2025-01-21 10:34:20 +00:00
Tymoteusz Czech
874aeacca1
fix: resolve lifecycle image from asset path (#9121) 2025-01-20 13:23:55 +00:00
Tymoteusz Czech
666b5b7000
feat: New in Unleash - Lifecycle 2.0 (#9112) 2025-01-20 11:50:44 +00:00
Thomas Heartman
f6479b1adb
chore(1-3267): use the user's locale settings for formatting the tooltip date (#9113)
This PR updates the tooltip date display in the traffic usage chart to
use the user's chosen locale settings, falling back to en-US if the
settings are unavailable or otherwise unset.

So, for instance, if I have set my locale to "ja-JP", I'd get this
instead of the en US format:

![image](https://github.com/user-attachments/assets/4c1dbeab-3275-405d-ab8b-90f24531caff)
2025-01-17 11:56:40 +01:00
David Leek
2d340f6a21
chore: fix traffic data timezone visualization issue with getUTCDate (#9110) 2025-01-17 09:59:15 +01:00
Fredrik Strand Oseberg
25c09c3627
feat: transparent header (#9108)
This PR adds header redesign behind a feature flag
2025-01-17 09:45:45 +01:00
Tymoteusz Czech
4b3b98f263
feat: update lifecycle tooltip style (#9107)
New tooltips for lifecycle indicators.
- removed "timeline" lifecycle explanation
- new descriptions
- changed tooltip footer colors
- refactored "environments" section
2025-01-16 15:53:03 +00:00
Tymoteusz Czech
50ab2c9d61
feat: rename lifecycle stages (#9102)
Name names for "lifecycle" stages, and aligning frontend types.
2025-01-16 08:41:11 +00:00
David Leek
846dae66bd
chore: fix release template strategy padding and spacing (#9104) 2025-01-16 09:13:22 +01:00
David Leek
d20af9e5de
chore: make remove release plan warning conditional on env. enabled (#9103) 2025-01-15 15:29:49 +01:00
David Leek
c98d0e71a3
feat: conditionally show groupId in StrategyExecution under rollout (#9101) 2025-01-15 12:56:19 +01:00
Tymoteusz Czech
a2b78df0ad
feat: new lifecycle icons (#9098)
- Feature flag added
- New assets
2025-01-15 08:53:07 +01:00
David Leek
87917da4df
chore: feature release plans other strategies indicator (#9097) 2025-01-14 15:07:03 +01:00
Nuno Góis
3eeab7e80b
chore: new release plan template card (#9096)
https://linear.app/unleash/issue/2-3125/improve-release-plan-template-cards

Improves the release plan template cards.

This PR introduces a new reusable `Card` component to help us render
cards with the new design. The GroupCard is also adapted to use this new
`Card` component in this PR, since that was the latest one to be
upgraded, however other items like projects and integrations are not. We
can migrate them to this new component at a later stage in separate PRs.

### Before


![image](https://github.com/user-attachments/assets/623454c7-77e9-4672-ad5b-cb6bd7cbf7f2)

### After


![image](https://github.com/user-attachments/assets/20bff73e-80d2-41b5-8f8b-de1c76e69caf)
2025-01-14 13:49:50 +00:00
Tymoteusz Czech
b5f0d3e86a
refactor: project permissions list (#9082)
Re-organized project permissions.
2025-01-14 14:24:25 +01:00
David Leek
900df537e3
chore: move strategy UI into milestonecard and open milestone when adding strategy to it (#9095) 2025-01-14 13:02:53 +01:00
David Leek
3759b5a75d
chore: fix smaller broken UI things in release templates (#9084) 2025-01-13 13:02:06 +01:00
David Leek
cc55d8dfa8
chore: improve create template fields for name+description (#9075) 2025-01-10 14:39:17 +01:00
Tymoteusz Czech
91cebc5afc
fix: text overflow on project users access page (#8853)
Remove scrollbar in project settings - user roles
2025-01-10 09:51:42 +01:00
Nuno Góis
537ef42f7d
chore: mark SSO as an Enterprise only feature (#9071)
https://linear.app/unleash/issue/2-3124/mark-sso-as-an-enterprise-only-feature

For all intents and purposes, SSO seems to have always been an
Enterprise only feature. It just wasn't very clear previously.

See: https://github.com/Unleash/unleash/pull/9045/files#r1899635618


![image](https://github.com/user-attachments/assets/7ffed499-83d6-4dc2-ae11-6b0d930a82d1)
2025-01-09 13:07:28 +00:00
Jaanus Sellin
73515d78ce
chore: remove simplifyProjectOverview flag (#9068)
Remove the flag and delete unused components.
2025-01-08 14:10:40 +02:00
Nuno Góis
e7269473f3
chore: new hosted auth handler (#9045)
https://linear.app/unleash/issue/2-3074/add-sign-in-with-google-to-our-hosted-instances-when-only-password-is

https://linear.app/unleash/issue/2-3078/allow-viewer-access-from-auth-app-for-payg

Adds support for a new unified hosted auth handler.

This new auth handler provides a Google sign in option in case you don't
have an SSO provider configured. It also provides a way for auth-app to
sign in with Unleash's read-only user for Pro and Enterprise PAYG
instances.

Check the PR comments for more details.
2025-01-08 10:02:35 +00:00
David Leek
55f7de0d59
chore: improve the release plan template accordion looks (#9065) 2025-01-08 10:25:07 +01:00
Tymoteusz Czech
dc4a760172
feat: read logs and update cors maintenance root-role permissions (#8996)
Additional granular permissions related to instance-level access.

- CORS settings
- Reading logs (both instance logs and login history)

---------

Co-authored-by: Gastón Fournier <gaston@getunleash.io>
2025-01-08 10:03:40 +01:00
Nuno Góis
cb77b106bd
chore: make grid group cards have a consistent height (#9064)
https://linear.app/unleash/issue/2-3114/group-cards-should-have-a-consistent-height-in-their-grid

Makes the group cards height consistent in the grid.

<img width="1034" alt="image"
src="https://github.com/user-attachments/assets/27c2dbd4-4a72-419b-bbad-39a4309e5c30"
/>
2025-01-06 14:54:36 +00:00
gitar-bot[bot]
1c0431365e
[Gitar] Cleaning up stale flag: licensedUsers with value true (#9061)
[![Gitar](https://raw.githubusercontent.com/gitarcode/.github/main/assets/gitar-banner.svg)](https://gitar.ai)
This automated PR permanently enables the `licensedUsers` feature flag.
  
  ---
This automated PR was generated by [Gitar](https://gitar.ai). View
[docs](https://gitar.ai/docs).

---------

Co-authored-by: Gitar <noreply@gitar.ai>
2025-01-06 10:44:13 +02:00
Mateusz Kwasniewski
790d813455
fix: save context button spacing (#9059) 2025-01-03 15:01:46 +01:00
David Leek
4f6e581dec
chore: reorder release plan template UI files (#9057) 2025-01-03 14:38:27 +01:00
David Leek
7893d3fbd3
feat: rework frontend validation for release plan templates (#9055) 2025-01-03 13:19:15 +01:00
Nuno Góis
3c16616c36
chore: improve group projects tooltip behavior (#9054)
https://linear.app/unleash/issue/2-3111/improve-group-card-projects-tooltip

Slight improvement to the group card projects tooltip.

This handles very long project names a little bit better by allowing
them to break into new lines.


![image](https://github.com/user-attachments/assets/8f30e729-7877-463b-8e1e-d05934396827)
2025-01-03 11:10:38 +00:00
Nuno Góis
7eced2962f
chore: new user avatar tooltip (#9050)
https://linear.app/unleash/issue/2-3109/improve-avatar-tooltip

I noticed our current user avatar tooltip is a bit poor.

This PR tries to improve it a bit using only the data we already have
available, without any drastic changes.

### Before


![image](https://github.com/user-attachments/assets/2eeb87ca-791a-422d-9e8b-27537b6f38ef)

### After


![image](https://github.com/user-attachments/assets/38bc1bb1-9187-4bf8-88ec-e57f4c95a0c8)

### Other examples after the changes


![image](https://github.com/user-attachments/assets/f25172aa-24aa-4c8c-8d46-65e2b61a33b9)


![image](https://github.com/user-attachments/assets/a420cafb-e690-4495-bf7f-b7b3d3ddf311)


![image](https://github.com/user-attachments/assets/66b2efa3-269e-4384-96a5-1b089333a9d1)


![image](https://github.com/user-attachments/assets/7c56dcf0-b6f1-4433-840a-e975baec6785)

---------

Co-authored-by: Thomas Heartman <thomas@getunleash.io>
2025-01-03 10:26:02 +00:00
Nuno Góis
67c1274a1b
chore: group cards redesign (#9048)
https://linear.app/unleash/issue/2-3108/cards-design-groups

Redesigns the group cards.

Like instructed in the task, I took inspiration from the project and
integration cards, along with the Figma sketch.

Also includes a new `Truncator` generic helper component.

### Before


![image](https://github.com/user-attachments/assets/e47ebb3d-a089-4cbb-962c-53af9f1933f9)

### After


![image](https://github.com/user-attachments/assets/ffeb96b7-e6c4-4433-a847-2e267beb72e9)

Hovering over the "X projects" label reveals the projects the group
belongs to. You can navigate to any project by clicking its badge.


![image](https://github.com/user-attachments/assets/cf06c7f5-011e-4b89-8e40-ed42e5817625)

Truncated titles and descriptions show a tooltip with the full text on
hover.


![image](https://github.com/user-attachments/assets/6fc598e7-b08a-4bfa-8cb2-4153a81f2a48)


![image](https://github.com/user-attachments/assets/91ceba73-c43e-4070-9de0-2a182a3d9257)
2025-01-02 15:08:15 +00:00
Mateusz Kwasniewski
e0b4e258dc
feat: grouping of project level roles in autocomplete (#9046) 2024-12-31 10:44:48 +01:00
Mateusz Kwasniewski
18cd0e2cdb
fix: legal values styling in segments (#9044) 2024-12-31 08:45:17 +01:00
Nuno Góis
adaf91a791
chore: remove Unleash AI (#9010)
https://linear.app/unleash/issue/2-3071/finish-experiment

Removes Unleash AI.

Also removes other related changes made during the experiment
development.
2024-12-20 11:02:49 +00:00
David Leek
3fb7097fd9
feat: remove borders, improve draggable visibility etc (#9002) 2024-12-20 08:17:14 +01:00
Mateusz Kwasniewski
0c1f4cdcef
chore: default event log span 1 year (#8995) 2024-12-18 20:21:57 +01:00
Mateusz Kwasniewski
da16b316aa
feat: date range selector (#8991) 2024-12-18 10:40:50 +01:00
David Leek
45035102f4
feat:release templates strategy interaction improvements (#8992) 2024-12-17 14:41:53 +01:00
Melinda Fekete
c8300fed00
Simplify Unleash docs updates (#8925) 2024-12-17 14:36:16 +01:00
Jaanus Sellin
fdb20e94e1
chore: rename to seats used (#8993)
Instead of licensed users/used, we will use seats used.
2024-12-17 12:39:54 +02:00
Tymoteusz Czech
9b15343a79
feat: authentication configuration permission (#8987)
New permission for SSO config.
2024-12-17 10:16:24 +01:00
David Leek
37b55eff5a
fix: check for enterprise in the create/edit templates UI (#8985) 2024-12-16 15:09:34 +01:00
David Leek
76dfa3c979
fix: use strategyName instead of name property for component to load (#8983) 2024-12-16 09:18:58 +01:00
David Leek
a738be68b0
fix: template edit UI issues (#8974) 2024-12-13 11:25:57 +01:00
Thomas Heartman
428b0b370b
fix: only call project overview from connect dialog when open (#8977)
Fixes a bug where we'd call the project overview every second when on a
project page.

The reason this happens is that the connect SDK dialog sets up a fetcher
to re-fetch it every second.

The request should only be fired when the dialog is open, but because of
the way it's set up, we we're setting up the repeated fetch regardless
of whether the dialog was open or not.

This PR moves the dialog and all it's content into a nested component
that's only rendered if the dialog should be opened.
2024-12-13 09:41:49 +01:00
Mateusz Kwasniewski
fe8308da1f
feat: productivity email action text (#8966) 2024-12-12 12:00:08 +01:00
David Leek
8ad63bc035
feat: make segments editing work with template milestone strategies (#8964) 2024-12-12 11:27:32 +01:00
Tymoteusz Czech
828ecf8d63
fix: migrations e2e test (#8965)
Onboarding changed e2e test that should run before migration.
2024-12-12 11:19:03 +01:00
Thomas Heartman
7a436347cb
fix(1-3173): clear "removed tags" when you bulk update tags (#8952)
This PR fixes a bug wherein the list of tags to remove from a group of
tags wouldn't be correctly updated.

## Repro steps
- Add a console log line to
`frontend/src/component/feature/FeatureView/FeatureOverview/ManageTagsDialog/ManageBulkTagsDialog.tsx`'s
`ManagebulkTagsDialog`. Log the value of the`payload` variable.
- Pick a flag with no tags.
- Add tag A -> before submitting, you should have one added tag and zero
removed flags. After submitting, both should be empty.
- Now remove tag A -> before submitting, you should have one removed tag
and zero added tag. After submitting, both should be empty
- Notice that removed flags hasn't been emptied, but still contains tag
A.
- Now add tab B -> before submitting, you should have tag B in added and
nothing in removed. Notice that tag A is still in removed.



## Discussion points

This gives us both a `clear` and a `reset` event, which is unfortunate
because they sound like they do the same thing. I'd suggest renaming the
`clear` event (because it doesn't really clear the state completely),
but I'm not sure to what. Happy to do that if you have a suggestion.

I have not tested that submission of the form actually resets the state.
I spent about 45 minutes looking at it, but couldn't find a way that was
sensible and worked (considered spying: couldn't make it work;
considered refactoring and extracting components: think that's too much
of a change). I think this is benign enough that it can go without a
test for that thing actually being called.

I did, however, test the different reducer commands.
2024-12-12 09:31:39 +01:00
Melinda Fekete
311df82d37
Strategy docs updates (#8711)
- New navigation for Unleash Concepts
- Updated and restructured activation strategies and related concepts
2024-12-11 10:38:39 +01:00
gitar-bot[bot]
8c189cabd2
[Gitar] Cleaning up stale flag: purchaseAdditionalEnvironments with value false (#8955)
[![Gitar](https://raw.githubusercontent.com/gitarcode/.github/main/assets/gitar-banner.svg)](https://gitar.ai)
This automated PR permanently removes the
`purchaseAdditionalEnvironments` feature flag.
  
  ---
This automated PR was generated by [Gitar](https://gitar.ai). View
[docs](https://gitar.ai/docs).

---------

Co-authored-by: Gitar <noreply@gitar.ai>
Co-authored-by: sjaanus <sellinjaanus@gmail.com>
2024-12-11 10:11:23 +02:00
Tymoteusz Czech
5cc0e589e8
feat(cjux-278): maintenance root roles (#8875)
Custom root roles for changing maintenance mode state and banners.

Internal ticket: CJUX-278
2024-12-10 15:22:46 +01:00
Thomas Heartman
c860d8e434
chore: remove console.log 2024-12-10 14:39:57 +01:00
Thomas Heartman
b2c58102dd
chore(unl-204): remove uses of toast text and confetti (#8941)
As of PR #8935, we no longer support both text and title, and confetti
has been removed.

This PR:
- removes `confetti` from the toast interface
- merges `text` and `title` into `text` and updates its uses across the
codebase.
- readjusts the text where necessary.
2024-12-10 13:38:04 +00:00
Thomas Heartman
2f7beceb21
chore(unl-204): make toasts smaller (#8935)
This PR makes toasts smaller and less intrusive, and gives them a new
color scheme.

Changes include:
- new color scheme
- no description, only title
- new padding
- removes confetti code (even when rendered, they're invisible; UX also
says to cut it)
- use warning triangle for error messages 

I've also set a max height on the container and made it scrollable if
it's too tall to deal with super long messages.

I'll remove the description and confetti props in a separate PR to keep
this one cleaner.

Light mode:

![image](https://github.com/user-attachments/assets/05666259-bc40-4c87-8e51-9900bc67310e)

![image](https://github.com/user-attachments/assets/25dfca09-af5f-4a2a-8490-1169f6d8accb)


Dark mode:

![image](https://github.com/user-attachments/assets/8fa199aa-3cb5-47b4-acaa-1b0fcfd668eb)

![image](https://github.com/user-attachments/assets/eca7d26e-f695-43f9-b281-a64315544212)


With line break (min-width):

![image](https://github.com/user-attachments/assets/2ebd9117-a7c2-4a96-8b4b-c217ba12993b)

With line break (max-width):

![image](https://github.com/user-attachments/assets/8015c761-fc1e-4ff9-992d-a0e9ec27a4f9)

With very long message on phone in landscape mode:


![image](https://github.com/user-attachments/assets/7dc34d25-026c-46c3-9906-dc1348daf208)
2024-12-10 13:10:04 +00:00
Mateusz Kwasniewski
7ff6a9c5c8
chore: remove oidc UI flag (#8949) 2024-12-10 11:56:50 +01:00
Mateusz Kwasniewski
9de96c8004
feat: OIDC redirect flag (#8944) 2024-12-10 09:07:00 +01:00
David Leek
15950e4ea0
feat: release plan template milestone UI listing strategies (#8933) 2024-12-09 13:39:36 +01:00
Mateusz Kwasniewski
4b443e2a57
fix: adjust favorite icon placement (#8930) 2024-12-06 12:38:40 +01:00
Nuno Góis
ff9492d4f7
fix: permission button unintended full width behavior (#8920)
Follow-up to https://github.com/Unleash/unleash/pull/8882

The referenced PR caused an unintended behavior by making the button
behave like a normal button would on certain parent containers.
Previously, the span wrapper caused a side effect that restricted the
button’s width, which we were relying on.

By setting some initial styling properties, this PR should hopefully
satisfy both use cases.


![image](https://github.com/user-attachments/assets/2c5a4a97-51ff-426c-b5da-7b00d5d6516a)


![image](https://github.com/user-attachments/assets/f8f3fc13-df19-44d5-8fce-4bb0dc323d4e)


![image](https://github.com/user-attachments/assets/80625e88-0d1a-4c83-93d7-250351dae3a4)
2024-12-05 09:23:06 +00:00
Min Nyan Lin
50929c5e4a
refactor: Autocomplete component in PlaygroundCodeFieldset (#8912)
Custom context fields that have a list of allowed values, show values with autocomplete list
2024-12-04 16:07:29 +01:00
Nuno Góis
c6668b411b
chore: improve release plan events and add them to event timeline (#8895)
https://linear.app/unleash/issue/2-3043/improve-release-plan-events-and-add-them-to-the-event-timeline

Improves release plan events and adds them to the event timeline.

This will break the events in Enterprise but that's okay, we can follow
up with the Enterprise PR to fix them.


![image](https://github.com/user-attachments/assets/862818a5-d9bf-4006-beca-786fd6265759)
2024-12-02 12:35:48 +00:00
Nuno Góis
772f9f4f81
chore: update release plans icon (#8894)
https://linear.app/unleash/issue/2-3042/update-release-plans-feature-icon

Updates the icon for the release plans feature.


![image](https://github.com/user-attachments/assets/d7ede926-040c-4102-a59d-e096852dbc27)
2024-12-02 11:51:18 +00:00
Mateusz Kwasniewski
40769c8106
fix: swap subscribe and unsubscribe events (#8900) 2024-12-02 10:28:54 +01:00
Thomas Heartman
f833cf58eb
1-3060: remove features export import flag (#8890)
This PR removes all references to the `featuresExportImport` flag.

The flag was introduced in [PR
#3411](https://github.com/Unleash/unleash/pull/3411) on March 29th 2023,
and the flag was archived on April 3rd. The flag has always defaulted to
true.

We've looked at the project that introduced the flag and have spoken to CS about it: we can find no reason to keep the flag around. So well remove it now.
2024-12-02 09:26:06 +00:00
Nuno Góis
048afe6f37
test: loosen up useTrafficData test (#8901)
This should make the test more consistent as we don't need to be super
strict here.

Example of this failing:
https://github.com/Unleash/unleash/actions/runs/12115287823/job/33773589104?pr=8900
2024-12-02 09:15:54 +00:00
Thomas Heartman
39bf8f6068
1-3163: align copy to seats used and change in -> over (#8889)
Changes "licensed users" to "seats used" as requested. Also slightly
adjusts the copy a few other places.
2024-11-29 10:46:31 +01:00
Mateusz Kwasniewski
b6d4a5f9bc
feat: favorites take less space (#8888) 2024-11-29 10:12:31 +01:00
Nuno Góis
226b48930e
fix: permission button tooltip behavior (#8882)
https://linear.app/unleash/issue/2-3039/fix-the-tooltip-behavior-in-permission-buttons

Improves the tooltip behavior of our permission button component.

This is achieved by removing the extra `span` element that is wrapping
the `Button` component.

#### Before

The tooltip is not correctly aligned with the button. The lower section
of the button is not clickable.


![image](https://github.com/user-attachments/assets/bd5eb4d8-5b59-476f-80b1-227d7afeac2f)

#### After

The tooltip is correctly aligned with the button. Every visible part of
the button is clickable.


![image](https://github.com/user-attachments/assets/3c6271dd-8537-4f75-bd49-38e4b9ae307e)
2024-11-28 16:38:11 +00:00
Nuno Góis
f75cf1dc60
chore: release plans small misc improvements (#8879)
https://linear.app/unleash/issue/2-3038/release-plans-misc-ux-improvements

Includes various UX improvements focused on release plans:
- **New milestone status:** Introduced a "Paused" status for milestones.
A milestone is marked as "Paused" when it is active but the associated
environment is disabled.
- **Status display:** Paused milestones are labeled as "Paused (disabled
in environment)" for clarity.
- **Styling cleanup:** Removed unused disabled styling in the release
plan component.
- **Accordion stability:** Fixed visual shifting in milestone accordions
when toggling.
- **Strategy count:** Updated the "View Strategies" label to reflect the
total number of strategies in the milestone.
- **Edge case handling:** Improved rendering for milestones without
strategies.
- **Component extraction:** Refactored milestone status into a
standalone component.
- **Component organization:** Grouped milestone-specific components
under a `ReleasePlanMilestone` parent folder.
- **Template card cursor enhancement:** Set the cursor on the template
card to "pointer", so we better reflect the interactivity of the
element.
- **Template card created by enhancement:** Added an avatar for the
"Created by" field in release plan template cards, replacing the
creator's ID.
- **Navigation improvement:** After creating or editing a release plan
template, users are now redirected back to the release management page.


![image](https://github.com/user-attachments/assets/b0717dc6-3049-4612-9b46-f37a4fa887a3)


![image](https://github.com/user-attachments/assets/a17daafa-f961-4269-9522-39769912752c)
2024-11-28 15:18:27 +00:00
Mateusz Kwasniewski
8d1ebf6527
fix: ignore segment order in diff calculation (#8880) 2024-11-28 15:33:03 +01:00
Melinda Fekete
c83199db89
Remove admonitions from Proxy docs (#8860) 2024-11-28 14:08:09 +01:00
Mateusz Kwasniewski
6e9b65b09c
refactor: extract add strategy diff (#8877) 2024-11-28 10:12:55 +01:00
Mateusz Kwasniewski
0d72cfbba8
feat: view diff in edit segment CR (#8874) 2024-11-28 09:29:19 +01:00
Mateusz Kwasniewski
303711abeb
test: strategy variant tests in CRs (#8873) 2024-11-27 16:19:56 +01:00
Thomas Heartman
eaca09b35a
chore: add licensed user data to the licensed users box (#8868)
This change adds actual data from the server to the licensed users box
in the users header.

It also extracts the open sidebar button into its own component so
that we don't re-fetch the data when we open the sidebar. That's the
same issue we've had with project status and project creation screens,
etc.
2024-11-27 14:27:07 +01:00
Nuno Góis
679e9d12ef
chore: release template sidebar (#8871)
https://linear.app/unleash/issue/2-3026/release-template-sidebar-documentationcommand

Implements the release plan template form sidebar / description.

Took some liberties in the text compared to what we had in our sketches.
Also includes some slight refactoring.


![image](https://github.com/user-attachments/assets/529bf306-b545-4efa-8330-afc19782765a)
2024-11-27 13:16:27 +00:00
David Leek
9044d4c537
feat: add variants to release plan template strategies (#8870) 2024-11-27 13:32:17 +01:00
Mateusz Kwasniewski
f629773fef
fix: show variant diff on applied CR (#8869) 2024-11-27 13:31:30 +01:00
Mateusz Kwasniewski
570f8d2c34
feat: Change request applied diff for update strategy (#8859) 2024-11-27 12:51:11 +01:00
Thomas Heartman
41fb95dd56
fix: Use a proper dark theme for the activity graph (#8865)
This PR adds a proper dark theme for the activity graph. We previously
used the exact same theme for both light and dark modes.

Before:

![image](https://github.com/user-attachments/assets/1f119dca-4a87-49e3-9f3e-13163bd060c2)


After (different chart):

![image](https://github.com/user-attachments/assets/798c320c-a1b4-4634-b72e-cdb0d7a2c4a4)


I'm also passing in the theme explicitly as the `colorScheme` property.
Without that prop, the graph uses your system color scheme (according to
the docs), which may not be the same as your Unleash theme color scheme.

To avoid getting visible borders for the activity squares, I've added a `svg rect` override on the containing element that sets the svg rect strokes to be invisible.
2024-11-27 11:26:05 +01:00
Thomas Heartman
0e8365e47d
fix: user header layout on narrow screens (#8858)
This PR throws in a number of fixes to the UsersHeader's invite link and
licensed users components:

- Change the border colors from the primary purple to being a standard
border color
- Fix text / button wrapping in the invite link component. It now wraps
such that the button goes onto the row below the text if it cannot fit
on the same row. The text within the button will not wrap until it
absolutely has to (and is on its own line).
- Fix the wrapping behavior of the licensed users box: the bottom row
("seats used 30 days" and "view graph over time") will now wrap at the
same time as the other button in the other box.
- Fix some text sizes within the licensed users box
- Fix the button to look more like a link in the licensed users box

Most of it is pretty standard fare, but I've taken a slightly different
route when it comes to the licensed users box component.

I switched the whole component to be a "figure" instead of an article. I
was trying to figure out how I could make it behave the way we wanted
visually while still linking the "seats over 30 days" to the "11 /25"
counter text. The examples on MDN use things such as code snippets,
poems, quotes, etc, in addition to the more common image elements. And
in a way, 11/25 is a figure representing the number of seats used, so I
went with that for now. That said, I'd be very interested to hear some
other takes on this.

Now, because the `figcaption` has to be the first or last element of a
`figure` element, I had to include the "open sidebar" button inside the
caption, which isn't ideal. But I can live with it, I think.

Before:

![image](https://github.com/user-attachments/assets/60e14aad-89d6-4f04-b6f9-1eafb178639c)

![image](https://github.com/user-attachments/assets/61f6dee0-4a4f-428e-9e01-d68a78644a89)

![image](https://github.com/user-attachments/assets/c405d929-a53f-4d33-a6b2-9f73fa1260b4)

After:

![image](https://github.com/user-attachments/assets/d55817f1-5500-46c6-afd3-e7e7f38e3cec)

![image](https://github.com/user-attachments/assets/65dbf4ee-cd06-404f-b82c-09bcf65250e9)

![image](https://github.com/user-attachments/assets/c82a2dc7-3f9b-4ba2-9d16-1d0376c7bd2a)
2024-11-27 11:21:18 +01:00
Nuno Góis
29c0a3a557
chore: adapt billing page to custom billing scenarios (#8862)
https://linear.app/unleash/issue/2-3030/improve-the-billing-page-behavior-for-instances-with-custom-billing

Adapts the billing page to support custom billing scenarios.

Here’s how it will appear in such cases (notice a new "Your billing is
managed by Unleash" text, with no visible button to update billing
information):


![image](https://github.com/user-attachments/assets/39d7418a-1f22-41b3-9360-ca7c40a2ce7d)
2024-11-27 08:59:25 +00:00
David Leek
219006c856
feat: release plan template strategy types, constraints, segments (#8861) 2024-11-27 08:20:46 +01:00
Nuno Góis
ff164a0667
Revert "chore: adapt billing page to custom billing scenarios"
This reverts commit 13fbcec5b3.
2024-11-26 14:22:04 +00:00
Nuno Góis
13fbcec5b3
chore: adapt billing page to custom billing scenarios 2024-11-26 14:20:59 +00:00
Nuno Góis
14403d7836
chore: release plans flow in flag environments (#8843)
https://linear.app/unleash/issue/2-2816/add-release-plan-to-feature-flag-from-release-template

https://linear.app/unleash/issue/2-2818/list-release-plan-with-milestones-in-feature-flag-environment-section

https://linear.app/unleash/issue/2-2819/removing-release-plan-from-feature

Implements the release plan flow in the feature flag environment.

You can now manage release plans in a feature flag environment by adding
or removing them, as well as start milestones.


https://github.com/user-attachments/assets/24db9db4-7c3a-463e-b48a-611358f2b212
2024-11-26 09:15:24 +00:00
Mateusz Kwasniewski
90440c0439
feat: view diff in change requests (#8852) 2024-11-26 09:28:17 +01:00
Jaanus Sellin
1990ede59f
chore: rename toggle to feature (#8855) 2024-11-26 10:24:59 +02:00
Jaanus Sellin
7906bfb177
chore: rename toggle to flag (#8854) 2024-11-26 09:57:43 +02:00
David Leek
2078dcc46a
chore: milestone strategy tabs (#8851) 2024-11-26 08:42:56 +01:00
Tymoteusz Czech
1433878f32
fix: change requests placeholder (#8724)
If project does not have CRs configured, show correct info.
2024-11-25 17:54:25 +01:00
Tymoteusz Czech
8093a0d512
Update sidebar size (#8831)
Small visual change that will make UI easier to use on medium size
screens.
2024-11-25 15:06:42 +01:00
Thomas Heartman
99f2b70da3
fix: show data for last 30 days where we say we do (#8850)
This change updates the stat for archived flags "this month".

Turns out we were accessing the wrong property on the data object.

Additionally, changes the label to say "last 30 days" instead of "this
month"  because that's more accurate.
2024-11-25 13:09:03 +00:00
Mateusz Kwasniewski
dc7c46786a
fix: keep change request type in table (#8849) 2024-11-25 14:05:54 +01:00
Mateusz Kwasniewski
4f87f1e0b9
feat: deleting strategy variants indicator (#8840) 2024-11-25 10:46:35 +01:00
David Leek
79224ef9e5
chore: switch to using milestoneId instead of index (#8845) 2024-11-25 10:38:12 +01:00
Jaanus Sellin
9a269e3597
feat: licensed users chart (#8844)
Currently showing 2 lines, because backend is not sorting the data.


![image](https://github.com/user-attachments/assets/905001fb-2020-45b2-a1f4-ba497b594e61)
2024-11-25 10:03:21 +02:00
David Leek
f985cb1deb
feat: selector dropdown for milestone new strategy (#8841) 2024-11-25 07:59:58 +01:00
Mateusz Kwasniewski
c85c877c93
fix: link typo for upgrade (#8842) 2024-11-22 16:09:58 +01:00
Jaanus Sellin
b4bf68a4d2
chore: update orval schema (#8839) 2024-11-22 13:19:29 +02:00
gitar-bot[bot]
9b4e646a98
[Gitar] Cleaning up stale flag: onboardingUI with value true (#8832)
[![Gitar](https://raw.githubusercontent.com/gitarcode/.github/main/assets/gitar-banner.svg)](https://gitar.ai)
  This automated PR permanently enables the `onboardingUI` feature flag.
  
  ---
This automated PR was generated by [Gitar](https://gitar.ai). View
[docs](https://gitar.ai/docs).

---------

Co-authored-by: Gitar <noreply@gitar.ai>
2024-11-22 11:55:24 +02:00
Jaanus Sellin
172e34d3e9
feat: licensed seats sidebar (#8834)
Currently mock data, next step is to create chart and connect to
backend.


![image](https://github.com/user-attachments/assets/4b91a3ea-b42a-4c6e-b953-803ff5765c07)
2024-11-22 11:37:41 +02:00