1
0
mirror of https://github.com/Unleash/unleash.git synced 2024-12-22 19:07:54 +01:00
Commit Graph

12397 Commits

Author SHA1 Message Date
Mateusz Kwasniewski
f47ae12263
feat: personal dashboard project avg health scores (#8328) 2024-10-02 09:33:50 +02:00
Jaanus Sellin
a874ac085d
fix: fix tracking of menu bar for no search results (#8326)
Previously it sending plausible event before the query had loaded and
making false positives.
2024-10-02 09:54:07 +03:00
Nuno Góis
51bfccd8cc
chore: timeline event group icon when events are all same type (#8322)
https://linear.app/unleash/issue/2-2726/groups-should-show-the-timeline-event-type-icon-when-all-events-inside

Displays the event type icon for the group when all events within the
group share the same type.


![image](https://github.com/user-attachments/assets/9fc68b2b-da01-423e-b767-05ce87098b27)


![image](https://github.com/user-attachments/assets/76c3a6d6-1bae-499c-aeec-006ead30cea6)
2024-10-01 16:37:07 +01:00
Nuno Góis
5dae654022
refactor: implement an event timeline context and provider (#8321)
https://linear.app/unleash/issue/2-2730/refactor-the-event-timeline-state-management-to-a-context-and-provider

This PR refactors the state management for the **Event Timeline**
component by introducing a context and provider to improve accessibility
of state across the component tree.
2024-10-01 16:21:31 +01:00
dependabot[bot]
2d8bc3268f
chore(deps): bump rollup from 4.21.2 to 4.22.4 in /frontend (#8226) 2024-10-01 16:02:35 +02:00
GitHub Actions Bot
fe5e2aeffb chore: bump version to 6.3.0 2024-10-01 13:33:48 +00:00
David Leek
729acfd318
chore: timeline ux alignment (#8283)
https://linear.app/unleash/issue/2-2703/align-with-ux

Timeline UI/UX improvements after sync with UX, including:

- Added some spacing between each event in the grouping tooltip
- Aligned the x events occurred header with filter dropdown
- Improved the strategy icon somewhat so it doesn't look as off center
- New timeline icon
- Improve icon position relative to timestamp on each event in the
grouping tooltip
- Changed text color in dropdowns to a lighter gray
- Removed bold formatting in tooltip
- Adjusted paddings and margins
- Added close button
- Added shadow
- Added left border

There are a few details missing, which will be tackled in separate PRs.


![image](https://github.com/user-attachments/assets/b911696e-1a50-4968-9b73-b01af626d44e)

---------

Co-authored-by: Nuno Góis <github@nunogois.com>
2024-10-01 14:32:54 +01:00
Fredrik Strand Oseberg
4d97f59e62
fix: add missing awaits on events (#8320)
This PR adds missing awaits on the call to eventStore which were
revealed to be fire and forget when we added transactional support for
these methods.
2024-10-01 14:34:25 +02:00
Tymoteusz Czech
b03686dc3f
feat(onboarding): .NET snippet (#8307)
## About the changes
Quick-start for .NET
2024-10-01 14:20:49 +03:00
Mateusz Kwasniewski
bf787b6deb
feat: redirect to personal dashboard when no last project (#8318) 2024-10-01 13:11:29 +02:00
Tymoteusz Czech
a6ab5326a0
feat(onboarding): add links to examples (#8308)
## About the changes
Links from Unleash UI to
[Unleash/unleash-sdk-examples](https://github.com/Unleash/unleash-sdk-examples)


https://linear.app/unleash/issue/1-2869/add-codesandbox-links-to-unleashunleash
2024-10-01 10:58:21 +00:00
Fredrik Strand Oseberg
ab81528536
feat: add transactional support for access service (#8311)
Continuing splitting #8271 into smaller pieces. This PR adds
transactional support for access service.
2024-10-01 11:56:26 +02:00
Melinda Fekete
60206f88d3
Docs fixes (#7845) 2024-10-01 11:33:50 +02:00
Mateusz Kwasniewski
739ad07798
refactor: extract my projects component (#8317) 2024-10-01 11:33:03 +02:00
Thomas Heartman
96d8dc353a
feat: return project roles (#8314)
This PR updates the personal dashboard project endpoint to return owners
and roles. It also adds the impl for getting roles (via the access
store).

I'm filtering the roles for a project to only include project roles for
now, but we might wanna change this later.

Tests and UI update will follow.
2024-10-01 09:13:59 +00:00
Thomas Heartman
050e53e564
feat: return project owners (#8312)
This PR is part 1 of returning project owners and your project roles for
the personal dashboard single-project endpoint.

It moves the responsibility of adding owners and roles to the project to
the service from the controller and adds a new method to the project
owners read model to take care of it.

I'll add roles and tests in follow-up PRs.
2024-10-01 08:18:42 +00:00
Mateusz Kwasniewski
7ac283aa50
feat: skeleton loaders for personal dashboard (#8313) 2024-10-01 10:16:20 +02:00
Nuno Góis
a8eda9d61f
chore: event timeline signals (#8310)
https://linear.app/unleash/issue/2-2665/show-signals-in-the-event-timeline

Implements signals in the event timeline.

This merges events and signals into a unified `TimelineEvent`
abstraction, streamlining the data structure to only include properties
relevant to the timeline.

Key changes:
- Refactors the timeline logic to handle both events and signals through
the new abstraction.
- Introduces the `useSignalQuery` hook, modeled after `useEventSearch`,
as both serve similar purposes, albeit for different resource types.

Note: The signals suggestion alert is not included and will be addressed
in a future task.


![image](https://github.com/user-attachments/assets/9dad5c21-cd36-45e6-9369-ceca25936123)
2024-10-01 09:02:08 +01:00
Fredrik Strand Oseberg
dcb0228105
fix: handle empty strings on permissions gracefully in access service (#8306)
Splitting #8271 into smaller pieces. This first PR will focus on making
access service handle empty string inputs gracefully and converting them
to null before inserting them into the database.
2024-10-01 09:03:46 +02:00
Mateusz Kwasniewski
b037bfb71c
feat: include favorite projects in personal dashboard (#8309) 2024-09-30 16:48:58 +02:00
Mateusz Kwasniewski
6d16fc60ce
feat: Personal dashboard flag created (#8305) 2024-09-30 16:09:31 +02:00
Thomas Heartman
50c5af8632
feat: hook up admin / owner data to UI (#8300)
This PR hooks up the owners and admins of Unleash to the UI. They'll
only be visible in cases where you have no projects.

In addition, it adds Orval schemas for the new payload properties and
updates the generating schemas to fix some minor typing issues.
2024-09-30 13:40:33 +00:00
Thomas Heartman
e4cec6629d
test: test the dashboard admins property (#8303)
This PR adds tests for the new admins property of the personal dashboard
API payload.

It checks that only user admins are added and that their image URL is
not an empty string. In doing this, also fixes an issue where the image
URL wouldn't be generated correctly.

## Discussion points

Some of the test feels like it might be better testing on a deeper level
(i.e. the account store). However, from an initial glance, I think that
would require more setup and work, so I'm leaving it in the dashboard
test for now as that's where it's ultimately useful. But we can discuss
if we should move it.
2024-09-30 13:38:00 +00:00
Mateusz Kwasniewski
d7db80d948
feat: use onboarding status to conditionally show badge and message (#8304) 2024-09-30 15:30:18 +02:00
Mateusz Kwasniewski
ac90c942db
feat: add onboarding status to personal dashboard api (#8302) 2024-09-30 14:25:56 +02:00
Ivar Conradi Østhus
01afe87302
fix: extend feature_toggle_update counter with details about action (#8202)
Ideally `feature_lifecycle_stage_entered{stage="archived"}` would allow
me to see how many flags are archived per week.
It seems like the numbers for this is a bit off, and wanted to extend
our current `feature_toggle_update` counter with action details.
2024-09-30 12:16:03 +00:00
Mateusz Kwasniewski
6f7170dc40
feat: open unleash concepts (#8301) 2024-09-30 13:32:05 +02:00
Thomas Heartman
a4ea46dab6
feat: add Unleash admins to API payload (#8299)
Adds Unleash admins to the personal dashboard payload.

Uses the access store (and a new method) to fetch admins and maps it to
a new `MinimalUser` type. We already have a `User` class, but it
contains a lot of information we don't care about here, such as `isAPI`,
SCIM data etc.

In the UI, admins will be shown to users who are not part of any
projects. This is the default state for new viewer users, and can also
happen for editors if you archive the default project, for instance.

Tests in a follow-up PR
2024-09-30 11:01:30 +00:00
Mateusz Kwasniewski
751c2fa902
feat: last project events ui polishing (#8298) 2024-09-30 11:18:25 +02:00
Melinda Fekete
1ea63a8a1f
Update UI text in Unleash welcome key concepts page (#8238) 2024-09-30 11:14:08 +02:00
Thomas Heartman
6188079122
feat: add project owners to personal dashboard (#8293)
This PR adds all user-type owners of projects that you have access to to
the personal dashboard payload. It adds the new `projectOwners` property
regardless of whether you have access to any projects or not because it
required less code and fewer conditionals, but we can do the filtering
if we want to.

To add the owners, it uses the private project checker to get accessible
projects before passing those to the project owner read model, which has
a new method to fetch user owners for projects.
2024-09-30 10:49:34 +02:00
Nnenna Ndukwe
b726a229d3
docs: A/B Testing Use Case Tutorial (#8257)
<img width="923" alt="Screenshot 2024-09-27 at 8 33 00 AM"
src="https://github.com/user-attachments/assets/7078b3fc-7d3a-44b9-9ab6-30f82bd1489f">

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

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

We are adding another use case tutorial to our docs!
Updates may come to this PR based on further engineering review.

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

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

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


## Discussion points
<!-- Anything about the PR you'd like to discuss before it gets merged?
Got any questions or doubts? -->
2024-09-27 19:55:11 +02:00
Mateusz Kwasniewski
f000579d5b
feat: adjust search query for personal project (#8296) 2024-09-27 15:23:00 +02:00
David Leek
530af3d7d6
fix: some integrations only counted errors not all results (#8295) 2024-09-27 14:57:26 +02:00
Nuno Góis
81840ed574
fix: event timeline should unmount when hidden and be closed by default (#8294)
Fixes 2 bugs:

- The initial state of the event timeline should have `open: false`, not
`true` - Closed by default, unless opened
- The event timeline should unmount when hidden - It should not emit
requests when closed
2024-09-27 13:11:25 +01:00
Mateusz Kwasniewski
147984f9d5
feat: display basic list of project events (#8291) 2024-09-27 14:02:30 +02:00
Tymoteusz Czech
c502e99b85
feat(onboarding): Android snippet (#8281) 2024-09-27 12:02:12 +00:00
Jaanus Sellin
ee9f8c8836
fix: now only one onboarding screen will be shown at time (#8290)
Makes the button more clear. 

Now both **onboarding** started and **onboarding finished** screens will
not be shown in the same time.
2024-09-27 14:58:03 +03:00
Nuno Góis
28edadd507
chore: fix search events endpoint description (#8289)
Scouting: I think this description was copy-pasted from the previous
endpoint and we forgot to update it.
2024-09-27 11:16:51 +00:00
Mateusz Kwasniewski
e540db4cb3
feat: return latest project events (#8287) 2024-09-27 12:47:21 +02:00
Jaanus Sellin
ed4c05d3c4
feat: add production snippets and resources (#8286)
Skipped .NET and Android because they are not ready. Also swift does not
support env variables, so skipped for now.

Added all rest.
2024-09-27 13:46:12 +03:00
Mateusz Kwasniewski
15144e4e93
docs: feature lifecycle availability (#8288) 2024-09-27 12:28:50 +02:00
Mateusz Kwasniewski
829fda77fd
refactor: composition root for personal dashboard service (#8280) 2024-09-27 10:44:27 +02:00
Thomas Heartman
6655b2d961
feat: create page for when you have no projects (#8285)
This adds a front end fallback screen for when you have no projects.


![image](https://github.com/user-attachments/assets/1e6e0a63-968a-43cf-84ee-9a67d9f0ca91)
2024-09-27 10:41:25 +02:00
Jaanus Sellin
b73c283e6c
feat: now code examples are joined into one (#8284)
Joined all examples into one copyable example.

Did not do following ones, because they are using templates and probably
will not work as joined.

1. React
2. Svelte
3. Vue

Also skipped, because those examples are not final yet.

1. .NET
2. Android



![image](https://github.com/user-attachments/assets/c8dabed4-21d0-4af9-900f-e77c5d069fe1)
2024-09-27 10:28:12 +03:00
Alvin Bryan
d1c3e3fa2c
Matching <title> and h1 for "11 principles" post (#8206) 2024-09-26 16:47:25 +01:00
Mateusz Kwasniewski
4107e84f43
feat: personal dashboard project details API stub (#8282) 2024-09-26 15:51:51 +02:00
Nuno Góis
d161fb49ee
chore: implement event grouping in the event timeline (#8254)
https://linear.app/unleash/issue/2-2663/implement-event-grouping-when-multiple-events-happen-in-a-short-period

This PR introduces a grouping logic for timeline events, enhancing the
way events are displayed when they occur close to each other.

We also updated and refactored components to support handling groups of
events rather than individual events.

Also includes some minor code cleanups and optimizations as part of
general refactoring efforts (scouting).


![image](https://github.com/user-attachments/assets/eed74ddd-017c-430d-b919-3cb7e257052d)

---------

Co-authored-by: David Leek <david@getunleash.io>
2024-09-26 14:48:52 +01:00
Jaanus Sellin
86e7bbc85d
feat: after onboarding show success box with resources (#8278)
![image](https://github.com/user-attachments/assets/7e60ad54-c750-4e8a-8556-a1735a99a43e)
2024-09-26 15:40:14 +03:00
Christopher Kolstad
547e41e566
docs: recommend PG v13 or later (#8276)
Unify on PG v13, we had one place recommending v10, release notes for v6
saying we dropped support for v10 through v12 and mentioning 13, and a
place mentioning 14 or newer.

fixes: #8265

---------

Co-authored-by: Melinda Fekete <melinda.fekete@getunleash.io>
2024-09-26 14:38:00 +02:00