1
0
mirror of https://github.com/Unleash/unleash.git synced 2024-12-22 19:07:54 +01:00
unleash.unleash/frontend
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
..
.github/workflows refactor: fix flaky Cypress tests (#746) 2022-02-25 10:21:28 +01:00
cypress refactor: fix flaky Cypress tests (#746) 2022-02-25 10:21:28 +01:00
public
src refactor: fix misc TS errors (#729) 2022-02-25 10:55:39 +01:00
.editorconfig
.env refactor: port login auth to TS/SWR (#680) 2022-02-10 17:04:10 +01:00
.gitignore
.nvmrc
.prettierignore
.prettierrc refactor: format files (#719) 2022-02-18 09:51:10 +01:00
CHANGELOG.md
craco.config.js
cypress.json refactor: fix flaky Cypress tests (#746) 2022-02-25 10:21:28 +01:00
index.js
LICENSE
package.json refactor: fix misc TS errors (#729) 2022-02-25 10:55:39 +01:00
README.md
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 refactor: fix misc TS errors (#729) 2022-02-25 10:55:39 +01:00

Developing

Why did you render

This application is set up with WDYR and craco in order to find, debug and remove uneccesary re-renders. This configuration can be found in /src/wdyr.ts.

In order to turn it on, change the configuration accordingly:

if (process.env.NODE_ENV === 'development') {
    const whyDidYouRender = require('@welldone-software/why-did-you-render');
    whyDidYouRender(React, {
        trackAllPureComponents: true,
    });
}

Now you should be able to review rendering information in the console. If you do utilise this functionality, please remember to set the configuration back to spare other developers the noise in the console.

Run with a local instance of the unleash-api:

You need to first start the unleash-api on port 4242 before you can start working on unleash-frontend. Start webpack-dev-server with hot-reload:

cd ~/unleash-frontend
yarn install
yarn run start

Run with a heroku-hosted unleash-api:

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

UI Framework

We are using material-ui.

Happy coding!