1
0
mirror of https://github.com/Unleash/unleash.git synced 2024-10-18 20:09:08 +02:00
Commit Graph

45 Commits

Author SHA1 Message Date
sjaanus
a0619e963d
Maintenance mode for users (#2716) 2022-12-21 13:23:44 +02:00
sjaanus
d42e90544f
Maintenance mode UI (#2704) 2022-12-15 16:07:22 +02:00
andreas-unleash
1eb0116e11
Fix/last viewed project (#2530)
<!-- 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! ❤️ -->

Fix using projectId on redirect.

Fix: only redirect to project(s) on app load


## 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. -->

<!-- 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? -->

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2022-11-28 16:10:40 +02:00
andreas-unleash
35d9a62d89
Soft landing page on projects or last viewed project (#2499)
Signed-off-by: andreas-unleash <andreas@getunleash.ai>

This PR introduces a soft landing page to the last viewed project or to
the project list (if there is more than 1 project)

Changes: 
- Replaced clearing of `storage` with clearing `cache` in logout.ts ::
REVERTED
- Root redirects to `projects` instead of `features`

<!-- 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. -->

<!-- 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? -->

Signed-off-by: andreas-unleash <andreas@getunleash.ai>
2022-11-23 15:58:02 +02:00
Tymoteusz Czech
b8c3833ae4
Suggest changes - initial frontend (#2213)
* feat: add initial controller

* feat: add fe

* feat: return status codes

* remove backend experiment

* refactor standalone route for project banner

* update suggest changeset type

* refactor changeset mock

* suggest changes banner feature flag

* fix: update routes snapshot

Co-authored-by: Fredrik Oseberg <fredrik.no@gmail.com>
2022-10-20 14:00:48 +02:00
Tymoteusz Czech
10eb500360
Custom event tracking (#2151)
* add plausible custom event tracking

* refactor: better comments for analytics tracking
2022-10-10 14:06:44 +02:00
Tymoteusz Czech
879e1358ef
feat: frontend app error boundary (#2144)
* feat: frontend app error boundary

* fix: freeze added dependency

* update yarn lock
2022-10-10 12:18:37 +02:00
olav
ae3d6c06cf
refactor: simplify login redirect logic (#1987) 2022-08-30 09:54:52 +02:00
Fredrik Strand Oseberg
d4f46eaf2e feat: lazy load playground (#1145)
* feat: lazy load playground

* fix: app.tsx

* fix: add suspense

* fix: update snapshot
2022-07-25 16:01:58 +02:00
olav
2d24d92f5a fix: resolve issues with project edit/delete button conditions (#1084)
* fix: fix UPDATE_PROJECT permission checks for editors

* fix: disable delete button for the default project

* fix: warn about access on edit project page

* fix: hide broken project edit/delete buttons for OSS

* refactor: avoid project card clicks when closing modals

* refactor: improve default project deletion message

* refactor: improve project access error text

* Update src/component/project/ProjectCard/ProjectCard.tsx

Co-authored-by: Thomas Heartman <thomas@getunleash.ai>

* refactor: fix string quotes

* refactor: improve disabled menu item contrast

* refactor: remove Enterprise routes for OSS

Co-authored-by: Thomas Heartman <thomas@getunleash.ai>
2022-06-10 16:09:50 +02:00
Nuno Góis
cdfb1f2452 fix: feature toggle list and UI adjustments (#970)
* fix: add highlight and hover colors, fix them

* misc ui adjustments

* test isGrow prop in table cols

* fix: revert typography changes, update snaps

* Update src/themes/themeTypes.ts

Co-authored-by: Tymoteusz Czech <2625371+Tymek@users.noreply.github.com>

* fix: misc ui adjustments

* fix: backButton color

* refactor: color not needed, can be inherited

* fix: project roles case, new borderRadius values

* fix: color green

* fix: feature form link

* update snaps

* fix: formatting

* update snap

Co-authored-by: Tymoteusz Czech <2625371+Tymek@users.noreply.github.com>
2022-05-12 15:34:04 +02:00
olav
ae51e979cd refactor: add Plausible tracker on SaaS domain (#956)
* feat: add Plausible tracker on SaaS domain

* refactor: check uiFlags.T instead of the domain
2022-05-06 14:04:09 +02:00
olav
d8143c6ff4 chore: update react-router to v6 (#946)
* refactor: fix child selector warnings

* refactor: update react-router-dom

* refactor: use BrowserRouter as in react-router docs

* refactor: replace Redirect with Navigate

* refactor: replace Switch with Routes

* refactor: replace useHistory with useNavigate

* refactor: replace useParams types with useRequiredPathParam

* refactor: replace NavLink activeStyle with callback

* refactor: fix matchPath arg order

* refactor: Remove unused link state

* refactor: delete broken snapshot test

* refactor: render 404 page without redirect

* refactor: normalize path parameter names

* refactor: fix Route component usage
2022-05-05 13:42:18 +02:00
Tymoteusz Czech
23a874d051 Refactor: convert jsx files to typescript (#881)
* refactor: convert remaining js files to typescript

* refactor: conditionally render remove index

* refactor: dialog component to tsx

* refactor: migrate some files from jsx to tsx

* refactor: convert dropdown element to tsx

* refactor: feature toggle list to tsx

* refactor: update context name in use overrides

* refactor: variant overrides to tsx

refactor: remove unused strategy constraint file

* fix: tsx imports

* fix: update refectored components after rebase

* refactor: rename report list files to tsx

* fix: project health list types

* refactor: addon form - add types

* refactor: copy feature component types

* fix: projects toggle style after tsx refactor

* refactor: update ts types from openapi

* fix: ts refactor changes after review

* fix: header title prop

* fix: update after PR comments

* add test to useoverrides hook

* fix conditionally render time ago

* fix: toggle list empty tooltip

* fix: remove unused variable

* remove unused variable

* fix: remove faulty snapshot
2022-05-02 12:52:33 +02:00
olav
f309553a5f refactor: port some things to TS (#833)
* refactor: remove unused securityLogger

* refactor: port commonStyles to TS

* refactor: port testIds to TS

* refactor: move app.css into themes

* refactor: use absolute import paths

* refactor: port LayoutPicker to TS

* refactor: port routes to TS

* refactor: port ScrollTop to TS

* refactor: update unused/missing ScrollTop exceptions

* refactor: remove unused route flags field

* refactor: change constants ext to TS

* refactor: remove unused testData file

* refactor: port styles to TS

* refactor: wait before typing in auth spec
2022-04-01 10:28:15 +02:00
olav
dbb62631a6 feat: add FeedbackCES component (#826)
* refactor: add screen-reader-only util class

* refactor: move FeedbackNPS component

* feat: add FeedbackCES component

* refactor: improve hidden checkbox styles

* refactor: fix IFeedbackEndpointRequestBody source type

* refactor: remove unnecessary event.persist() calls

* refactor: remove disableEscapeKeyDown from FeedbackCES modal

* refactor: make textarea label customizable

* refactor: store feedback state on the backend

* refactor: add FeedbackCESForm snapshot test

* refactor: use extant IAuthFeedback type

* refactor: fix showNPSFeedback logic for multiple feedback types
2022-03-31 09:23:46 +02:00
Youssef Khedher
85950f104a chore: update paths 🧼 (#820) 2022-03-28 09:49:59 +01:00
olav
2a307523d6 feat: add operators splash page (#802)
* refactor: fix crash on null-valued project description

* refactor: remove unused layout prop

* refactor: use routes for splash components

* feat: add operators splash page

* refactor: fix styling issues

* refactor: add some comments
2022-03-22 08:23:51 +01:00
Youssef
1796aeb3ea fix: update PR based on feedback 2022-02-21 16:24:07 +01:00
Youssef
bcbfd3e38c feat: add redirect params to /login 2022-02-21 12:33:11 +01:00
Fredrik Strand Oseberg
02d6a57e02 fix: useLocation from react-router (#706) 2022-02-14 12:32:55 +01:00
Fredrik Strand Oseberg
c99decf5e0 remove: redux (#696)
* remove: redux

* fix: add sass back

* fix: update lock

* fix: remove fake access store import

'
2022-02-11 11:19:55 +01:00
olav
213e8950d3 refactor: port login auth to TS/SWR (#680)
* refactor: allow existing tsc errors

* refactor: add missing component key

* refactor: port login auth to TS/SWR

* refactor: replace incorrect CREATE_TAG_TYPE with UPDATE_TAG_TYPE

* refactor: fix AccessProvider permission mocks

* refactor: add types to AccessContext

* refactor: fix file extension

* refactor: remove default export

* refactor: remove unused IAddedUser interface

* refactor: comment on the permissions prop

* refactor: split auth hooks

* feat: auth tests

* fix: setup separate e2e tests

* fix: naming

* fix: lint

* fix: spec path

* fix: missing store

* feat: add more tests

Co-authored-by: Fredrik Oseberg <fredrik.no@gmail.com>
2022-02-10 17:04:10 +01:00
olav
b291515fa4 refactor: remove unused feedback state (#682)
* refactor: remove unused feedback state

* refactor: use PNPS feedback display logic
2022-02-09 14:06:20 +01:00
Fredrik Oseberg
e6ae8db442 fix: pnps 2022-01-28 10:51:48 +01:00
Youssef Khedher
182d566895 feat/rbac roles (#562)
* feat: create screen

* fix: import accordion summary

* feat: add accordions

* fix: add codebox

* feat: select permissions

* fix: permission checker

* fix: update permission checker

* feat: wire up role list

* fix: change icon color in project roles list

* fix: add color to icon in project roles

* add confirm dialog on role deletion

* feat: add created screen

* fix: cleanup

* fix: update access permissions

* fix: update admin panel

* feat: add edit screen

* fix: use color from palette and show toast when fails

* fix: refactor

* feat: validation

* feat: implement checked all

* fix: experimental toast

* fix: error handling

* fix: toast

* feat: unique name validation

* fix: update toasts

* fix: remove toast

* fix: reset flag

* fix: remove unused vars

* fix: update tests

* feat: add error icon for toast

* fix: replace wrong import for setToastData

* feat: Patch keying on ui to handle uniqueness for permissions across multiple envs

* fix: hasAccess handles *

* fix: update permission switch

* fix: use flag for environments rbac

* fix: do not include check all keys in payload

* fix: filter roles

* fix: account for new permissions in variants list

* fix: use effect on length property

* fix: set polling interval on user

* 4.5.0-beta.0

* fix: set initial permissions correctly to avoid race condition

* fix: handle activeEnvironment when it is null

* fix: remove unused imports

* fix: unused imports

* fix: Include missing project in hasAccess for deleteinng a tag

* fix: Move add/delete tag to use update feature permissions

* fix: use rest parameter

* fix: remove sandbox from scripts

* 4.6.0-beta.1

* fix: remove loading deduping

* fix: disable editing on builtin roles

* fix: check all

* fix: feature overview environment

* fix: refetch user on project create

* fix: update snaphots

* fix: frontend permissions

* fix: delete create confirm

* fix: remove unused permission

* 4.6.0-beta.4

* fix: update permissions

* fix: permissions

* fix: set error to string

* 4.6.0-beta.5

* fix: add permissions for project view

* fix: add permissions to useEffect deps

* fix: update permission for move feature toggle

* fix: add permissions data to useEffect

* fix: move settings

* fix: key on confetti

* fix: refetch project permissions on environment create/delete

* fix: optional coalescing error object

* fix: remove logging error

* fix: reorder disable importance in permissionbutton

* fix: add project roles to menu

* fix: add disabled check to revive

* fix: update snapshots

* fix: change text to select all

* fix: change text to select

* 4.6.0-beta.6

Co-authored-by: Fredrik Oseberg <fredrik.no@gmail.com>
Co-authored-by: sighphyre <liquidwicked64@gmail.com>
2022-01-14 15:50:02 +01:00
Fredrik Strand Oseberg
1f133beb46 fix: reset loader when fetch receives 401 and fix no auth type (#549) 2021-12-06 15:43:08 +01:00
Fredrik Strand Oseberg
7a5eea2aab Fix/splash (#534)
* fix: use correct env id

* fix: extract to constant

* fix: fetch user when logging in
2021-11-29 14:03:52 +01:00
Fredrik Strand Oseberg
d706bfc7bc fix: use specific attribute as useEffect trigger (#527)
* fix: use specific attribute as useEffect trigger

* fix: handle splash being undefined
2021-11-26 13:15:39 +01:00
Youssef Khedher
c34d8439bd Feat/splash (#491)
* splash screen

* add styles for controllers

* feat: animated circles

* fix: remove unused code

* fix: folder structure

* create splash screens for envs

* add styles and ui changes

* fix: revert App.tsx

* add splash state to store

* add splash to app.tsx + add a loader

* fix: mobile view + desktop view

* fix: render splash condition + styling fix

* fix: change splash display to full screen

* Update src/hooks/api/actions/useSplashApi/useSplashApi.ts

Co-authored-by: Fredrik Strand Oseberg <fredrik.no@gmail.com>

* fix: change function type

Co-authored-by: Fredrik Strand Oseberg <fredrik.no@gmail.com>

* fix: disable incrementing counter when matching the components length.

* fix: add SWR configuration

* fix: spelling mistakes in splash screen

* fix: add keys and adjust styling

* fix: tests

* fix: tests

* fix: default command timeout

Co-authored-by: Fredrik Oseberg <fredrik.no@gmail.com>
2021-11-26 11:12:37 +01:00
Fredrik Strand Oseberg
005daa3740 Fix/login redirect (#442)
* fix: use swr with login

* fix: remove metrics poller

* fix: do not allow retry on 401

* fix: create swr provider

* fix: move accessprovider

* fix: remove metrics poller test

* fix: hide password auth if disableDefault is set

* Update src/component/project/ProjectList/ProjectList.tsx

Co-authored-by: Christopher Kolstad <chriswk@getunleash.ai>

* fix: console log

Co-authored-by: Christopher Kolstad <chriswk@getunleash.ai>
2021-10-19 13:08:25 +02:00
Youssef
b5072928b3 fix:handle non-existing feature toggle 2021-10-15 16:27:54 +02:00
Christopher Kolstad
195cded10b Don't use window.location.reload for forcing login
- Causes e2e tests to go into an infinite reload loop
2021-10-15 16:26:20 +02:00
Christopher Kolstad
166c6fef0e Write a generic http thrower for status > 299 (#405)
* Write a generic http thrower for status > 299

* Perform location reload if user is no longer authorized, i.e if status === 401
2021-10-15 09:21:38 +02:00
Ivar Conradi Østhus
1d72f17284 fix: update feedback url 2021-06-08 13:32:43 +02:00
Fredrik Strand Oseberg
7fddf04398 Feat/pnps (#306)
* feat: animation

* feat: setup api calls

* feat: try catch

* feat: refetch user

* fix: remove unused variables

* fix: call hideFeedback

* fix: return expression
2021-06-07 10:29:08 +02:00
Fredrik Strand Oseberg
ad09c4039a Fix/strategy constraints (#289)
* fix: only update editable strategies if index is less than 0

* fix: add wdyr

* fix: set tracking to false as default

* chore: update readme
2021-05-07 08:31:25 +02:00
Fredrik Strand Oseberg
7b27f68b8e Fix/minor changes (#285)
* fix: use query params on password auth

* fix: refactor redirect and isUnauthorized

* feat: add 404 page

* fix: setup 404 as redirect and standalone page
2021-05-05 14:58:22 +02:00
Fredrik Strand Oseberg
9b1a07c5ab Fix/v4 corrections (#287)
* fix: remove project display check

* fix: refetch bootstrap on user change

* fix: remove console log

* fix: update test

* fix: do not allow submit if errors exists

* fix: do not allow strategies to redirect home when name is taken
2021-05-05 14:17:25 +02:00
Fredrik Strand Oseberg
f0d6e45361 Feat/bootstrap (#281)
* feat: add bootstrap endpoint redux integration

* fix: remove useEffect from app

* feat: add path provider

* feat: browser router

* fix: delete path formatter

* fix: return absolute path if no basepath

* fix: format seenURI

* feat: get bootstrap uri from html

* fix: remove unused imports

* fix: remove initial loading call

* fix: wrap logout in formatApiPath

* feat: import logo

* feat: remove accessor from receiveConfig

* fix: update tests

* fix: update asset paths

* fix: remove data from app

* fix: revert moving access provider

* fix: remove build watch

* fix: remove console logs

* fix: update asset paths

* fix: remove path logic from base64

* fix: remove unused import

* set uiconfig

* change notification text

* fix: match uiConfig with expected format

* feat: add proclamation

* fix: move proclamation

* fix: remove unused imports

* fix: add target _blank

* fix: allow optional toast

* fix: return empty string if default value is present

* fix: set basepath to empty string if it matches default
2021-05-04 09:59:42 +02:00
Fredrik Strand Oseberg
0ca753e7e5 Feat/add new user (#273)
* chore: update changelog

* chore: update changelog

* fix: refactor AddUser

* feat: add screens for email and copy

* fix: remove interface

* fix: admin constant in userlist

* chore: fix changelog

* feat: user data fetching with useSWR

* feat: flesh out dialogues

* fix: remove useRequest

* refactor: remove redux for user admin

* refactor: remove from store

* refactor: userListItem

* fix: change type

* feat: add initial loading

* fix: useLayoutEffeect in useLoading

* fix: remove useEffect

* fix: update snapshots

* fix: remove status code

* fix: remove roles from store
2021-04-23 10:59:11 +02:00
Fredrik Strand Oseberg
524936912d Feat/user flow (#267)
* feat: add new user page

* feat: passwordchecker

* fix: remove loading

* feat: reset password

* fix: move swr to devDeps

* feat: generate reset link

* feat: add reset password form

* fix: remove console log

* fix: rename to forgotten password

* feat: add simple menu

* fix: change password checker title

* fix: change text in new-user view

* fix: lint errors

* fix: add status code to constants

* fix: comment

* fix: add classes for new user component

* fix: tests

* fix: remove console log

* fix: remove retry method

* fix: invalid token constant

* fix: remove console log

* fix: dependency array on useCallback

* fix: featureview

* fix: redirect on authenticated

* refactor: progresswheel

* fix: lint deps
2021-04-19 10:55:15 +02:00
Fredrik Oseberg
fa9a1c3145 fix: logout redirect logic 2021-04-12 16:25:38 +02:00
Fredrik Oseberg
8d295fd176 fix: redirect from login page if authorized 2021-04-12 15:34:37 +02:00
Fredrik Strand Oseberg
86631b53c9 Fix/material UI cleanup (#264)
* fix: strategy dialogue

* fix: fontweight dropdown

* fix: eventlog padding

* refactor: history

* refactor: use material ui styling conventions for history

* refactor: add empty state for features

* refactor: variant dialog

* refactor: delete unused variant config

* fix: variant typography

* fix: remove unused styles file

* fix: footer

* feat: protected routes

* fix: rename app

* fix: remove console log

* fix: convert app to typescript

* fix: add standalone login screen

* fix: cleanup

* fix: add theme colors for login

* fix: update tests

* fix: swap route with ProtectedRoute

* fix: remove unused redirect

* fix: use redirect to correctly setup breadcrumbs

* refactor: isUnauthorized

* fix: reset loading count on logout

* fix: create a more comprehensive auth check

* feat: add unleash logo
2021-04-12 15:04:03 +02:00