1
0
mirror of https://github.com/Unleash/unleash.git synced 2025-10-27 11:02:16 +01:00
Commit Graph

201 Commits

Author SHA1 Message Date
Nuno Góis
1d1219a055
Use new useConditionallyHiddenColumns hook (#2695)
https://linear.app/unleash/issue/2-515/adapt-tables-to-use-the-new-useconditionallyhiddencolumns-hook

Uses the new `useConditionallyHiddenColumns` hook, like mentioned here:
https://github.com/Unleash/unleash/pull/2691
Also includes small fixes for things I caught along the way. See
comments below.
2022-12-16 10:46:04 +01:00
Nuno Góis
5086ec7921
remove feature flag: tokens last seen (#2673)
https://linear.app/unleash/issue/2-470/clean-up-flag
2022-12-12 14:32:35 +00:00
Mateusz Kwasniewski
c4f3ada0eb
POC: integration tests (#2422) 2022-12-06 15:28:33 +01:00
Mateusz Kwasniewski
d1c565735a
linter fixes (#2561) 2022-11-30 10:52:13 +01:00
Nuno Góis
348bbfeda3
feat: add last seen column to PAT table (#2519)
https://linear.app/unleash/issue/2-452/add-table-column-to-pats-table-ui
2022-11-29 20:15:34 +00: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
Nuno Góis
9fb431aab7
fix: limit total of PATs a user can have (#2301)
* fix: limit total of PATs a user can have

* increase PAT limit to 10

* Update src/lib/services/pat-service.ts

Co-authored-by: Simon Hornby <liquidwicked64@gmail.com>

* disable button on the front-end when PAT limit is reached

* import from server instead of repeating ourselves

Co-authored-by: Simon Hornby <liquidwicked64@gmail.com>
2022-11-02 08:11:35 +00:00
Nuno Góis
07821174a5
refactor: remove PAT experimental flag (#2299) 2022-10-31 09:38:30 +00:00
Nuno Góis
d2324ee91f
Feat clone environment modal (#2245)
* add clone environment modal base skeleton (WIP)

* refactor HelpIcon common component, fix group form

* add more fields to clone env modal, multi project selector

* implement initial payload signature

* reflect latest design decisions

* misc ui fixes

* update UI to the new designs, change back clone option to use flag

* set env limit to 15

* Update frontend/src/component/environments/EnvironmentTable/EnvironmentActionCell/EnvironmentCloneModal/EnvironmentCloneModal.tsx

Co-authored-by: Simon Hornby <liquidwicked64@gmail.com>

* Update frontend/src/component/environments/EnvironmentTable/EnvironmentActionCell/EnvironmentCloneModal/EnvironmentCloneModal.tsx

Co-authored-by: Simon Hornby <liquidwicked64@gmail.com>

* Update frontend/src/component/environments/EnvironmentTable/EnvironmentActionCell/EnvironmentCloneModal/EnvironmentCloneModal.tsx

Co-authored-by: Simon Hornby <liquidwicked64@gmail.com>

* Update frontend/src/component/environments/EnvironmentTable/EnvironmentActionCell/EnvironmentCloneModal/EnvironmentCloneModal.tsx

Co-authored-by: Simon Hornby <liquidwicked64@gmail.com>

* address PR comments

Co-authored-by: Simon Hornby <liquidwicked64@gmail.com>
2022-10-28 09:15:46 +01:00
Nuno Góis
d261097151
PAT: add "never", "custom" options to expiry date (#2198)
* add DateTimePicker component

* PAT expiry - custom, never

* show "never" in PAT table

* add alert, some styling
2022-10-18 12:22:28 +01:00
Nuno Góis
076a007b42
fix: PATs should have an unique description (per user) (#2191)
* fix: PATs should have an unique description

* add pat validation on the back-end service

* Update src/lib/services/pat-service.ts

Co-authored-by: Simon Hornby <liquidwicked64@gmail.com>

* fix: only consider current user's PATs

* fix tests

* cleanup

* Update frontend/src/component/user/Profile/PersonalAPITokensTab/CreatePersonalAPIToken/CreatePersonalAPIToken.tsx

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

* Update src/test/e2e/api/admin/user/pat.e2e.test.ts

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

Co-authored-by: Simon Hornby <liquidwicked64@gmail.com>
Co-authored-by: Thomas Heartman <thomas@getunleash.ai>
2022-10-14 13:28:29 +01: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
Nuno Góis
dc2f611257
fix: PAT secret no longer returned (except new), use id instead (#2162)
* fix: PAT secret no longer returned (except new), use id instead

* fix types
2022-10-10 12:51:12 +01:00
Tymoteusz Czech
df11ad9135
fix: "Reset password" page works when password authentication is disabled (#2126)
fix: password reset with only sso enabled

show correct error message
2022-10-05 09:02:20 +02:00
Nuno Góis
ddcfe132e4
feat: new profile page and PATs front-end (#2109)
* feat: new user dropdown and profile page

* fix: add popup boxShadow to dark-theme

* fix: update routes snap

* refactor: move some tab specific logic into tabs component

* add useProfile hook example

* fix profile tab header (no name)

* fix: hide user popup when clicking profile link

* - add PATs to profile;
- add route logic to profile;
- refactor TimeAgoCell title;
- misc fixes and refactoring;

* add profile info to profile tab

* simplify req paths

* add PAT flag to the front-end

* fix: some UI adjustments

* change user popup buttons to links

* fix profile on front-end, add role description

* update delete PAT text

* address some PR comments

* address PR comments

* some more UI fixes and refactoring

* move password request to API hook
2022-10-03 10:49:52 +01:00
Tymoteusz Czech
47152cf05b
Feat/invite user (#2061)
* refactor: user creation screen cleanup

* feat: deprecation notice for google sso

* fix: docs openid typo

* invite link bar

* invite link page

* fix prettier docs

* regenerated openapi

* hooks for invite page api

* update openapi

* feat: invite link update

* feat: add public signup token soft-delete

* public signup frontend feature flag

* fix: new user api issues

* feat: allow for creating new user from invite link

* Feat/invite user public controller (#2106)

* added PublicInviteController for public urls

* added PublicInviteController for public urls

* added PublicInviteController for public urls

* added PublicInviteController for public urls

* fix test

* fix test

* update openapi

* refactor: password reset props

* fix: public invite schema and validation

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

* user invite frontend

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

* invite link delete confirmation dialog

* refactor: password reset action

* fix: new user invite loading state

* fix: run ts check with ci

* revert openapi changes

* fix: invite token api interface

* fix: openapi schema index

* fix: update test snapshots

* update frontend snapshot

* fix: prettier ci

* fix: updates after review

Co-authored-by: andreas-unleash <104830839+andreas-unleash@users.noreply.github.com>
Co-authored-by: Fredrik Strand Oseberg <fredrik.no@gmail.com>
2022-09-30 13:01:32 +02:00
Tymoteusz Czech
ce3db75133
Create Signup page for users from Invite link (#2052)
* refactor: user creation screen cleanup

* feat: deprecation notice for google sso

* fix: docs openid typo

* user invite hook mock
2022-09-14 11:42:20 +02:00
Fredrik Oseberg
e5f0c39dbd fix: avatar padding 2022-08-24 10:48:46 +02:00
Fredrik Strand Oseberg
6818a82cd1 Feat/dark mode exp (#1137)
* feat: add dark mode theme

* fix: feature metrics

* fix: add color

* styling

* fix: add switch

* fix: form sidebar

* fix: remove console log

* fix: add properties

* fix: strategy container

* feat: feature flag

* fix: tests

* fix: build

* fix: logo

* fix: icon

* fix: update snapshots

* fix: CES operator

* fix: typography

* fix: input styling

* fix: remove initial load

* fix: change flag name

* fix: refactor to custom hook

* fix: remove unused import

* fix: dialog headers

* fix: use uiConfig flags instead of flags
2022-08-23 14:20:02 +02:00
Tymoteusz Czech
c70b38a62a Feature toggle page update (#1140)
* feat: add icon to custom strategies

* feat: update feature toggle screen layout

* strategy and constraints separators

* style disabled envirnments

* strategy constraint style

* strategy drag and drop

* feature env emtpy state

* quick add strategy api

* reorder strategies api integration

* feature strategy header title

* openapi update

* style small chip component

* fix comments after review

* fix issues with strategy constraint operators

* Revert "openapi update"

This reverts commit 27e7651ebae26f61ca76ec910e1f209bae7f2955.

* fix tooltip ref
2022-07-27 10:00:15 +00:00
olav
566d0613a4 refactor: improve password error handling (#1118)
* refactor: improve password error handling

* Update src/component/user/common/ResetPasswordForm/PasswordChecker/PasswordChecker.tsx

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

Co-authored-by: Thomas Heartman <thomas@getunleash.ai>
2022-06-28 09:47:22 +02:00
Nick
b4197e54e6 fix: input fields (PR #1110 from NickMolloy/improve-input-attributes)
* Use correct input type

"string" is not a valid input type: https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#input_types
"text" is the actual valid value.

* Use correct autocomplete values for credential fields
"true", "on", and "confirm-password" are not valid autocomplete values https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete
2022-06-22 11:05:03 +02:00
olav
2e367b3a04 feat: add trial expiration warning banner (#985)
* refactor: simplify useApiGetter cache keys

* refactor: simplify basePath helpers

* refactor: add UNLEASH_BASE_PATH frontend env var

* refactor: make sure AnnouncerElement does not affect the layout

* refactor: draw texture image above footer

* refactor: extract domain check helpers

* refactor: fix a few ts-expect-errors

* feat: add trial expiration warning banner

* refactor: fix IInstanceStatus interface prefix

* refactor: use ConditionallyRender in InstanceStatus

* refactor: simplify env helper functions

* refactor: use FC in InstanceStatus

* refactor: warn about expired trials

* refactor: fix eslint warnings

* refactor: disable banner outside of localhost

* refactor: use new instance state field name
2022-05-19 14:06:18 +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
Tymoteusz Czech
cd37624de4 Theme consistency updates (#960)
* fix: theme palette and shape

* fix: update snapshots

* fix: adjust after review
2022-05-09 12:01:12 +02:00
Tymoteusz Czech
5ecc83f1b4 Refactored feature toggles table (#951)
* refactor: simplify table toolbar

* refactor: table links and padding

* fix: header icons colors

* fix: minor table style changes
2022-05-06 12:21:31 +02:00
olav
7785e2c717 refactor: improve header button ARIA attrs (#957)
* refactor: fix header docs icon color

* refactor: improve header button ARIA attrs
2022-05-06 11:38:11 +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
olav
24c11332b5 chore: update MUI to v5 (#923)
* refactor: update mui packages

* refactor: run mui codemods

* refactor: format files after codemods

* refactor: fix broken types

* refactor: clean up theme

* refactor: fix broken tests

* refactor: replace @mui/styles with tss-react

* refactor: move breakpoints into classes for tss

* refactor: fix crash on missing feature description

* refactor: remove void classNames

* refactor: adjust styles to new defaults

* refactor: remove broken rollout slider e2e test

* refactor: fix duplicate e2e testid

* refactor: update makeStyles after rebase

* refactor: add missing snapshot after rebase

* refactor: fix TableCellSortable focus styles

* refactor: use 1.4 as the default line-height

* refactor: hide webkit search field icons

* refactor: fix select box label

* refactor: make AutocompleteBox smaller

* refactor: make heading smaller

* refactor: fix toast close icon color

* refactor: update snapshots

* refactor: add missing test event awaits

* refactor: fix default button line-height
2022-05-02 15:52:41 +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
531d969fa6 refactor: misc login page accessibility improvements (#914)
* refactor: add missing input field labels

* refactor: add missing className prop

* refactor: add missing image labels

* refactor: fix forgot password title size

* refactor fix StandaloneLayout page landmarks

* refactor: improve project page title

* refactor: add autoFocus to login fields
2022-04-27 09:29:43 +02:00
olav
06232a5522 fix: support query params in login redirects (#910) 2022-04-26 12:14:32 +02:00
olav
984e75a03b refactor: make help tooltip icons focusable (#905)
* refactor: restore rollout slider focus state

* refactor: fix disconnected form field labels

* refactor: make help tooltip icons focusable
2022-04-25 09:24:09 +02:00
olav
03e04e7c31 refactor: unify header icons (#897)
* refactor: unify header icon colors

* refactor: add a chevron for the settings menu
2022-04-22 12:12:06 +02:00
olav
8a3db090d5 fix: improve avatar alt text (#892)
* fix: improve avatar alt text

* refactor: fix unknown avatar path on localhost
2022-04-20 16:08:15 +02:00
olav
edf69d171d refactor: unify test render context (#871)
* refactor: fix warning when both project and projects are undefined

* refactor: unify test render context

* refactor: use render route option
2022-04-08 15:02:06 +02:00
olav
49b8e7329e refactor: convert auth tests from Cypress to Jest (#864)
* refactor: replace data-test with data-testid

* refactor: add Jest tests for auth pages

* refactor: remove Cypress tests for auth pages

* refactor: remove questionable snapshots

* refactor: share test server setup/teardown

* refactor: restore auth page flex layout

* refactor: use toBeInTheDocument

* refactor: change recent data-test attrs to data-testid
2022-04-08 13:13:45 +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
Youssef Khedher
85950f104a chore: update paths 🧼 (#820) 2022-03-28 09:49:59 +01:00
olav
cfc2338e78 refactor: use camel case for files and dirs (#817) 2022-03-25 12:34:20 +01:00
Fredrik Strand Oseberg
f52ca03b55 fix: show invalid token page when token error is received (#785) 2022-03-15 16:00:13 +01:00
Youssef Khedher
536bbb2bd2 Merge branch 'main' into feat/redirect 2022-03-09 12:01:16 +01:00
olav
b3bf86ca84 refactor: expect existing TS errors (#767)
* refactor: expect existing TS errors

* refactor: fail build on new TS errors
2022-03-03 10:01:04 +01:00
olav
2bb069af6b refactor: use the MUI OutsideClickHandler (#756) 2022-03-01 08:21:04 +01:00
olav
3959e846e8 refactor: fix misc TS errors (#729)
* refactor: update test deps

* refactor: remove unused ts-expect-error annotations

* refactor: add missing arg and return types

* refactor: the loading prop is optional

* refactor: add missing arg and return types

* reafactor: fix value arg type

* refactor: fix missing array type

* refactor: the parameters field is an array

* refactor: use undefined instead of null in state

* refactor: add missing params type

* refactor: add missing children prop

* refactor: add missing array type

* refactor: add missing React imports

* refactor: use correct IProjectEnvironment type

* refactor: type errors as unknown

* refactor: the index prop is required

* refactor: fix date prop type

* refactor: fix tooltip placement prop type

* refactor: fix environments state type

* refactor: add missing arg types

* refactor: add guard for undefined field

* refactor: fix ChangePassword prop types

* refactor: fix MUI import paths

* refactor: add missing arg type

* refactor: fix showDialog prop type

* refactor: remove unused openUpdateDialog prop

* refactor: add missing non-null assertion

* refactor: remove unused types prop

* refactor: stricten API error handler types

* refactor: add missing undefined check

* refactor: add missing IProject id field

* refactor: fix ConditionallyRender condition prop types

* refactor: remove unused args

* refactor: add AddVariant prop types

* refactor: add types to UIContext

* refactor: fix event arg type

* refactor: add missing default impressionData field

* refactor: fix handleDeleteEnvironment prop args

* refactor: fix IFeatureMetrics field requirements

* refactor: add missing element types to ConditionallyRender

* refactor: remove unused ProjectAccess projectId prop

* refactor: add missing undefined check

* refactor: fix getCreateTogglePath arg type

* refactor: add missing IStrategyPayload import

* refactor: remove unused user arg

* refactor: add missing event arg type

* refactor: add missing style object types

* refactor: improve userApiErrors prop type

* refactor: the Dialogue onClose prop is optional

* refactor: fix the AddonEvents setEventValue prop type
2022-02-25 10:55:39 +01:00
olav
19b16ed600 refactor: fix flaky Cypress tests (#746)
* refactor: normalize spec names

* refactor: make ESLint ignore dir

* refactor: port specs to TS

* refactor: wait for login redirects to finish

* refactor: remove static wait timers

* refactor: match any env name in interceptors

* refactor: move config vars to the top

* refactor: use longer IDs to avoid collisions

* refactor: misc cleanup

* refactor: disable screenshots and videos

* refactor: disable prod guard in tests

* refactor: wait for inputs before typing
2022-02-25 10:21:28 +01:00
Youssef
f67ee17012 fix: add redirect to component PropTypes 2022-02-22 13:55:47 +01:00
Youssef
1796aeb3ea fix: update PR based on feedback 2022-02-21 16:24:07 +01:00
Youssef
a47d53d0f4 fix: remove console log 2022-02-21 14:06:54 +01:00
Youssef
622c97a99f feat: add redirect to all auth components 2022-02-21 14:05:11 +01:00
Youssef
bcbfd3e38c feat: add redirect params to /login 2022-02-21 12:33:11 +01:00
olav
016633dae9 refactor: format files (#719)
* refactor: fix deprecated prettier config name

* refactor: add fmt scripts

* refactor: check fmt during CI

* refactor: format files
2022-02-18 09:51:10 +01:00
olav
46bf92124d refactor: remove unused code (#721) 2022-02-18 08:26:26 +01:00
olav
f862489fe8 refactor: fix login redirect for users without permissions (#714) 2022-02-16 09:36:00 +01:00
Fredrik Oseberg
ffde1512a0 fix: add testId for button 2022-02-14 13:08:49 +01:00
Fredrik Oseberg
59a8385322 fix: add testIds for hosted auth 2022-02-14 12:53:35 +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
93aa1ab8b8 refactor: add a MainTheme type (#686)
* refactor: add a MainTheme type

* refactor: use numbers for z-index values
2022-02-09 13:55:46 +01:00
olav
fee1894c34 refactor: port global settings to TS/hooks (#679)
* refactor: add ref support to PermissionSwitch

* refactor: port global settings to TS/hooks

* refactor: fix file extension

* refactor: format file

* refactor: fix inconsistent locationSettings prop

* refactor: use correct locationSettings hook

* refactor: use objects for settings hooks
2022-02-08 13:36:32 +01:00
olav
ff8d983d7e refactor: port FeatureToggleList to TS/SWR (#663)
* refactor: remove unused FeatureToggleListItemChip

* refactor: remove unused archive.module.scss

* refactor: remove unused ShowArchive route

* refactor: port FeatureToggleList to TS/SWR

* refactor: fix IUseFeaturesOutput interface prefix

* refactor: remove unnecessary pages files

* refactor: persist the features sort/filter state

* refactor: format files

* refactor: fix FeatureToggleListContainer file name

* refactor: fix arrow function syntax

* refactor: improve storage helper comments
2022-02-08 12:06:25 +01:00
olav
dfe8250c26 refactor: port UserProfile to TS/SWR (#665)
* refactor: add missing @types/react-outside-click-handler

* refactor: add missing disablePasswordAuth IUiConfig field

* refactor: replace NBSPs with regular spaces

* refactor: port UserProfile to TS/SWR

* refactor: fix interface type prefix

Co-authored-by: Fredrik Strand Oseberg <fredrik.no@gmail.com>
2022-02-04 12:41:59 +01:00
Ivar Conradi Østhus
6b632c83bf feat: allow enterprise to disable password based login (#629)
Co-authored-by: Fredrik Strand Oseberg <fredrik.no@gmail.com>
2022-01-26 13:28:51 +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
Youssef
373b588514 fix: add outlined for username login input and fix eye icon padding 2022-01-09 12:10:30 +01:00
Youssef
3639b7f403 feat: create password field component 2022-01-04 13:30:25 +01:00
Youssef
4b703bb4cc feat: add show password for all passwords input 2021-12-30 10:57:35 +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
Youssef Khedher
3281783fea fix: add logo in login screen for small size screen (#523)
Co-authored-by: Fredrik Strand Oseberg <fredrik.no@gmail.com>
2021-11-26 15:07:01 +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
Fredrik Strand Oseberg
87414c1c9c feat: e2e tests and mobile views (#348)
* fix: add sidebar button

* fix: set absolute positioned sidebar button

* feat: test setup

* fix: add tests for adding strategy

* fix: add delete  strategy test

* feat: add workflow

* feat: add vercel token

* fix: update project id

* fix: increase sleep

* fix: sleep

* fix: vercel

* fix: typo

* fix: vercel preview url action

* fix: yml formatting

* fix: steps

* fix: format

* fix: runs on

* fix: team id

* fix: teamid

* fix: add workflow

* fix: remove unused import

* fix: add token

* fix: add configuration

* fix: set env variables

* fix: use with

* feat: main navigation routes

* feat: mobile views

* fix: change spec name

* fix: update cypress project id

* fix: add record key

* fix: button positioning

* feat: permissions

* fix: custom strategy

* fix: remove unused action yml

* fix: update yarn lock

* fix: keys

* fix: remove videos and screenshots

* fix: add cyrpess folders to gitignore

* fix: env variable
2021-09-30 11:44:30 +02:00
Fredrik Strand Oseberg
728477e238 Feat/feature routes (#327)
* fix: setup new routes

* fix: copy toggle

* fix: link to correct project

* fix: redirect oss to default

* fix: update tests

* fix: edit path

* fix: remove invalid property

* fix: add project to test data

* fix: update paths to use features

* fix: update test data

* fix: update snapshots

* fix: only show button to add toggle if you have access

* fix: change heading

* fix: use new route

* fix: archive view

* fix: update snapshots

* fix: sorting headers

* fix: list headers

* fix: only show span if revive is present

* fix: add border to list

* fix: update snapshots

* fix: remove console log
2021-08-25 13:37:22 +02:00
Fredrik Strand Oseberg
b83418f410 Fix/routing (#325)
* fix: filter routes

* fix: add archive link to feature toggles list

* fix: strategy card name

* fix: add breadcrumb keys

* fix: update tests

* fix: menu placement

* fix: remove dot

* fix: handle 401 error

* fix: add important to styles

* fix: adjust positioning

* fix: remove unused imports
2021-08-19 13:54:28 +02:00
Ivar Conradi Østhus
ae38000cf7 Fix/make sure stickiness exists (#320)
* chore: update changelog

* 4.1.0-beta.1

* fix: Project filter was trying to filter based on full project object

* 4.0.6

* fix: add user to archived toggle view

* fix: remove console log

* 4.0.7

* 4.0.8

* fix: make sure the index we're trying to access exists

* fix: load fonts from google, fallback to system fonts

* fix: snapshot

* 4.0.10

* fix: update package json

* fix update fonts

* fix: remove custom font family for archive

* fix: update snapshot

Co-authored-by: Fredrik Oseberg <fredrik.no@gmail.com>
Co-authored-by: Christopher Kolstad <chriswk@getunleash.ai>
2021-08-11 13:34:39 +02:00
Ivar Conradi Østhus
e339e5c01f fix: add logout as an explicit call (#311)
Co-authored-by: Christopher Kolstad <chriswk@getunleash.ai>
2021-07-20 22:56:57 +02:00
Fredrik Strand Oseberg
1a63d91f95 Feat/new navigation (#314)
* feat: change color scheme

* feat: add navigation menu

* fix: add bg image

* fix: add archive and strategies to navigation

* fix: round corners

* feat: mobile view project details

* feat: mobile view navigation

* fix: only show menu if user is admin

* fix: rename navigation

* fix: only render relevant routes for oss context

* feat: add project actions

* feat: add icons

* feat: add breadcrumbs

* fix: place breadcrumbs absolutely

* fix: adjust breadcrumbs

* fix: toast

* fix: cleanup

* fix login

* fix: breadcrumbs

* fix: add billing link

* fix: links

* fix: feature view

* fix: path to go back

* fix: remove default value

* fix: remove unused imports

* refactor: delete outdated test

* fix: add item to filter in breadcrumb

* fix: remove console log
2021-07-16 15:41:54 +02:00
Fredrik Strand Oseberg
85a7c55fdf Feat/group by projects (#308)
This PR adds support for projects as a first class citizen, and toggling features on in different environments.
2021-07-07 11:04:36 +02:00
Fredrik Strand Oseberg
a17e2f29b2 Fix/customer journey patches (#304)
* fix: logo

* fix: move proclamation show logic to useEffect

* fix: add spacing on strategy headers

* fix: add role sorting
2021-06-07 10:15:30 +02:00
Fredrik Strand Oseberg
0e32583fa0 fix: add check for obscure error (#305) 2021-06-07 10:09:49 +02:00
Fredrik Oseberg
281e027c8a fix: passwordchecker 2021-05-31 13:55:20 +02:00
Fredrik Oseberg
413818f6b4 fix: reset border radius on mobile 2021-05-21 14:17:32 +02:00
Fredrik Strand Oseberg
bd93c5d131 Fix/standalone pages (#300)
* feat: change layout

* fix: standalone banner styling

* fix: change styling for banner

* fix: login page

* fix: standalone pages

* fix: page tweaks

* fix: center text

* refactor: new user page

* refactor: remove uneccesary markup

* refactor: remove secondary actions from hosted

* fix: remove authdetails blob

* refactor: remove unused import

* fix: move overflow

* fix: add breakpoint to forgotten password
2021-05-21 14:01:28 +02:00
Fredrik Strand Oseberg
cbd4773cf6 Fix/customer journey (#297)
* fix: add onClose to archive toggle dialoge

* fix: add link to ConfirmUserLink component

* fix: remove icons from admin menu

* fix: move button on user list to top right

* refactor: move add new api key to header

* refactor: button order

* fix: lowercase dropdown buttons on feature toggle list

* refactor: reorganize reporting dashboard

* refactor: consistent buttons

* feat: enhance gradual rollout strategy creation

* feat: ui tweaks on project access

* fix: adjust divider

* fix: remove unused imports

* fix: update snapshots

* fix: add auth options to new user page

* fix: add divider

* fix: uncontrolled input

* fix: add data-loading to sorted by

* fix: update snapshots

* fix: navigate to project view on create and edit

* fix: rename project

* fix: add placeholder for feature toggle list component

* fix: conditonally render link
2021-05-18 12:59:48 +02:00
Ivar Conradi Østhus
e9d40ade85 fix: hosted auth should not need to load inital data 2021-05-10 21:30:52 +02:00
Fredrik Strand Oseberg
2f1848f6fd Fix/feedback on create (#292)
* fix: copy feature toggle instead of setting newVariants on the reference

* fix: remove console log

* fix: update messages

* fix: give feedback on strategy actions

* fix: do not allow feature toggle to be created with empty name

* fix: disable delete if only one strategy is applied

* fix: archive view

* fix: set name field on add variant required

* fix: set required on feature toggle name
2021-05-10 13:22:22 +02:00
Ivar Conradi Østhus
f744e67fce fix: improve password auth extra options 2021-05-08 18:46:05 +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
Ivar Conradi Østhus
367b5c8d85 fix: logout should only be called once 2021-05-04 21:24: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
Ivar Conradi Østhus
4b826715a7 Feat/auth hosted section (#280) 2021-04-29 21:55:48 +02:00
Fredrik Strand Oseberg
0340573199 fix/locale (#277)
* fix/locale

* fix: check on lowercase values

* fix: remove console logs
2021-04-28 11:57:45 +02:00
Fredrik Strand Oseberg
1f46d3b21b Fix/cleanup (#276)
* chore: update changelog

* 4.0.0-alpha.10

* fix: add dnd provider as top level wrapper

* fix: add forgotten password link to password auth

* fix: remove unecceesary dnd component

* fix: check for usedTokenError
2021-04-27 09:48:00 +02:00
Fredrik Oseberg
e81918ee48 fix: password 2021-04-23 15:31:42 +02:00
Fredrik Strand Oseberg
b9f5585c62 Fix/optimizations (#275)
* chore: update changelog

* feat: login mobile view

* fix: lists

* fix: colors

* fix: resolve merge conflict

* fix: tests

* fix: set defualt location object

* fix: don't check password before length exceeds 2

* fix: check length
2021-04-23 15:21:24 +02:00
Fredrik Strand Oseberg
05334337c2 Feat/user profile (#274)
* chore: update changelog

* feat: user profile

* feat: onOutsideClick hook

* feat: tune user profile

* fix: refactor to button

* feat: mobile view

* fix: update tests

* feat: add link to docs
2021-04-23 13:49:42 +02:00
Ivar Conradi Østhus
423646e4eb fix: lint 2021-04-23 12:21:15 +02:00
Ivar Conradi Østhus
cb7555d048 fix: minor tuning on auth 2021-04-23 11:40:23 +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