Files
milvus-webui-attu/client/README.md
ryjiang c9ce9db33f migration to vite/vitest (#111)
* to vite

* fx customSnackBar test

* fix emptyCard test

* clean debug

* fix status test

* fix customDialogTitle test

* fix CustomButton test

* fix customDialog test

* fix some of customInput tests

* add missing dependency

* fix missing dependency

* testing-library is dropped support for react 17, so we need to stick
with 12.1.2

* fix tablehead test

* fix toobar test

* remove unused test

* fix table tests

* fix simple menu test

* fix layout test

* fix grid test

* fix custom input test

* remove unused file

* add missing coverage dependency

* upgrade electron

* remove unused file
2022-11-08 11:41:29 +08:00

2.3 KiB

Attu client

How to run

  1. yarn install
  2. yarn start

Folder Structure

└── public                    # Static resources
└── src
  ├── assets                  # Put images here
  ├── components              # Components
  ├── consts                  # Constant values
  ├── context                 # React context
  ├── hooks                   # React hooks
  ├── http                    # Http request api. And we have http interceptor in GlobalEffect.tsx file
  ├── i18n                    # Language i18n
  ├── pages                   # All pages, business components and types.
  ├── plugins                 # All import plugins.
  ├── router                  # React router, control the page auth.
  ├── styles                  # Styles, normally we use material to control styles.
  ├── types                   # Global types
  └── utils                   # The common functoins

Fixed pacakge version

Temporarily we specify 3 packages' version for ts build.

"@material-ui/core": "4.11.4",
"@material-ui/lab": "4.0.0-alpha.58",
"react-i18next": "11.10.0",

react-i18next's useTranslation(<name>) will return a t function, which used to return string and string{} type. But in latest version it only return string and cause typecheck error.

@material-ui/core change TablePagination(from '@material-ui/core/TablePagination') type in latest version. We specified a former version to prevent error here.

In future we will fix all type issues and remove specified package version usage.

How to name the file

We use Camel-Case to name the file.

In components / pages folder, we need subfolder to wrapper all related files.

Global Effect

We get global data or take global side effect in components/layout/GlobalEffect

Http request

We support user to define HOST_URL when docker run and it will write the env-config.js in public folder.

We use class getter to define our client fields like _field, because of our server response fields may be changed.

Helper Folder

Like utils / consts / utils / hooks , we dont want put all functions or data in one file like index.ts because of maintainability.

So when we need to create new file , treat the file like Class then name it.