1
0
mirror of https://github.com/Unleash/unleash.git synced 2024-12-22 19:07:54 +01:00
unleash.unleash/frontend
Youssef Khedher eeda7ab5e4 feat: add segments (#780)
* feat: create segmentation structure and list

* feat: remove unused deps and change route

* feat: change header style and add renderNoSegments

* fix: style table header

* feat: create useSegments hook

* feat: add segmentApi hook

* feat: create segment

* fix: errors

* feat: add contextfields list

* fix: remove user from create segment api

* feat: add form structure

* feat: add SegmentFormStepOne

* fix: tests and routes

* feat: add constraint view

* feat: UI to match the sketch

* feat: add constraint on context select

* fix: duplication

* fix adding constraints

Co-authored-by: olav <mail@olav.io>

* fix: input date not showing up in constraint view

Co-authored-by: olav <mail@olav.io>

* fix: minor bugs

Co-authored-by: olav <mail@olav.io>

* fix: create context modal in segment page

Co-authored-by: olav <mail@olav.io>

* fix: validate constraint before create segment

Co-authored-by: olav <mail@olav.io>

* feat: create useSegment hook

Co-authored-by: olav <mail@olav.io>

* feat: create edit component

Co-authored-by: olav <mail@olav.io>

* refactor: move constraint validation endpoint

* refactor: add missing route snapshot

* refactor: fix segment constraints unsaved/editing state

* refactor: remove create segment from mobile header menu

* refactor: update segments form description

* refactor: extract SegmentFormStepList component

* refactor: add an optional FormTemplate docs link label

* refactor: fix update segment payload

* feat: finish edit component

Co-authored-by: olav <mail@olav.io>

* refactor: move step list above segment form

* fix: update PR based on feedback

Co-authored-by: olav <mail@olav.io>

* refactor: fix constraint validation endpoint path

* refactor: improve constraint state field name

* refactor: extract AutocompleteBox component

* feat: add strategy segment selection

* refactor: add strategy segment previews

* refactor: fix double section separator line

* feat: disable deleting a usable segment

* refactor: warn about segments without constraints

* refactor: update text in delete segment dialogue

* refactur: improve arg names

* refactor: improve index var name

* refactor: clarify steps list logic

* refactor: use a required prop for the segment name

* refactor: use ConditionallyRender for segment deletion

* refactor: fix segments refetch

* refactor: improve CreateUnleashContext component names

* refactor: adjust segment form styles

* refactor: adjust text

* refactor: fix info icon tooltip hover target

* refactor: add missing aria attrs to preview button

* refactor: add strat name to delete segment modal

* refactor: fix segment chip text alighment

* refactor: use bulk endpoint for strategy segments

* refactor: fix imports after merge

Co-authored-by: Fredrik Oseberg <fredrik.no@gmail.com>
Co-authored-by: olav <mail@olav.io>
2022-03-29 09:30:57 +02:00
..
.github/workflows chore(deps): update actions/checkout action to v3 (#763) 2022-03-25 10:18:06 +01:00
cypress chore: update paths 🧼 (#820) 2022-03-28 09:49:59 +01:00
public
src feat: add segments (#780) 2022-03-29 09:30:57 +02:00
.editorconfig
.gitignore
.nvmrc
.prettierignore
.prettierrc refactor: format files (#719) 2022-02-18 09:51:10 +01:00
CHANGELOG.md
cypress.json refactor: fix flaky Cypress tests (#746) 2022-02-25 10:21:28 +01:00
index.js
LICENSE
package.json chore(deps): update dependency cypress to v9.5.3 2022-03-29 03:37:04 +00:00
README.md docs: Add some details on running and debugging the e2e tests (#526) 2022-03-25 12:13:39 +01:00
renovate.json
tsconfig.json feat: add baseUrl to tsconfig and update imports 2022-02-20 21:08:02 +01:00
typings.json
vercel.json
yarn.lock chore(deps): update dependency cypress to v9.5.3 2022-03-29 03:37:04 +00:00

unleash-frontend

This repo contains the Unleash Admin UI frontend app.

Run with a local instance of the unleash-api

First, start the unleash-api backend on port 4242. Then, start the unleash-frontend dev server:

cd ~/unleash-frontend
yarn install
yarn run start

Run with a heroku-hosted instance of unleash-api

Alternatively, instead of running unleash-api on localhost, use a remote instance:

cd ~/unleash-frontend
yarn install
yarn run start:heroku

Running end-to-end Tests

We have a set of Cypress tests that run on the build before a PR can be merged so it's important that you check these yourself before submitting a PR.

On the server the tests will run against the deployed Heroku app so this is what you probably want to test against:

yarn run start:heroku

In a different shell, you can run the tests themselves:

yarn run e2e:heroku

If you need to test against patches against a local server instance, you'll need to run that, and then run the end to end tests using:

yarn run e2e

You may also need to test that a feature works against the enterprise version of unleash. Assuming the Heroku instance is still running, this can be done by:

yarn run start:enterprise
yarn run e2e