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

5100 Commits

Author SHA1 Message Date
Thomas Heartman
6936da7403
feat: handle owners and project roles in the UI (#8315)
This commit uses the now-included project owner and role information
to populate the owner/role section. If you have no roles, we'll tell
you that you don't instead of displaying an empty set of badges.
2024-10-02 09:37:02 +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
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
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
Mateusz Kwasniewski
739ad07798
refactor: extract my projects component (#8317) 2024-10-01 11:33:03 +02: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
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
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
Mateusz Kwasniewski
6f7170dc40
feat: open unleash concepts (#8301) 2024-09-30 13:32:05 +02: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
Mateusz Kwasniewski
f000579d5b
feat: adjust search query for personal project (#8296) 2024-09-27 15:23:00 +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
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
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
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
Mateusz Kwasniewski
409e0e74ba
feat: read projects from personal dashboard API (#8279) 2024-09-26 14:17:47 +02:00
Tymoteusz Czech
2292e2f6ca
feat(onboarding): Vue and Svelte snippets (#8250) 2024-09-26 15:06:30 +03:00
Thomas Heartman
e20ef56374
fix: trim name and description before validation (#8275)
This fixes a bug where you can input just whitespace for
name/description. It also means that you can no longer have both "my
role" and "my role    " as separate roles.

API fix will follow.
2024-09-26 11:54:16 +00:00
Nuno Góis
eb01b44e69
test: skip vercel toolbar in e2e tests (#8273)
Some e2e Cypress tests were failing due to the Vercel live feedback
toolbar covering interactive elements, preventing test actions from
completing:
https://github.com/Unleash/unleash/actions/runs/11048512034/job/30692949711#step:4:136

This PR addresses the issue by disabling the Vercel toolbar specifically
during Cypress tests. This is done by setting the
`x-vercel-skip-toolbar` header, which Vercel provides to prevent the
toolbar from interfering with automated tests. You can find more
information about this feature in the Vercel documentation: [Disable
Toolbar for
Automation](https://vercel.com/docs/workflow-collaboration/vercel-toolbar/managing-toolbar#disable-toolbar-for-automation).

Specific type declarations were needed due to
https://github.com/cypress-io/cypress/issues/19564
2024-09-26 12:53:31 +01:00
Thomas Heartman
d6f5280a98
feat: show user's roles and project owners (#8253)
This change shows the user's roles and project owners in the personal
dashboard.
2024-09-26 10:47:29 +00:00
Jaanus Sellin
4397af0df7
chore: move onboarding flow and dialog under same location (#8272)
It is mostly moving the onboarding folders under same directory for more
clear project structure.
2024-09-26 12:56:49 +03:00
Thomas Heartman
cf476f9e7d
chore: update orval for personal dashboards (#8268)
Updates orval for personal dashboards
2024-09-26 11:03:55 +02:00
Nuno Góis
3f80fdb090
fix: layout content width on large screens (#8267)
I believe the changes in https://github.com/Unleash/unleash/pull/8234,
more specifically [this
change](https://github.com/Unleash/unleash/pull/8234/files#diff-3a5e0763fe1effa9cd485763fecf0633ce8f0877c9d1971e6bd5c5abe7426364L64),
have caused the main layout content to no longer stretch to its maximum
relative width on larger screens.

This adjustment seems to resolve this issue, ensuring proper behavior on
larger screens without introducing any overflow issues on smaller
screens.
2024-09-26 09:51:15 +01:00
Jaanus Sellin
d0499dbf94
feat: sdk connected using production snippet (#8266)
1. Fix nodejs snippet
2. Tie the snippet to the completed stage.
3. Pull out the code renderer, to shared component


![image](https://github.com/user-attachments/assets/886c9502-4407-4aa7-8b63-84035f8cdb8a)
2024-09-26 11:39:05 +03:00
Jaanus Sellin
aca0de414e
feat: display new completed dialog (#8255)
1. Now the dialog will not close when SDK got connected
2. It will start to show the suggested production code. ( this will be
attached in next PR)
3. Also, it has connected indicator on the right
4. Back button is removed in this stage.


![image](https://github.com/user-attachments/assets/c7290e0f-8fa7-4382-a91d-7206e32d81ae)

---------

Co-authored-by: Tymoteusz Czech <2625371+Tymek@users.noreply.github.com>
2024-09-26 09:24:15 +03:00
Tymoteusz Czech
c7427f4b91
feat(onboarding): nodejs snippet for production (#8256) 2024-09-25 15:45:53 +02:00
Mateusz Kwasniewski
e680921517
test: reduce noise from test warnings (#8251) 2024-09-25 12:56:09 +02:00
Tymoteusz Czech
cdb1297246
feat(onboarding): Rust SDK snippet (#8239)
A bit different then other examples - only way to run current state of
Rust SDK is to have some kind of an opinionated setup around it.
2024-09-25 12:33:58 +02:00
Nuno Góis
a95c8d183f
chore: event timeline persistent state (#8240)
https://linear.app/unleash/issue/2-2700/persist-timeline-state-in-local-storage

Implements persistent state management for the event timeline using
local storage.

I believe this improves UX by persisting both the timeline toggle
(visibility) state and applied filters across page refreshes.

Includes some scouting/refactoring and some workarounds to prevent the
timeline from animating on page load (in most cases).
2024-09-25 11:20:27 +01:00
Mateusz Kwasniewski
a1a24ea0b1
feat: flag exposure in personal dashboard (#8247) 2024-09-25 11:11:30 +02:00
Mateusz Kwasniewski
957ef12ca3
fix: adjust welcome dialog size (#8244) 2024-09-25 09:11:53 +02:00
Mateusz Kwasniewski
e33f71a8f4
feat: highlighting flags chart (#8237) 2024-09-25 08:36:30 +02:00
renovate[bot]
f92f2d9327
chore(deps): update dependency @types/react to v18.3.7 (#8242)
This PR contains the following updates:

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

---

### Configuration

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

🚦 **Automerge**: Enabled.

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

🔕 **Ignore**: Close this PR and you won't be reminded about 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:eyJjcmVhdGVkSW5WZXIiOiIzOC44MC4wIiwidXBkYXRlZEluVmVyIjoiMzguODAuMCIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOltdfQ==-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-24 22:08:55 +00:00
Tymoteusz Czech
bfe3af6dc2
fix: SDK snippets import (#8235) 2024-09-24 15:35:00 +02:00
Nuno Góis
5063e151ed
chore: event timeline header placement (#8234)
https://linear.app/unleash/issue/2-2662/make-the-event-timeline-available-globally-through-a-new-header-button


https://github.com/user-attachments/assets/bde38ee8-cdd8-409d-a95e-0c06189e3d9b

(In the video, you’ll notice a slight delay before new events show up.
This happens because the timeline automatically refreshes every 10
seconds)

Removes the event timeline from the event log and integrates it into a
new header option.

I chose a middle-ground approach between options 1 and 2 from our Figma
sketches. This solution provides the best of both worlds IMO: the
timeline stands out as a global component, distinct from the current
page context, while sliding in rather than overlapping the content. This
way, users can view the timeline alongside the page content.
2024-09-24 13:43:30 +01:00
Mateusz Kwasniewski
54432f3f31
feat: personal flag metrics display (#8232) 2024-09-24 13:47:21 +02:00