diff --git a/.github/workflows/javascript-formatting.yml b/.github/workflows/javascript-formatting.yml
index 272d2b34e..c15e2ce5f 100644
--- a/.github/workflows/javascript-formatting.yml
+++ b/.github/workflows/javascript-formatting.yml
@@ -23,7 +23,7 @@ jobs:
uses: creyD/prettier_action@v4.2
with:
# This part is also where you can pass other options, for example:
- prettier_options: --write webroot/**/*.{js,md}
+ prettier_options: --write web/**/*.{js,ts,jsx,tsx,css,md}
working_directory: web
only_changed: true
env:
diff --git a/web/.eslintrc.js b/web/.eslintrc.js
index 18ecdce20..65db95de3 100644
--- a/web/.eslintrc.js
+++ b/web/.eslintrc.js
@@ -40,6 +40,7 @@ module.exports = {
'@typescript-eslint/no-use-before-define': [1],
'no-shadow': 'off',
'@typescript-eslint/no-shadow': ['error'],
+ 'no-restricted-exports': 'off',
'react/jsx-no-target-blank': [
1,
{
diff --git a/web/.prettierrc b/web/.prettierrc
index a917a6dd8..040711442 100644
--- a/web/.prettierrc
+++ b/web/.prettierrc
@@ -5,4 +5,4 @@
"singleQuote": true,
"trailingComma": "all",
"arrowParens": "avoid"
-}
\ No newline at end of file
+}
diff --git a/web/.vscode/settings.json b/web/.vscode/settings.json
index 97824caab..02233c300 100644
--- a/web/.vscode/settings.json
+++ b/web/.vscode/settings.json
@@ -1,13 +1,13 @@
{
- "cSpell.words": [
- "Owncast",
- "antd",
- "bitrates",
- "chartkick",
- "framerates",
- "kbps",
- "linkify",
- "paypal",
- "toggleswitch"
- ]
-}
\ No newline at end of file
+ "cSpell.words": [
+ "Owncast",
+ "antd",
+ "bitrates",
+ "chartkick",
+ "framerates",
+ "kbps",
+ "linkify",
+ "paypal",
+ "toggleswitch"
+ ]
+}
diff --git a/web/README.md b/web/README.md
index debfe7fa4..339f9f7f9 100644
--- a/web/README.md
+++ b/web/README.md
@@ -8,21 +8,21 @@ The Owncast web frontend is a [Next.js](https://nextjs.org/) project with [React
**First**, install the dependencies.
-```npm install --include=dev```
+`npm install --include=dev`
### Run the web project
Make sure you're running an instance of Owncast on localhost:8080, as your copy of the admin will look to use that as the API.
**Next**, start the web project with npm.
-
- ```npm run dev```
+
+`npm run dev`
### Components and Styles
You can start the [Storybook](https://storybook.js.org/) UI for exploring, testing, and developing components by running:
-```npm run storybook```
+`npm run storybook`
This allows for components to be made available without the need of the server to be running and changes to be made in
isolation.
@@ -63,4 +63,4 @@ We are currently experimenting with using [Storybook](https://storybook.js.org/)
To work with Storybook:
-```npm run storybook```
\ No newline at end of file
+`npm run storybook`
diff --git a/web/components/CustomPageContent.tsx b/web/components/CustomPageContent.tsx
index dae759bb2..147e9c2ad 100644
--- a/web/components/CustomPageContent.tsx
+++ b/web/components/CustomPageContent.tsx
@@ -4,5 +4,6 @@ interface Props {
export default function CustomPageContent(props: Props) {
const { content } = props;
+ // eslint-disable-next-line react/no-danger
return
);
diff --git a/web/docs/README.md b/web/docs/README.md
index 6515b560e..97a777e78 100644
--- a/web/docs/README.md
+++ b/web/docs/README.md
@@ -1,19 +1,19 @@
# Tips for creating a new Admin form
### Layout
+
- Give your page or form a title. Feel free to use Ant Design's `` component.
- Give your form a description inside of a `` tag.
-- Use some Ant Design `Row` and `Col`'s to layout your forms if you want to spread them out into responsive columns. If you use an ``s, be sure to use `
`s with them too!
+- Use some Ant Design `Row` and `Col`'s to layout your forms if you want to spread them out into responsive columns. If you use an ``s, be sure to use `
`s with them too!
- Use the `form-module` CSS class if you want to add a visual separation to a grouping of items.
-
-
### Form fields
+
- Feel free to use the pre-styled `` text form field or the `` compnent, in a group of form fields together. These have been styled and laid out to match each other.
-- `Slider`'s - If your form uses an Ant Slider component, follow this recommended markup of CSS classes to maintain a consistent look and feel to other Sliders in the app.
+- `Slider`'s - If your form uses an Ant Slider component, follow this recommended markup of CSS classes to maintain a consistent look and feel to other Sliders in the app.
```
@@ -22,24 +22,28 @@
```
### Submit Statuses
-- It would be nice to display indicators of success/warnings to let users know if something has been successfully updated on the server. It has a lot of steps (sorry, but it could probably be optimized), but it'll provide a consistent way to display messaging.
+
+- It would be nice to display indicators of success/warnings to let users know if something has been successfully updated on the server. It has a lot of steps (sorry, but it could probably be optimized), but it'll provide a consistent way to display messaging.
- See `reset-yp.tsx` for an example of using `submitStatus` with `useState()` and the `` component to achieve this.
### Styling
-- This admin site chooses to have a generally Dark color palette, but with colors that are different from Ant design's _dark_ stylesheet, so that style sheet is not included. This results in a very large `ant-overrides.scss` file to reset colors on frequently used Ant components in the system. If you find yourself a new Ant Component that has not yet been used in this app, feel free to add a reset style for that component to the overrides stylesheet.
+
+- This admin site chooses to have a generally Dark color palette, but with colors that are different from Ant design's _dark_ stylesheet, so that style sheet is not included. This results in a very large `ant-overrides.scss` file to reset colors on frequently used Ant components in the system. If you find yourself a new Ant Component that has not yet been used in this app, feel free to add a reset style for that component to the overrides stylesheet.
- Take a look at `variables.scss` CSS file if you want to give some elements custom css colors.
+---
---
----
-# Creating Admin forms the Config section
+
+# Creating Admin forms the Config section
+
First things first..
## General Config data flow in this React app
-- When the Admin app loads, the `ServerStatusContext` (in addition to checking server `/status` on a timer) makes a call to the `/serverconfig` API to get your config details. This data will be stored as **`serverConfig`** in app state, and _provided_ to the app via `useContext` hook.
+- When the Admin app loads, the `ServerStatusContext` (in addition to checking server `/status` on a timer) makes a call to the `/serverconfig` API to get your config details. This data will be stored as **`serverConfig`** in app state, and _provided_ to the app via `useContext` hook.
- The `serverConfig` in state is be the central source of data that pre-populates the forms.
@@ -47,39 +51,42 @@ First things first..
- After you have updated a config value in a form field, and successfully submitted it through its endpoint, you should call `setFieldInConfigState` to update the global state with the new value.
-
## Suggested Config Form Flow
-- *NOTE: Each top field of the serverConfig has its own API update endpoint.*
+- _NOTE: Each top field of the serverConfig has its own API update endpoint._
There many steps here, but they are highly suggested to ensure that Config values are updated and displayed properly throughout the entire admin form.
For each form input (or group of inputs) you make, you should:
- 1. Get the field values that you want out of `serverConfig` from ServerStatusContext with `useContext`.
- 2. Next we'll have to put these field values of interest into a `useState` in each grouping. This will help you edit the form.
- 3. Because ths config data is populated asynchronously, Use a `useEffect` to check when that data has arrived before putting it into state.
- 4. You will be using the state's value to populate the `defaultValue` and the `value` props of each Ant input component (`Input`, `Toggle`, `Switch`, `Select`, `Slider` are currently used).
- 5. When an `onChange` event fires for each type of input component, you will update the local state of each page with the changed value.
- 6. Depending on the form, an `onChange` of the input component, or a subsequent `onClick` of a submit button will take the value from local state and POST the field's API.
- 7. `onSuccess` of the post, you should update the global app state with the new value.
+
+1. Get the field values that you want out of `serverConfig` from ServerStatusContext with `useContext`.
+2. Next we'll have to put these field values of interest into a `useState` in each grouping. This will help you edit the form.
+3. Because ths config data is populated asynchronously, Use a `useEffect` to check when that data has arrived before putting it into state.
+4. You will be using the state's value to populate the `defaultValue` and the `value` props of each Ant input component (`Input`, `Toggle`, `Switch`, `Select`, `Slider` are currently used).
+5. When an `onChange` event fires for each type of input component, you will update the local state of each page with the changed value.
+6. Depending on the form, an `onChange` of the input component, or a subsequent `onClick` of a submit button will take the value from local state and POST the field's API.
+7. `onSuccess` of the post, you should update the global app state with the new value.
There are also a variety of other local states to manage the display of error/success messaging.
- It is recommended that you use `form-textfield-with-submit` and `form-toggleswitch`(with `useSubmit=true`) Components to edit Config fields.
Examples of Config form groups where individual form fields submitting to the update API include:
+
- `edit-instance-details.tsx`
- `edit-server-details.tsx`
-Examples of Config form groups where there is 1 submit button for the entire group include:
+Examples of Config form groups where there is 1 submit button for the entire group include:
+
- `edit-storage.tsx`
-
---
+
#### Notes about `form-textfield-with-submit` and `form-togglefield` (with useSubmit=true)
+
- The text field is intentionally designed to make it difficult for the user to submit bad data.
- If you make a change on a field, a Submit buttton will show up that you have to click to update. That will be the only way you can update it.
-- If you clear out a field that is marked as Required, then exit/blur the field, it will repopulate with its original value.
+- If you clear out a field that is marked as Required, then exit/blur the field, it will repopulate with its original value.
- Both of these elements are specifically meant to be used with updating `serverConfig` fields, since each field requires its own endpoint.
@@ -88,4 +95,3 @@ Examples of Config form groups where there is 1 submit button for the entire gro
- (currently undergoing re-styling and TS cleanup)
- NOTE: you don't have to use these components. Some form groups may require a customized UX flow where you're better off using the Ant components straight up.
-
diff --git a/web/interfaces/client-config.model.ts b/web/interfaces/client-config.model.ts
index a3d7fb5e5..b763209f2 100644
--- a/web/interfaces/client-config.model.ts
+++ b/web/interfaces/client-config.model.ts
@@ -1,5 +1,6 @@
export interface ClientConfig {
name: string;
+ title?: string;
summary: string;
logo: string;
tags: string[];
diff --git a/web/interfaces/external-action.ts b/web/interfaces/external-action.ts
index 145b42ea7..538dd7e24 100644
--- a/web/interfaces/external-action.ts
+++ b/web/interfaces/external-action.ts
@@ -3,4 +3,6 @@ export interface ExternalAction {
description?: string;
color?: string;
url: string;
+ icon?: string;
+ openExternally?: boolean;
}
diff --git a/web/package-lock.json b/web/package-lock.json
index ff11c007a..52074baa2 100644
--- a/web/package-lock.json
+++ b/web/package-lock.json
@@ -11,7 +11,7 @@
"@ant-design/icons": "4.7.0",
"@emoji-mart/data": "^1.0.1",
"@storybook/react": "^6.4.22",
- "antd": "4.18.9",
+ "antd": "^4.20.4",
"autoprefixer": "^10.4.4",
"chart.js": "3.7.0",
"chartkick": "4.1.1",
@@ -81,7 +81,7 @@
"html-webpack-plugin": "^5.5.0",
"less": "^4.1.2",
"less-loader": "^10.2.0",
- "prettier": "2.5.1",
+ "prettier": "2.6.2",
"sass": "^1.50.0",
"sass-loader": "^10.1.1",
"sb": "^6.4.22",
@@ -12128,9 +12128,9 @@
}
},
"node_modules/antd": {
- "version": "4.18.9",
- "resolved": "https://registry.npmjs.org/antd/-/antd-4.18.9.tgz",
- "integrity": "sha512-MbtFY2J8LvXUnxYH2QehdhP9qMEpHvOp7PmiTIHc7v6aSb+LILCibskRIMGNEKvvhBvsTdq0cnjanR9/IbqEAw==",
+ "version": "4.20.4",
+ "resolved": "https://registry.npmjs.org/antd/-/antd-4.20.4.tgz",
+ "integrity": "sha512-xtaMNuRvumMXQLsoAwiQRY5rEJVRtJGumby3aPIJdWXwBtZ7eDDuXbT/Uo8xT8rTND0cK5rRQlxMyisCJrZD9Q==",
"dependencies": {
"@ant-design/colors": "^6.0.0",
"@ant-design/icons": "^4.7.0",
@@ -12141,38 +12141,40 @@
"copy-to-clipboard": "^3.2.0",
"lodash": "^4.17.21",
"memoize-one": "^6.0.0",
- "moment": "^2.25.3",
- "rc-cascader": "~3.2.1",
+ "moment": "^2.29.2",
+ "rc-cascader": "~3.5.0",
"rc-checkbox": "~2.3.0",
"rc-collapse": "~3.1.0",
- "rc-dialog": "~8.6.0",
+ "rc-dialog": "~8.8.1",
"rc-drawer": "~4.4.2",
- "rc-dropdown": "~3.2.5",
- "rc-field-form": "~1.23.0",
- "rc-image": "~5.2.5",
+ "rc-dropdown": "~3.5.0",
+ "rc-field-form": "~1.26.1",
+ "rc-image": "~5.6.0",
+ "rc-input": "~0.0.1-alpha.5",
"rc-input-number": "~7.3.0",
- "rc-mentions": "~1.6.1",
- "rc-menu": "~9.2.1",
- "rc-motion": "^2.4.4",
- "rc-notification": "~4.5.7",
+ "rc-mentions": "~1.7.0",
+ "rc-menu": "~9.5.5",
+ "rc-motion": "^2.5.1",
+ "rc-notification": "~4.6.0",
"rc-pagination": "~3.1.9",
- "rc-picker": "~2.5.17",
+ "rc-picker": "~2.6.4",
"rc-progress": "~3.2.1",
"rc-rate": "~2.9.0",
"rc-resize-observer": "^1.2.0",
- "rc-select": "~14.0.0-alpha.15",
- "rc-slider": "~9.7.4",
+ "rc-segmented": "~2.1.0 ",
+ "rc-select": "~14.1.1",
+ "rc-slider": "~10.0.0",
"rc-steps": "~4.1.0",
"rc-switch": "~3.2.0",
- "rc-table": "~7.23.0",
- "rc-tabs": "~11.10.0",
+ "rc-table": "~7.24.0",
+ "rc-tabs": "~11.13.0",
"rc-textarea": "~0.3.0",
"rc-tooltip": "~5.1.1",
- "rc-tree": "~5.4.3",
- "rc-tree-select": "~5.1.1",
+ "rc-tree": "~5.5.0",
+ "rc-tree-select": "~5.3.0",
"rc-trigger": "^5.2.10",
"rc-upload": "~4.3.0",
- "rc-util": "^5.14.0",
+ "rc-util": "^5.20.0",
"scroll-into-view-if-needed": "^2.2.25"
},
"funding": {
@@ -12184,6 +12186,20 @@
"react-dom": ">=16.9.0"
}
},
+ "node_modules/antd/node_modules/rc-util": {
+ "version": "5.21.4",
+ "resolved": "https://registry.npmjs.org/rc-util/-/rc-util-5.21.4.tgz",
+ "integrity": "sha512-rq11ap3NnOIdywFhcMQ9J7DXRJJ1c1Id1Hvr/1Dphr+5X75ERJBJybuh779DdurP4LJQqAhT6Aie0AjrBc5Vqw==",
+ "dependencies": {
+ "@babel/runtime": "^7.12.5",
+ "react-is": "^16.12.0",
+ "shallowequal": "^1.1.0"
+ },
+ "peerDependencies": {
+ "react": ">=16.9.0",
+ "react-dom": ">=16.9.0"
+ }
+ },
"node_modules/anymatch": {
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz",
@@ -12453,9 +12469,9 @@
"dev": true
},
"node_modules/async-validator": {
- "version": "4.0.7",
- "resolved": "https://registry.npmjs.org/async-validator/-/async-validator-4.0.7.tgz",
- "integrity": "sha512-Pj2IR7u8hmUEDOwB++su6baaRi+QvsgajuFB9j95foM1N2gy5HM4z60hfusIO0fBPG5uLAEl6yCJr1jNSVugEQ=="
+ "version": "4.1.1",
+ "resolved": "https://registry.npmjs.org/async-validator/-/async-validator-4.1.1.tgz",
+ "integrity": "sha512-p4DO/JXwjs8klJyJL8Q2oM4ks5fUTze/h5k10oPPKMiLe1fj3G1QMzPHNmN1Py4ycOk7WlO2DcGXv1qiESJCZA=="
},
"node_modules/asynckit": {
"version": "0.4.0",
@@ -15305,9 +15321,9 @@
}
},
"node_modules/dayjs": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.1.tgz",
- "integrity": "sha512-ER7EjqVAMkRRsxNCC5YqJ9d9VQYuWdGt7aiH2qA5R5wt8ZmWaP2dLUSIK6y/kVzLMlmh1Tvu5xUf4M/wdGJ5KA=="
+ "version": "1.11.2",
+ "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.2.tgz",
+ "integrity": "sha512-F4LXf1OeU9hrSYRPTTj/6FbO4HTjPKXvEIC1P2kcnFurViINCVk3ZV0xAS3XVx9MkMsXbbqlK6hjseaYbgKEHw=="
},
"node_modules/debug": {
"version": "4.3.4",
@@ -15598,9 +15614,9 @@
"dev": true
},
"node_modules/dom-align": {
- "version": "1.12.2",
- "resolved": "https://registry.npmjs.org/dom-align/-/dom-align-1.12.2.tgz",
- "integrity": "sha512-pHuazgqrsTFrGU2WLDdXxCFabkdQDx72ddkraZNih1KsMcN5qsRSTR9O4VJRlwTPCPb5COYg3LOfiMHHcPInHg=="
+ "version": "1.12.3",
+ "resolved": "https://registry.npmjs.org/dom-align/-/dom-align-1.12.3.tgz",
+ "integrity": "sha512-Gj9hZN3a07cbR6zviMUBOMPdWxYhbMI+x+WS0NAIu2zFZmbK8ys9R79g+iG9qLnlCwpFoaB+fKy8Pdv470GsPA=="
},
"node_modules/dom-converter": {
"version": "0.2.0",
@@ -25415,15 +25431,18 @@
}
},
"node_modules/prettier": {
- "version": "2.5.1",
- "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.5.1.tgz",
- "integrity": "sha512-vBZcPRUR5MZJwoyi3ZoyQlc1rXeEck8KgeC9AwwOn+exuxLxq5toTRDTSaVrXHxelDMHy9zlicw8u66yxoSUFg==",
+ "version": "2.6.2",
+ "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.6.2.tgz",
+ "integrity": "sha512-PkUpF+qoXTqhOeWL9fu7As8LXsIUZ1WYaJiY/a7McAQzxjk82OF0tibkFXVCDImZtWxbvojFjerkiLb0/q8mew==",
"dev": true,
"bin": {
"prettier": "bin-prettier.js"
},
"engines": {
"node": ">=10.13.0"
+ },
+ "funding": {
+ "url": "https://github.com/prettier/prettier?sponsor=1"
}
},
"node_modules/prettier-linter-helpers": {
@@ -25921,9 +25940,9 @@
}
},
"node_modules/rc-align": {
- "version": "4.0.11",
- "resolved": "https://registry.npmjs.org/rc-align/-/rc-align-4.0.11.tgz",
- "integrity": "sha512-n9mQfIYQbbNTbefyQnRHZPWuTEwG1rY4a9yKlIWHSTbgwI+XUMGRYd0uJ5pE2UbrNX0WvnMBA1zJ3Lrecpra/A==",
+ "version": "4.0.12",
+ "resolved": "https://registry.npmjs.org/rc-align/-/rc-align-4.0.12.tgz",
+ "integrity": "sha512-3DuwSJp8iC/dgHzwreOQl52soj40LchlfUHtgACOUtwGuoFIOVh6n/sCpfqCU8kO5+iz6qR0YKvjgB8iPdE3aQ==",
"dependencies": {
"@babel/runtime": "^7.10.1",
"classnames": "2.x",
@@ -25938,15 +25957,15 @@
}
},
"node_modules/rc-cascader": {
- "version": "3.2.9",
- "resolved": "https://registry.npmjs.org/rc-cascader/-/rc-cascader-3.2.9.tgz",
- "integrity": "sha512-Mvkegzf506PD7qc38kg2tGllIBXs5dio3DPg+NER7SiOfCXBCATWYEs0CbUp8JDQgYHoHF0vPvFMYtxFTJuWaw==",
+ "version": "3.5.0",
+ "resolved": "https://registry.npmjs.org/rc-cascader/-/rc-cascader-3.5.0.tgz",
+ "integrity": "sha512-rpXnWCfvk7Frh2dBzMoA0c7i0nn6aJU7L2NZo8R8pNkrT0sKgytQSpdtPWP+Pq8IkvwbEd8BU8Z8OnOljcqgZg==",
"dependencies": {
"@babel/runtime": "^7.12.5",
"array-tree-filter": "^2.1.0",
"classnames": "^2.3.1",
- "rc-select": "~14.0.0-alpha.23",
- "rc-tree": "~5.4.3",
+ "rc-select": "~14.1.0",
+ "rc-tree": "~5.5.0",
"rc-util": "^5.6.1"
},
"peerDependencies": {
@@ -25984,14 +26003,28 @@
}
},
"node_modules/rc-dialog": {
- "version": "8.6.0",
- "resolved": "https://registry.npmjs.org/rc-dialog/-/rc-dialog-8.6.0.tgz",
- "integrity": "sha512-GSbkfqjqxpZC5/zc+8H332+q5l/DKUhpQr0vdX2uDsxo5K0PhvaMEVjyoJUTkZ3+JstEADQji1PVLVb/2bJeOQ==",
+ "version": "8.8.1",
+ "resolved": "https://registry.npmjs.org/rc-dialog/-/rc-dialog-8.8.1.tgz",
+ "integrity": "sha512-7M1WKZCjfIABKEaJVskdYvb80z+RX7I11PeSjPVfLOOaJAmIepvDEd0alBtOZvOL3fZFWlMs4JVZtp9LZgONxA==",
"dependencies": {
"@babel/runtime": "^7.10.1",
"classnames": "^2.2.6",
"rc-motion": "^2.3.0",
- "rc-util": "^5.6.1"
+ "rc-util": "^5.21.0"
+ },
+ "peerDependencies": {
+ "react": ">=16.9.0",
+ "react-dom": ">=16.9.0"
+ }
+ },
+ "node_modules/rc-dialog/node_modules/rc-util": {
+ "version": "5.21.4",
+ "resolved": "https://registry.npmjs.org/rc-util/-/rc-util-5.21.4.tgz",
+ "integrity": "sha512-rq11ap3NnOIdywFhcMQ9J7DXRJJ1c1Id1Hvr/1Dphr+5X75ERJBJybuh779DdurP4LJQqAhT6Aie0AjrBc5Vqw==",
+ "dependencies": {
+ "@babel/runtime": "^7.12.5",
+ "react-is": "^16.12.0",
+ "shallowequal": "^1.1.0"
},
"peerDependencies": {
"react": ">=16.9.0",
@@ -26013,26 +26046,27 @@
}
},
"node_modules/rc-dropdown": {
- "version": "3.2.5",
- "resolved": "https://registry.npmjs.org/rc-dropdown/-/rc-dropdown-3.2.5.tgz",
- "integrity": "sha512-dVO2eulOSbEf+F4OyhCY5iGiMVhUYY/qeXxL7Ex2jDBt/xc89jU07mNoowV6aWxwVOc70pxEINff0oM2ogjluA==",
+ "version": "3.5.2",
+ "resolved": "https://registry.npmjs.org/rc-dropdown/-/rc-dropdown-3.5.2.tgz",
+ "integrity": "sha512-Ty4LsXjkspZuFJSRx3blCLLCDicXM5qds6F1odgEa+jcjC+OJKHQGnvE4FqtoljPaqWm4wG78pbgXH6Ddh2DkA==",
"dependencies": {
"@babel/runtime": "^7.10.1",
"classnames": "^2.2.6",
- "rc-trigger": "^5.0.4"
+ "rc-trigger": "^5.0.4",
+ "rc-util": "^5.17.0"
},
"peerDependencies": {
- "react": "*",
- "react-dom": "*"
+ "react": ">=16.11.0",
+ "react-dom": ">=16.11.0"
}
},
"node_modules/rc-field-form": {
- "version": "1.23.1",
- "resolved": "https://registry.npmjs.org/rc-field-form/-/rc-field-form-1.23.1.tgz",
- "integrity": "sha512-Mun+eaFmX1Pjud9bz0fD0IvxwDfFKWk2Q8tkt4sg4aKR9/FML/rzYC5MjY77p86X45XBurBDUR3gAda+Cg/ULw==",
+ "version": "1.26.4",
+ "resolved": "https://registry.npmjs.org/rc-field-form/-/rc-field-form-1.26.4.tgz",
+ "integrity": "sha512-eCCyiNNaN0NTYTyoziQHD4Fj6mUED21lWkw66vg+kttg0eDw+miD6LsaJbTD5c2bzKjUJTf10AitPG+f5zT4+A==",
"dependencies": {
"@babel/runtime": "^7.8.4",
- "async-validator": "^4.0.2",
+ "async-validator": "^4.1.0",
"rc-util": "^5.8.0"
},
"engines": {
@@ -26044,13 +26078,13 @@
}
},
"node_modules/rc-image": {
- "version": "5.2.5",
- "resolved": "https://registry.npmjs.org/rc-image/-/rc-image-5.2.5.tgz",
- "integrity": "sha512-qUfZjYIODxO0c8a8P5GeuclYXZjzW4hV/5hyo27XqSFo1DmTCs2HkVeQObkcIk5kNsJtgsj1KoPThVsSc/PXOw==",
+ "version": "5.6.2",
+ "resolved": "https://registry.npmjs.org/rc-image/-/rc-image-5.6.2.tgz",
+ "integrity": "sha512-qhKOVvivCZkd6CrzS/4ST2+Auu16mtPSFVqVzwE7sELWfuvzcLGTzGv8UsVvm6qRNIz6SeaueUetqi4Ii16XQA==",
"dependencies": {
"@babel/runtime": "^7.11.2",
"classnames": "^2.2.6",
- "rc-dialog": "~8.6.0",
+ "rc-dialog": "~8.8.0",
"rc-util": "^5.0.6"
},
"peerDependencies": {
@@ -26058,6 +26092,20 @@
"react-dom": ">=16.9.0"
}
},
+ "node_modules/rc-input": {
+ "version": "0.0.1-alpha.7",
+ "resolved": "https://registry.npmjs.org/rc-input/-/rc-input-0.0.1-alpha.7.tgz",
+ "integrity": "sha512-eozaqpCYWSY5LBMwlHgC01GArkVEP+XlJ84OMvdkwUnJBSv83Yxa15pZpn7vACAj84uDC4xOA2CoFdbLuqB08Q==",
+ "dependencies": {
+ "@babel/runtime": "^7.11.1",
+ "classnames": "^2.2.1",
+ "rc-util": "^5.18.1"
+ },
+ "peerDependencies": {
+ "react": ">=16.0.0",
+ "react-dom": ">=16.0.0"
+ }
+ },
"node_modules/rc-input-number": {
"version": "7.3.4",
"resolved": "https://registry.npmjs.org/rc-input-number/-/rc-input-number-7.3.4.tgz",
@@ -26072,14 +26120,28 @@
"react-dom": ">=16.9.0"
}
},
+ "node_modules/rc-input/node_modules/rc-util": {
+ "version": "5.21.4",
+ "resolved": "https://registry.npmjs.org/rc-util/-/rc-util-5.21.4.tgz",
+ "integrity": "sha512-rq11ap3NnOIdywFhcMQ9J7DXRJJ1c1Id1Hvr/1Dphr+5X75ERJBJybuh779DdurP4LJQqAhT6Aie0AjrBc5Vqw==",
+ "dependencies": {
+ "@babel/runtime": "^7.12.5",
+ "react-is": "^16.12.0",
+ "shallowequal": "^1.1.0"
+ },
+ "peerDependencies": {
+ "react": ">=16.9.0",
+ "react-dom": ">=16.9.0"
+ }
+ },
"node_modules/rc-mentions": {
- "version": "1.6.5",
- "resolved": "https://registry.npmjs.org/rc-mentions/-/rc-mentions-1.6.5.tgz",
- "integrity": "sha512-CUU4+q+awG2pA0l/tG2kPB2ytWbKQUkFxVeKwacr63w7crE/yjfzrFXxs/1fxhyEbQUWdAZt/L25QBieukYQ5w==",
+ "version": "1.7.1",
+ "resolved": "https://registry.npmjs.org/rc-mentions/-/rc-mentions-1.7.1.tgz",
+ "integrity": "sha512-JbCS9bTqt6BYN2vfTPythlScLuc42rIlX85n7975RnkfawXlJjskHOlR3o8EpD4asl4KuA2jKTy0dj39DtSVqg==",
"dependencies": {
"@babel/runtime": "^7.10.1",
"classnames": "^2.2.6",
- "rc-menu": "~9.3.2",
+ "rc-menu": "~9.5.1",
"rc-textarea": "^0.3.0",
"rc-trigger": "^5.0.4",
"rc-util": "^5.0.1"
@@ -26089,28 +26151,10 @@
"react-dom": ">=16.9.0"
}
},
- "node_modules/rc-mentions/node_modules/rc-menu": {
- "version": "9.3.2",
- "resolved": "https://registry.npmjs.org/rc-menu/-/rc-menu-9.3.2.tgz",
- "integrity": "sha512-h3m45oY1INZyqphGELkdT0uiPnFzxkML8m0VMhJnk2fowtqfiT7F5tJLT3znEVaPIY80vMy1bClCkgq8U91CzQ==",
- "dependencies": {
- "@babel/runtime": "^7.10.1",
- "classnames": "2.x",
- "rc-motion": "^2.4.3",
- "rc-overflow": "^1.2.0",
- "rc-trigger": "^5.1.2",
- "rc-util": "^5.12.0",
- "shallowequal": "^1.1.0"
- },
- "peerDependencies": {
- "react": ">=16.9.0",
- "react-dom": ">=16.9.0"
- }
- },
"node_modules/rc-menu": {
- "version": "9.2.1",
- "resolved": "https://registry.npmjs.org/rc-menu/-/rc-menu-9.2.1.tgz",
- "integrity": "sha512-UbEtn3rflJ8zS+etYGTVQuzy7Fm+yWXR5c0Rl6ecNTS/dPknRyWAyhJcbeR0Hu1+RdQT+0VCqrUPrgKnm4iY+w==",
+ "version": "9.5.5",
+ "resolved": "https://registry.npmjs.org/rc-menu/-/rc-menu-9.5.5.tgz",
+ "integrity": "sha512-wj2y2BAKwSMyWXO3RBf9sNN5V+DFWxFl45Ma6qQEHA5nwwh7p07bNgc6AAJc+L1+LAz+rWz3AU8PYyT17hMHCw==",
"dependencies": {
"@babel/runtime": "^7.10.1",
"classnames": "2.x",
@@ -26126,13 +26170,13 @@
}
},
"node_modules/rc-motion": {
- "version": "2.4.9",
- "resolved": "https://registry.npmjs.org/rc-motion/-/rc-motion-2.4.9.tgz",
- "integrity": "sha512-lrIpBQQ5gIDVedaubnhXuTjC3zpW7HvC/34KyvcHlf6fBjuBlwv45PbonFhmk4Rgu7gLQYrKoMGgFVXqxxyLCw==",
+ "version": "2.6.0",
+ "resolved": "https://registry.npmjs.org/rc-motion/-/rc-motion-2.6.0.tgz",
+ "integrity": "sha512-1MDWA9+i174CZ0SIDenSYm2Wb9YbRkrexjZWR0CUFu7D6f23E8Y0KsTgk9NGOLJsGak5ELZK/Y5lOlf5wQdzbw==",
"dependencies": {
"@babel/runtime": "^7.11.1",
"classnames": "^2.2.1",
- "rc-util": "^5.19.2"
+ "rc-util": "^5.21.0"
},
"peerDependencies": {
"react": ">=16.9.0",
@@ -26154,14 +26198,14 @@
}
},
"node_modules/rc-notification": {
- "version": "4.5.7",
- "resolved": "https://registry.npmjs.org/rc-notification/-/rc-notification-4.5.7.tgz",
- "integrity": "sha512-zhTGUjBIItbx96SiRu3KVURcLOydLUHZCPpYEn1zvh+re//Tnq/wSxN4FKgp38n4HOgHSVxcLEeSxBMTeBBDdw==",
+ "version": "4.6.0",
+ "resolved": "https://registry.npmjs.org/rc-notification/-/rc-notification-4.6.0.tgz",
+ "integrity": "sha512-xF3MKgIoynzjQAO4lqsoraiFo3UXNYlBfpHs0VWvwF+4pimen9/H1DYLN2mfRWhHovW6gRpla73m2nmyIqAMZQ==",
"dependencies": {
"@babel/runtime": "^7.10.1",
"classnames": "2.x",
"rc-motion": "^2.2.0",
- "rc-util": "^5.0.1"
+ "rc-util": "^5.20.1"
},
"engines": {
"node": ">=8.x"
@@ -26171,6 +26215,20 @@
"react-dom": ">=16.9.0"
}
},
+ "node_modules/rc-notification/node_modules/rc-util": {
+ "version": "5.21.4",
+ "resolved": "https://registry.npmjs.org/rc-util/-/rc-util-5.21.4.tgz",
+ "integrity": "sha512-rq11ap3NnOIdywFhcMQ9J7DXRJJ1c1Id1Hvr/1Dphr+5X75ERJBJybuh779DdurP4LJQqAhT6Aie0AjrBc5Vqw==",
+ "dependencies": {
+ "@babel/runtime": "^7.12.5",
+ "react-is": "^16.12.0",
+ "shallowequal": "^1.1.0"
+ },
+ "peerDependencies": {
+ "react": ">=16.9.0",
+ "react-dom": ">=16.9.0"
+ }
+ },
"node_modules/rc-overflow": {
"version": "1.2.4",
"resolved": "https://registry.npmjs.org/rc-overflow/-/rc-overflow-1.2.4.tgz",
@@ -26214,9 +26272,9 @@
}
},
"node_modules/rc-picker": {
- "version": "2.5.19",
- "resolved": "https://registry.npmjs.org/rc-picker/-/rc-picker-2.5.19.tgz",
- "integrity": "sha512-u6myoCu/qiQ0vLbNzSzNrzTQhs7mldArCpPHrEI6OUiifs+IPXmbesqSm0zilJjfzrZJLgYeyyOMSznSlh0GKA==",
+ "version": "2.6.9",
+ "resolved": "https://registry.npmjs.org/rc-picker/-/rc-picker-2.6.9.tgz",
+ "integrity": "sha512-yH3UYXCADf7REtOAB5cwe1cyFKtB0p204RCN8JdZGG4uuSOZ1IPTkk/GJS6HOpxspZeJCLGzzajuQMDwck9dsw==",
"dependencies": {
"@babel/runtime": "^7.10.1",
"classnames": "^2.2.1",
@@ -26281,10 +26339,25 @@
"react-dom": ">=16.9.0"
}
},
+ "node_modules/rc-segmented": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/rc-segmented/-/rc-segmented-2.1.0.tgz",
+ "integrity": "sha512-hUlonro+pYoZcwrH6Vm56B2ftLfQh046hrwif/VwLIw1j3zGt52p5mREBwmeVzXnSwgnagpOpfafspzs1asjGw==",
+ "dependencies": {
+ "@babel/runtime": "^7.11.1",
+ "classnames": "^2.2.1",
+ "rc-motion": "^2.4.4",
+ "rc-util": "^5.17.0"
+ },
+ "peerDependencies": {
+ "react": ">=16.0.0",
+ "react-dom": ">=16.0.0"
+ }
+ },
"node_modules/rc-select": {
- "version": "14.0.6",
- "resolved": "https://registry.npmjs.org/rc-select/-/rc-select-14.0.6.tgz",
- "integrity": "sha512-HMb2BwfTvBxMmIWTR/afP4bcRJLbVKFSBW/VFfL5Z+kdV2XlrYdlliK2uHY7pRRvW16PPGwmOwGfV+eoulPINw==",
+ "version": "14.1.2",
+ "resolved": "https://registry.npmjs.org/rc-select/-/rc-select-14.1.2.tgz",
+ "integrity": "sha512-/QgarL/T/d7MIPcoRmTca2TWHBoHBM1EQIgdaFmvl3qsYRSbrb8NpWcQuJoc9fprXERWxdYSTUThQObHvdEVBQ==",
"dependencies": {
"@babel/runtime": "^7.10.1",
"classnames": "2.x",
@@ -26303,14 +26376,14 @@
}
},
"node_modules/rc-slider": {
- "version": "9.7.5",
- "resolved": "https://registry.npmjs.org/rc-slider/-/rc-slider-9.7.5.tgz",
- "integrity": "sha512-LV/MWcXFjco1epPbdw1JlLXlTgmWpB9/Y/P2yinf8Pg3wElHxA9uajN21lJiWtZjf5SCUekfSP6QMJfDo4t1hg==",
+ "version": "10.0.0",
+ "resolved": "https://registry.npmjs.org/rc-slider/-/rc-slider-10.0.0.tgz",
+ "integrity": "sha512-Bk54UIKWW4wyhHcL8ehAxt+wX+n69dscnHTX6Uv0FMxSke/TGrlkZz1LSIWblCpfE2zr/dwR2Ca8nZGk3U+Tbg==",
"dependencies": {
"@babel/runtime": "^7.10.1",
"classnames": "^2.2.5",
"rc-tooltip": "^5.0.1",
- "rc-util": "^5.16.1",
+ "rc-util": "^5.18.1",
"shallowequal": "^1.1.0"
},
"engines": {
@@ -26321,6 +26394,20 @@
"react-dom": ">=16.9.0"
}
},
+ "node_modules/rc-slider/node_modules/rc-util": {
+ "version": "5.21.4",
+ "resolved": "https://registry.npmjs.org/rc-util/-/rc-util-5.21.4.tgz",
+ "integrity": "sha512-rq11ap3NnOIdywFhcMQ9J7DXRJJ1c1Id1Hvr/1Dphr+5X75ERJBJybuh779DdurP4LJQqAhT6Aie0AjrBc5Vqw==",
+ "dependencies": {
+ "@babel/runtime": "^7.12.5",
+ "react-is": "^16.12.0",
+ "shallowequal": "^1.1.0"
+ },
+ "peerDependencies": {
+ "react": ">=16.9.0",
+ "react-dom": ">=16.9.0"
+ }
+ },
"node_modules/rc-steps": {
"version": "4.1.4",
"resolved": "https://registry.npmjs.org/rc-steps/-/rc-steps-4.1.4.tgz",
@@ -26353,9 +26440,9 @@
}
},
"node_modules/rc-table": {
- "version": "7.23.2",
- "resolved": "https://registry.npmjs.org/rc-table/-/rc-table-7.23.2.tgz",
- "integrity": "sha512-opc2IBJOetsPSdNI+u1Lh9yY4Ks+EMgo1oJzZN+yIV4fRcgP81tHtxdPOVvXPFI4rUMO8CKnmHbGPU7jxMRAeg==",
+ "version": "7.24.1",
+ "resolved": "https://registry.npmjs.org/rc-table/-/rc-table-7.24.1.tgz",
+ "integrity": "sha512-DRWpv5z5pmOaTmy5GqWoskeV1thaOu5HuD+2f61b/CkbBqlgJR3cygc5R/Qvd2uVW6pHU0lYulhmz0VLVFm+rw==",
"dependencies": {
"@babel/runtime": "^7.10.1",
"classnames": "^2.2.5",
@@ -26372,14 +26459,14 @@
}
},
"node_modules/rc-tabs": {
- "version": "11.10.8",
- "resolved": "https://registry.npmjs.org/rc-tabs/-/rc-tabs-11.10.8.tgz",
- "integrity": "sha512-uK+x+eJ8WM4jiXoqGa+P+JUQX2Wlkj9f0o/5dyOw42B6YLnHJN80uTVcCeAmtA1N0xjPW0GNSZvUm4SU3jAYpw==",
+ "version": "11.13.0",
+ "resolved": "https://registry.npmjs.org/rc-tabs/-/rc-tabs-11.13.0.tgz",
+ "integrity": "sha512-aUw1Pq0B1a2zGX4o/m3yrQycZcCLgDp6gKwn8IAU07q148RRONsVGxi0oLVVe5SE51kOB+j0bk1RX43ZBdZNgA==",
"dependencies": {
"@babel/runtime": "^7.11.2",
"classnames": "2.x",
- "rc-dropdown": "^3.2.0",
- "rc-menu": "~9.3.2",
+ "rc-dropdown": "~3.5.0",
+ "rc-menu": "~9.5.1",
"rc-resize-observer": "^1.0.0",
"rc-util": "^5.5.0"
},
@@ -26391,24 +26478,6 @@
"react-dom": ">=16.9.0"
}
},
- "node_modules/rc-tabs/node_modules/rc-menu": {
- "version": "9.3.2",
- "resolved": "https://registry.npmjs.org/rc-menu/-/rc-menu-9.3.2.tgz",
- "integrity": "sha512-h3m45oY1INZyqphGELkdT0uiPnFzxkML8m0VMhJnk2fowtqfiT7F5tJLT3znEVaPIY80vMy1bClCkgq8U91CzQ==",
- "dependencies": {
- "@babel/runtime": "^7.10.1",
- "classnames": "2.x",
- "rc-motion": "^2.4.3",
- "rc-overflow": "^1.2.0",
- "rc-trigger": "^5.1.2",
- "rc-util": "^5.12.0",
- "shallowequal": "^1.1.0"
- },
- "peerDependencies": {
- "react": ">=16.9.0",
- "react-dom": ">=16.9.0"
- }
- },
"node_modules/rc-textarea": {
"version": "0.3.7",
"resolved": "https://registry.npmjs.org/rc-textarea/-/rc-textarea-0.3.7.tgz",
@@ -26439,9 +26508,9 @@
}
},
"node_modules/rc-tree": {
- "version": "5.4.4",
- "resolved": "https://registry.npmjs.org/rc-tree/-/rc-tree-5.4.4.tgz",
- "integrity": "sha512-2qoObRgp31DBXmVzMJmo4qmwP20XEa4hR3imWQtRPcgN3pmljW3WKFmZRrYdOFHz7CyTnRsFZR065bBkIoUpiA==",
+ "version": "5.5.0",
+ "resolved": "https://registry.npmjs.org/rc-tree/-/rc-tree-5.5.0.tgz",
+ "integrity": "sha512-vpKeFsDyj7weik8UPseCTaSNAPt939qn1dQd8goSbRDajbjJEja0v/WFXyRhOiF1HLemNTfqMz4MYc9qlqyNXg==",
"dependencies": {
"@babel/runtime": "^7.10.1",
"classnames": "2.x",
@@ -26458,14 +26527,14 @@
}
},
"node_modules/rc-tree-select": {
- "version": "5.1.5",
- "resolved": "https://registry.npmjs.org/rc-tree-select/-/rc-tree-select-5.1.5.tgz",
- "integrity": "sha512-OXAwCFO0pQmb48NcjUJtiX6rp4FroCXMfzqPmuVVoBGBV/uwO1TPyb+uBZ2/972zkCA8u4je5M5Qx51sL8y7jg==",
+ "version": "5.3.0",
+ "resolved": "https://registry.npmjs.org/rc-tree-select/-/rc-tree-select-5.3.0.tgz",
+ "integrity": "sha512-UN6CUBulmch+CsihnJ73+DtWijEB1hVTC8sdVxq6E0teVAkHQZUvDj+cwZShtShAKvWwXy73PZ1hIHEUrmVcKw==",
"dependencies": {
"@babel/runtime": "^7.10.1",
"classnames": "2.x",
- "rc-select": "~14.0.0-alpha.8",
- "rc-tree": "~5.4.3",
+ "rc-select": "~14.1.0",
+ "rc-tree": "~5.5.0",
"rc-util": "^5.16.1"
},
"peerDependencies": {
@@ -26474,9 +26543,9 @@
}
},
"node_modules/rc-trigger": {
- "version": "5.2.16",
- "resolved": "https://registry.npmjs.org/rc-trigger/-/rc-trigger-5.2.16.tgz",
- "integrity": "sha512-vIM1HsTUpm9Ljeudy38K2+W6kjwD950YU6Wn4zR8ECNV0YsThvqgcpZ0VpF9vxZqxZ/sgvQ4bELxpqwFXGaLxg==",
+ "version": "5.2.18",
+ "resolved": "https://registry.npmjs.org/rc-trigger/-/rc-trigger-5.2.18.tgz",
+ "integrity": "sha512-hi2yZ7umtbAGLxgSph1az9BR9i4Pb4fiQa4pdvFQuKN7U//3nwwygHQKHfexnM+0APBnzZwVlEHA5I8BpWrygw==",
"dependencies": {
"@babel/runtime": "^7.11.2",
"classnames": "^2.2.6",
@@ -26493,9 +26562,9 @@
}
},
"node_modules/rc-trigger/node_modules/rc-util": {
- "version": "5.21.0",
- "resolved": "https://registry.npmjs.org/rc-util/-/rc-util-5.21.0.tgz",
- "integrity": "sha512-5THhvHk69Mqfn9CHoqOWKFjfOrJop0364bT2NU8baMthJCiyfJs3SyDfJJbKZqw9LHhw17eMpat3g4WVFmLIng==",
+ "version": "5.21.4",
+ "resolved": "https://registry.npmjs.org/rc-util/-/rc-util-5.21.4.tgz",
+ "integrity": "sha512-rq11ap3NnOIdywFhcMQ9J7DXRJJ1c1Id1Hvr/1Dphr+5X75ERJBJybuh779DdurP4LJQqAhT6Aie0AjrBc5Vqw==",
"dependencies": {
"@babel/runtime": "^7.12.5",
"react-is": "^16.12.0",
@@ -26535,9 +26604,9 @@
}
},
"node_modules/rc-virtual-list": {
- "version": "3.4.6",
- "resolved": "https://registry.npmjs.org/rc-virtual-list/-/rc-virtual-list-3.4.6.tgz",
- "integrity": "sha512-wMJ7Bl+AxgIDojp0VxuQxjpNulKodwxGXSsTyxA9Mwzwemj5vKAgTbkPT64ZW5ORf8FOQAaPRlMiTADrPEo3sQ==",
+ "version": "3.4.7",
+ "resolved": "https://registry.npmjs.org/rc-virtual-list/-/rc-virtual-list-3.4.7.tgz",
+ "integrity": "sha512-PhV8a8g/L9sCmWcmXizzwW7QdqsxK4ebHU6fA9OsUIR7isFdx2bTGU2iAUdRV4teiIF1ZHF3gSQh8NtAxrXh6A==",
"dependencies": {
"classnames": "^2.2.6",
"rc-resize-observer": "^1.0.0",
@@ -41153,9 +41222,9 @@
}
},
"antd": {
- "version": "4.18.9",
- "resolved": "https://registry.npmjs.org/antd/-/antd-4.18.9.tgz",
- "integrity": "sha512-MbtFY2J8LvXUnxYH2QehdhP9qMEpHvOp7PmiTIHc7v6aSb+LILCibskRIMGNEKvvhBvsTdq0cnjanR9/IbqEAw==",
+ "version": "4.20.4",
+ "resolved": "https://registry.npmjs.org/antd/-/antd-4.20.4.tgz",
+ "integrity": "sha512-xtaMNuRvumMXQLsoAwiQRY5rEJVRtJGumby3aPIJdWXwBtZ7eDDuXbT/Uo8xT8rTND0cK5rRQlxMyisCJrZD9Q==",
"requires": {
"@ant-design/colors": "^6.0.0",
"@ant-design/icons": "^4.7.0",
@@ -41166,39 +41235,53 @@
"copy-to-clipboard": "^3.2.0",
"lodash": "^4.17.21",
"memoize-one": "^6.0.0",
- "moment": "^2.25.3",
- "rc-cascader": "~3.2.1",
+ "moment": "^2.29.2",
+ "rc-cascader": "~3.5.0",
"rc-checkbox": "~2.3.0",
"rc-collapse": "~3.1.0",
- "rc-dialog": "~8.6.0",
+ "rc-dialog": "~8.8.1",
"rc-drawer": "~4.4.2",
- "rc-dropdown": "~3.2.5",
- "rc-field-form": "~1.23.0",
- "rc-image": "~5.2.5",
+ "rc-dropdown": "~3.5.0",
+ "rc-field-form": "~1.26.1",
+ "rc-image": "~5.6.0",
+ "rc-input": "~0.0.1-alpha.5",
"rc-input-number": "~7.3.0",
- "rc-mentions": "~1.6.1",
- "rc-menu": "~9.2.1",
- "rc-motion": "^2.4.4",
- "rc-notification": "~4.5.7",
+ "rc-mentions": "~1.7.0",
+ "rc-menu": "~9.5.5",
+ "rc-motion": "^2.5.1",
+ "rc-notification": "~4.6.0",
"rc-pagination": "~3.1.9",
- "rc-picker": "~2.5.17",
+ "rc-picker": "~2.6.4",
"rc-progress": "~3.2.1",
"rc-rate": "~2.9.0",
"rc-resize-observer": "^1.2.0",
- "rc-select": "~14.0.0-alpha.15",
- "rc-slider": "~9.7.4",
+ "rc-segmented": "~2.1.0 ",
+ "rc-select": "~14.1.1",
+ "rc-slider": "~10.0.0",
"rc-steps": "~4.1.0",
"rc-switch": "~3.2.0",
- "rc-table": "~7.23.0",
- "rc-tabs": "~11.10.0",
+ "rc-table": "~7.24.0",
+ "rc-tabs": "~11.13.0",
"rc-textarea": "~0.3.0",
"rc-tooltip": "~5.1.1",
- "rc-tree": "~5.4.3",
- "rc-tree-select": "~5.1.1",
+ "rc-tree": "~5.5.0",
+ "rc-tree-select": "~5.3.0",
"rc-trigger": "^5.2.10",
"rc-upload": "~4.3.0",
- "rc-util": "^5.14.0",
+ "rc-util": "^5.20.0",
"scroll-into-view-if-needed": "^2.2.25"
+ },
+ "dependencies": {
+ "rc-util": {
+ "version": "5.21.4",
+ "resolved": "https://registry.npmjs.org/rc-util/-/rc-util-5.21.4.tgz",
+ "integrity": "sha512-rq11ap3NnOIdywFhcMQ9J7DXRJJ1c1Id1Hvr/1Dphr+5X75ERJBJybuh779DdurP4LJQqAhT6Aie0AjrBc5Vqw==",
+ "requires": {
+ "@babel/runtime": "^7.12.5",
+ "react-is": "^16.12.0",
+ "shallowequal": "^1.1.0"
+ }
+ }
}
},
"anymatch": {
@@ -41416,9 +41499,9 @@
"dev": true
},
"async-validator": {
- "version": "4.0.7",
- "resolved": "https://registry.npmjs.org/async-validator/-/async-validator-4.0.7.tgz",
- "integrity": "sha512-Pj2IR7u8hmUEDOwB++su6baaRi+QvsgajuFB9j95foM1N2gy5HM4z60hfusIO0fBPG5uLAEl6yCJr1jNSVugEQ=="
+ "version": "4.1.1",
+ "resolved": "https://registry.npmjs.org/async-validator/-/async-validator-4.1.1.tgz",
+ "integrity": "sha512-p4DO/JXwjs8klJyJL8Q2oM4ks5fUTze/h5k10oPPKMiLe1fj3G1QMzPHNmN1Py4ycOk7WlO2DcGXv1qiESJCZA=="
},
"asynckit": {
"version": "0.4.0",
@@ -43655,9 +43738,9 @@
"integrity": "sha512-8d35hViGYx/QH0icHYCeLmsLmMUheMmTyV9Fcm6gvNwdw31yXXH+O85sOBJ+OLnLQMKZowvpKb6FgMIQjcpvQw=="
},
"dayjs": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.1.tgz",
- "integrity": "sha512-ER7EjqVAMkRRsxNCC5YqJ9d9VQYuWdGt7aiH2qA5R5wt8ZmWaP2dLUSIK6y/kVzLMlmh1Tvu5xUf4M/wdGJ5KA=="
+ "version": "1.11.2",
+ "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.2.tgz",
+ "integrity": "sha512-F4LXf1OeU9hrSYRPTTj/6FbO4HTjPKXvEIC1P2kcnFurViINCVk3ZV0xAS3XVx9MkMsXbbqlK6hjseaYbgKEHw=="
},
"debug": {
"version": "4.3.4",
@@ -43877,9 +43960,9 @@
"dev": true
},
"dom-align": {
- "version": "1.12.2",
- "resolved": "https://registry.npmjs.org/dom-align/-/dom-align-1.12.2.tgz",
- "integrity": "sha512-pHuazgqrsTFrGU2WLDdXxCFabkdQDx72ddkraZNih1KsMcN5qsRSTR9O4VJRlwTPCPb5COYg3LOfiMHHcPInHg=="
+ "version": "1.12.3",
+ "resolved": "https://registry.npmjs.org/dom-align/-/dom-align-1.12.3.tgz",
+ "integrity": "sha512-Gj9hZN3a07cbR6zviMUBOMPdWxYhbMI+x+WS0NAIu2zFZmbK8ys9R79g+iG9qLnlCwpFoaB+fKy8Pdv470GsPA=="
},
"dom-converter": {
"version": "0.2.0",
@@ -51431,9 +51514,9 @@
"dev": true
},
"prettier": {
- "version": "2.5.1",
- "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.5.1.tgz",
- "integrity": "sha512-vBZcPRUR5MZJwoyi3ZoyQlc1rXeEck8KgeC9AwwOn+exuxLxq5toTRDTSaVrXHxelDMHy9zlicw8u66yxoSUFg==",
+ "version": "2.6.2",
+ "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.6.2.tgz",
+ "integrity": "sha512-PkUpF+qoXTqhOeWL9fu7As8LXsIUZ1WYaJiY/a7McAQzxjk82OF0tibkFXVCDImZtWxbvojFjerkiLb0/q8mew==",
"dev": true
},
"prettier-linter-helpers": {
@@ -51832,9 +51915,9 @@
}
},
"rc-align": {
- "version": "4.0.11",
- "resolved": "https://registry.npmjs.org/rc-align/-/rc-align-4.0.11.tgz",
- "integrity": "sha512-n9mQfIYQbbNTbefyQnRHZPWuTEwG1rY4a9yKlIWHSTbgwI+XUMGRYd0uJ5pE2UbrNX0WvnMBA1zJ3Lrecpra/A==",
+ "version": "4.0.12",
+ "resolved": "https://registry.npmjs.org/rc-align/-/rc-align-4.0.12.tgz",
+ "integrity": "sha512-3DuwSJp8iC/dgHzwreOQl52soj40LchlfUHtgACOUtwGuoFIOVh6n/sCpfqCU8kO5+iz6qR0YKvjgB8iPdE3aQ==",
"requires": {
"@babel/runtime": "^7.10.1",
"classnames": "2.x",
@@ -51845,15 +51928,15 @@
}
},
"rc-cascader": {
- "version": "3.2.9",
- "resolved": "https://registry.npmjs.org/rc-cascader/-/rc-cascader-3.2.9.tgz",
- "integrity": "sha512-Mvkegzf506PD7qc38kg2tGllIBXs5dio3DPg+NER7SiOfCXBCATWYEs0CbUp8JDQgYHoHF0vPvFMYtxFTJuWaw==",
+ "version": "3.5.0",
+ "resolved": "https://registry.npmjs.org/rc-cascader/-/rc-cascader-3.5.0.tgz",
+ "integrity": "sha512-rpXnWCfvk7Frh2dBzMoA0c7i0nn6aJU7L2NZo8R8pNkrT0sKgytQSpdtPWP+Pq8IkvwbEd8BU8Z8OnOljcqgZg==",
"requires": {
"@babel/runtime": "^7.12.5",
"array-tree-filter": "^2.1.0",
"classnames": "^2.3.1",
- "rc-select": "~14.0.0-alpha.23",
- "rc-tree": "~5.4.3",
+ "rc-select": "~14.1.0",
+ "rc-tree": "~5.5.0",
"rc-util": "^5.6.1"
}
},
@@ -51879,14 +51962,26 @@
}
},
"rc-dialog": {
- "version": "8.6.0",
- "resolved": "https://registry.npmjs.org/rc-dialog/-/rc-dialog-8.6.0.tgz",
- "integrity": "sha512-GSbkfqjqxpZC5/zc+8H332+q5l/DKUhpQr0vdX2uDsxo5K0PhvaMEVjyoJUTkZ3+JstEADQji1PVLVb/2bJeOQ==",
+ "version": "8.8.1",
+ "resolved": "https://registry.npmjs.org/rc-dialog/-/rc-dialog-8.8.1.tgz",
+ "integrity": "sha512-7M1WKZCjfIABKEaJVskdYvb80z+RX7I11PeSjPVfLOOaJAmIepvDEd0alBtOZvOL3fZFWlMs4JVZtp9LZgONxA==",
"requires": {
"@babel/runtime": "^7.10.1",
"classnames": "^2.2.6",
"rc-motion": "^2.3.0",
- "rc-util": "^5.6.1"
+ "rc-util": "^5.21.0"
+ },
+ "dependencies": {
+ "rc-util": {
+ "version": "5.21.4",
+ "resolved": "https://registry.npmjs.org/rc-util/-/rc-util-5.21.4.tgz",
+ "integrity": "sha512-rq11ap3NnOIdywFhcMQ9J7DXRJJ1c1Id1Hvr/1Dphr+5X75ERJBJybuh779DdurP4LJQqAhT6Aie0AjrBc5Vqw==",
+ "requires": {
+ "@babel/runtime": "^7.12.5",
+ "react-is": "^16.12.0",
+ "shallowequal": "^1.1.0"
+ }
+ }
}
},
"rc-drawer": {
@@ -51900,36 +51995,59 @@
}
},
"rc-dropdown": {
- "version": "3.2.5",
- "resolved": "https://registry.npmjs.org/rc-dropdown/-/rc-dropdown-3.2.5.tgz",
- "integrity": "sha512-dVO2eulOSbEf+F4OyhCY5iGiMVhUYY/qeXxL7Ex2jDBt/xc89jU07mNoowV6aWxwVOc70pxEINff0oM2ogjluA==",
+ "version": "3.5.2",
+ "resolved": "https://registry.npmjs.org/rc-dropdown/-/rc-dropdown-3.5.2.tgz",
+ "integrity": "sha512-Ty4LsXjkspZuFJSRx3blCLLCDicXM5qds6F1odgEa+jcjC+OJKHQGnvE4FqtoljPaqWm4wG78pbgXH6Ddh2DkA==",
"requires": {
"@babel/runtime": "^7.10.1",
"classnames": "^2.2.6",
- "rc-trigger": "^5.0.4"
+ "rc-trigger": "^5.0.4",
+ "rc-util": "^5.17.0"
}
},
"rc-field-form": {
- "version": "1.23.1",
- "resolved": "https://registry.npmjs.org/rc-field-form/-/rc-field-form-1.23.1.tgz",
- "integrity": "sha512-Mun+eaFmX1Pjud9bz0fD0IvxwDfFKWk2Q8tkt4sg4aKR9/FML/rzYC5MjY77p86X45XBurBDUR3gAda+Cg/ULw==",
+ "version": "1.26.4",
+ "resolved": "https://registry.npmjs.org/rc-field-form/-/rc-field-form-1.26.4.tgz",
+ "integrity": "sha512-eCCyiNNaN0NTYTyoziQHD4Fj6mUED21lWkw66vg+kttg0eDw+miD6LsaJbTD5c2bzKjUJTf10AitPG+f5zT4+A==",
"requires": {
"@babel/runtime": "^7.8.4",
- "async-validator": "^4.0.2",
+ "async-validator": "^4.1.0",
"rc-util": "^5.8.0"
}
},
"rc-image": {
- "version": "5.2.5",
- "resolved": "https://registry.npmjs.org/rc-image/-/rc-image-5.2.5.tgz",
- "integrity": "sha512-qUfZjYIODxO0c8a8P5GeuclYXZjzW4hV/5hyo27XqSFo1DmTCs2HkVeQObkcIk5kNsJtgsj1KoPThVsSc/PXOw==",
+ "version": "5.6.2",
+ "resolved": "https://registry.npmjs.org/rc-image/-/rc-image-5.6.2.tgz",
+ "integrity": "sha512-qhKOVvivCZkd6CrzS/4ST2+Auu16mtPSFVqVzwE7sELWfuvzcLGTzGv8UsVvm6qRNIz6SeaueUetqi4Ii16XQA==",
"requires": {
"@babel/runtime": "^7.11.2",
"classnames": "^2.2.6",
- "rc-dialog": "~8.6.0",
+ "rc-dialog": "~8.8.0",
"rc-util": "^5.0.6"
}
},
+ "rc-input": {
+ "version": "0.0.1-alpha.7",
+ "resolved": "https://registry.npmjs.org/rc-input/-/rc-input-0.0.1-alpha.7.tgz",
+ "integrity": "sha512-eozaqpCYWSY5LBMwlHgC01GArkVEP+XlJ84OMvdkwUnJBSv83Yxa15pZpn7vACAj84uDC4xOA2CoFdbLuqB08Q==",
+ "requires": {
+ "@babel/runtime": "^7.11.1",
+ "classnames": "^2.2.1",
+ "rc-util": "^5.18.1"
+ },
+ "dependencies": {
+ "rc-util": {
+ "version": "5.21.4",
+ "resolved": "https://registry.npmjs.org/rc-util/-/rc-util-5.21.4.tgz",
+ "integrity": "sha512-rq11ap3NnOIdywFhcMQ9J7DXRJJ1c1Id1Hvr/1Dphr+5X75ERJBJybuh779DdurP4LJQqAhT6Aie0AjrBc5Vqw==",
+ "requires": {
+ "@babel/runtime": "^7.12.5",
+ "react-is": "^16.12.0",
+ "shallowequal": "^1.1.0"
+ }
+ }
+ }
+ },
"rc-input-number": {
"version": "7.3.4",
"resolved": "https://registry.npmjs.org/rc-input-number/-/rc-input-number-7.3.4.tgz",
@@ -51941,38 +52059,22 @@
}
},
"rc-mentions": {
- "version": "1.6.5",
- "resolved": "https://registry.npmjs.org/rc-mentions/-/rc-mentions-1.6.5.tgz",
- "integrity": "sha512-CUU4+q+awG2pA0l/tG2kPB2ytWbKQUkFxVeKwacr63w7crE/yjfzrFXxs/1fxhyEbQUWdAZt/L25QBieukYQ5w==",
+ "version": "1.7.1",
+ "resolved": "https://registry.npmjs.org/rc-mentions/-/rc-mentions-1.7.1.tgz",
+ "integrity": "sha512-JbCS9bTqt6BYN2vfTPythlScLuc42rIlX85n7975RnkfawXlJjskHOlR3o8EpD4asl4KuA2jKTy0dj39DtSVqg==",
"requires": {
"@babel/runtime": "^7.10.1",
"classnames": "^2.2.6",
- "rc-menu": "~9.3.2",
+ "rc-menu": "~9.5.1",
"rc-textarea": "^0.3.0",
"rc-trigger": "^5.0.4",
"rc-util": "^5.0.1"
- },
- "dependencies": {
- "rc-menu": {
- "version": "9.3.2",
- "resolved": "https://registry.npmjs.org/rc-menu/-/rc-menu-9.3.2.tgz",
- "integrity": "sha512-h3m45oY1INZyqphGELkdT0uiPnFzxkML8m0VMhJnk2fowtqfiT7F5tJLT3znEVaPIY80vMy1bClCkgq8U91CzQ==",
- "requires": {
- "@babel/runtime": "^7.10.1",
- "classnames": "2.x",
- "rc-motion": "^2.4.3",
- "rc-overflow": "^1.2.0",
- "rc-trigger": "^5.1.2",
- "rc-util": "^5.12.0",
- "shallowequal": "^1.1.0"
- }
- }
}
},
"rc-menu": {
- "version": "9.2.1",
- "resolved": "https://registry.npmjs.org/rc-menu/-/rc-menu-9.2.1.tgz",
- "integrity": "sha512-UbEtn3rflJ8zS+etYGTVQuzy7Fm+yWXR5c0Rl6ecNTS/dPknRyWAyhJcbeR0Hu1+RdQT+0VCqrUPrgKnm4iY+w==",
+ "version": "9.5.5",
+ "resolved": "https://registry.npmjs.org/rc-menu/-/rc-menu-9.5.5.tgz",
+ "integrity": "sha512-wj2y2BAKwSMyWXO3RBf9sNN5V+DFWxFl45Ma6qQEHA5nwwh7p07bNgc6AAJc+L1+LAz+rWz3AU8PYyT17hMHCw==",
"requires": {
"@babel/runtime": "^7.10.1",
"classnames": "2.x",
@@ -51984,13 +52086,13 @@
}
},
"rc-motion": {
- "version": "2.4.9",
- "resolved": "https://registry.npmjs.org/rc-motion/-/rc-motion-2.4.9.tgz",
- "integrity": "sha512-lrIpBQQ5gIDVedaubnhXuTjC3zpW7HvC/34KyvcHlf6fBjuBlwv45PbonFhmk4Rgu7gLQYrKoMGgFVXqxxyLCw==",
+ "version": "2.6.0",
+ "resolved": "https://registry.npmjs.org/rc-motion/-/rc-motion-2.6.0.tgz",
+ "integrity": "sha512-1MDWA9+i174CZ0SIDenSYm2Wb9YbRkrexjZWR0CUFu7D6f23E8Y0KsTgk9NGOLJsGak5ELZK/Y5lOlf5wQdzbw==",
"requires": {
"@babel/runtime": "^7.11.1",
"classnames": "^2.2.1",
- "rc-util": "^5.19.2"
+ "rc-util": "^5.21.0"
},
"dependencies": {
"rc-util": {
@@ -52006,14 +52108,26 @@
}
},
"rc-notification": {
- "version": "4.5.7",
- "resolved": "https://registry.npmjs.org/rc-notification/-/rc-notification-4.5.7.tgz",
- "integrity": "sha512-zhTGUjBIItbx96SiRu3KVURcLOydLUHZCPpYEn1zvh+re//Tnq/wSxN4FKgp38n4HOgHSVxcLEeSxBMTeBBDdw==",
+ "version": "4.6.0",
+ "resolved": "https://registry.npmjs.org/rc-notification/-/rc-notification-4.6.0.tgz",
+ "integrity": "sha512-xF3MKgIoynzjQAO4lqsoraiFo3UXNYlBfpHs0VWvwF+4pimen9/H1DYLN2mfRWhHovW6gRpla73m2nmyIqAMZQ==",
"requires": {
"@babel/runtime": "^7.10.1",
"classnames": "2.x",
"rc-motion": "^2.2.0",
- "rc-util": "^5.0.1"
+ "rc-util": "^5.20.1"
+ },
+ "dependencies": {
+ "rc-util": {
+ "version": "5.21.4",
+ "resolved": "https://registry.npmjs.org/rc-util/-/rc-util-5.21.4.tgz",
+ "integrity": "sha512-rq11ap3NnOIdywFhcMQ9J7DXRJJ1c1Id1Hvr/1Dphr+5X75ERJBJybuh779DdurP4LJQqAhT6Aie0AjrBc5Vqw==",
+ "requires": {
+ "@babel/runtime": "^7.12.5",
+ "react-is": "^16.12.0",
+ "shallowequal": "^1.1.0"
+ }
+ }
}
},
"rc-overflow": {
@@ -52049,9 +52163,9 @@
}
},
"rc-picker": {
- "version": "2.5.19",
- "resolved": "https://registry.npmjs.org/rc-picker/-/rc-picker-2.5.19.tgz",
- "integrity": "sha512-u6myoCu/qiQ0vLbNzSzNrzTQhs7mldArCpPHrEI6OUiifs+IPXmbesqSm0zilJjfzrZJLgYeyyOMSznSlh0GKA==",
+ "version": "2.6.9",
+ "resolved": "https://registry.npmjs.org/rc-picker/-/rc-picker-2.6.9.tgz",
+ "integrity": "sha512-yH3UYXCADf7REtOAB5cwe1cyFKtB0p204RCN8JdZGG4uuSOZ1IPTkk/GJS6HOpxspZeJCLGzzajuQMDwck9dsw==",
"requires": {
"@babel/runtime": "^7.10.1",
"classnames": "^2.2.1",
@@ -52094,10 +52208,21 @@
"resize-observer-polyfill": "^1.5.1"
}
},
+ "rc-segmented": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/rc-segmented/-/rc-segmented-2.1.0.tgz",
+ "integrity": "sha512-hUlonro+pYoZcwrH6Vm56B2ftLfQh046hrwif/VwLIw1j3zGt52p5mREBwmeVzXnSwgnagpOpfafspzs1asjGw==",
+ "requires": {
+ "@babel/runtime": "^7.11.1",
+ "classnames": "^2.2.1",
+ "rc-motion": "^2.4.4",
+ "rc-util": "^5.17.0"
+ }
+ },
"rc-select": {
- "version": "14.0.6",
- "resolved": "https://registry.npmjs.org/rc-select/-/rc-select-14.0.6.tgz",
- "integrity": "sha512-HMb2BwfTvBxMmIWTR/afP4bcRJLbVKFSBW/VFfL5Z+kdV2XlrYdlliK2uHY7pRRvW16PPGwmOwGfV+eoulPINw==",
+ "version": "14.1.2",
+ "resolved": "https://registry.npmjs.org/rc-select/-/rc-select-14.1.2.tgz",
+ "integrity": "sha512-/QgarL/T/d7MIPcoRmTca2TWHBoHBM1EQIgdaFmvl3qsYRSbrb8NpWcQuJoc9fprXERWxdYSTUThQObHvdEVBQ==",
"requires": {
"@babel/runtime": "^7.10.1",
"classnames": "2.x",
@@ -52109,15 +52234,27 @@
}
},
"rc-slider": {
- "version": "9.7.5",
- "resolved": "https://registry.npmjs.org/rc-slider/-/rc-slider-9.7.5.tgz",
- "integrity": "sha512-LV/MWcXFjco1epPbdw1JlLXlTgmWpB9/Y/P2yinf8Pg3wElHxA9uajN21lJiWtZjf5SCUekfSP6QMJfDo4t1hg==",
+ "version": "10.0.0",
+ "resolved": "https://registry.npmjs.org/rc-slider/-/rc-slider-10.0.0.tgz",
+ "integrity": "sha512-Bk54UIKWW4wyhHcL8ehAxt+wX+n69dscnHTX6Uv0FMxSke/TGrlkZz1LSIWblCpfE2zr/dwR2Ca8nZGk3U+Tbg==",
"requires": {
"@babel/runtime": "^7.10.1",
"classnames": "^2.2.5",
"rc-tooltip": "^5.0.1",
- "rc-util": "^5.16.1",
+ "rc-util": "^5.18.1",
"shallowequal": "^1.1.0"
+ },
+ "dependencies": {
+ "rc-util": {
+ "version": "5.21.4",
+ "resolved": "https://registry.npmjs.org/rc-util/-/rc-util-5.21.4.tgz",
+ "integrity": "sha512-rq11ap3NnOIdywFhcMQ9J7DXRJJ1c1Id1Hvr/1Dphr+5X75ERJBJybuh779DdurP4LJQqAhT6Aie0AjrBc5Vqw==",
+ "requires": {
+ "@babel/runtime": "^7.12.5",
+ "react-is": "^16.12.0",
+ "shallowequal": "^1.1.0"
+ }
+ }
}
},
"rc-steps": {
@@ -52141,9 +52278,9 @@
}
},
"rc-table": {
- "version": "7.23.2",
- "resolved": "https://registry.npmjs.org/rc-table/-/rc-table-7.23.2.tgz",
- "integrity": "sha512-opc2IBJOetsPSdNI+u1Lh9yY4Ks+EMgo1oJzZN+yIV4fRcgP81tHtxdPOVvXPFI4rUMO8CKnmHbGPU7jxMRAeg==",
+ "version": "7.24.1",
+ "resolved": "https://registry.npmjs.org/rc-table/-/rc-table-7.24.1.tgz",
+ "integrity": "sha512-DRWpv5z5pmOaTmy5GqWoskeV1thaOu5HuD+2f61b/CkbBqlgJR3cygc5R/Qvd2uVW6pHU0lYulhmz0VLVFm+rw==",
"requires": {
"@babel/runtime": "^7.10.1",
"classnames": "^2.2.5",
@@ -52153,32 +52290,16 @@
}
},
"rc-tabs": {
- "version": "11.10.8",
- "resolved": "https://registry.npmjs.org/rc-tabs/-/rc-tabs-11.10.8.tgz",
- "integrity": "sha512-uK+x+eJ8WM4jiXoqGa+P+JUQX2Wlkj9f0o/5dyOw42B6YLnHJN80uTVcCeAmtA1N0xjPW0GNSZvUm4SU3jAYpw==",
+ "version": "11.13.0",
+ "resolved": "https://registry.npmjs.org/rc-tabs/-/rc-tabs-11.13.0.tgz",
+ "integrity": "sha512-aUw1Pq0B1a2zGX4o/m3yrQycZcCLgDp6gKwn8IAU07q148RRONsVGxi0oLVVe5SE51kOB+j0bk1RX43ZBdZNgA==",
"requires": {
"@babel/runtime": "^7.11.2",
"classnames": "2.x",
- "rc-dropdown": "^3.2.0",
- "rc-menu": "~9.3.2",
+ "rc-dropdown": "~3.5.0",
+ "rc-menu": "~9.5.1",
"rc-resize-observer": "^1.0.0",
"rc-util": "^5.5.0"
- },
- "dependencies": {
- "rc-menu": {
- "version": "9.3.2",
- "resolved": "https://registry.npmjs.org/rc-menu/-/rc-menu-9.3.2.tgz",
- "integrity": "sha512-h3m45oY1INZyqphGELkdT0uiPnFzxkML8m0VMhJnk2fowtqfiT7F5tJLT3znEVaPIY80vMy1bClCkgq8U91CzQ==",
- "requires": {
- "@babel/runtime": "^7.10.1",
- "classnames": "2.x",
- "rc-motion": "^2.4.3",
- "rc-overflow": "^1.2.0",
- "rc-trigger": "^5.1.2",
- "rc-util": "^5.12.0",
- "shallowequal": "^1.1.0"
- }
- }
}
},
"rc-textarea": {
@@ -52203,9 +52324,9 @@
}
},
"rc-tree": {
- "version": "5.4.4",
- "resolved": "https://registry.npmjs.org/rc-tree/-/rc-tree-5.4.4.tgz",
- "integrity": "sha512-2qoObRgp31DBXmVzMJmo4qmwP20XEa4hR3imWQtRPcgN3pmljW3WKFmZRrYdOFHz7CyTnRsFZR065bBkIoUpiA==",
+ "version": "5.5.0",
+ "resolved": "https://registry.npmjs.org/rc-tree/-/rc-tree-5.5.0.tgz",
+ "integrity": "sha512-vpKeFsDyj7weik8UPseCTaSNAPt939qn1dQd8goSbRDajbjJEja0v/WFXyRhOiF1HLemNTfqMz4MYc9qlqyNXg==",
"requires": {
"@babel/runtime": "^7.10.1",
"classnames": "2.x",
@@ -52215,21 +52336,21 @@
}
},
"rc-tree-select": {
- "version": "5.1.5",
- "resolved": "https://registry.npmjs.org/rc-tree-select/-/rc-tree-select-5.1.5.tgz",
- "integrity": "sha512-OXAwCFO0pQmb48NcjUJtiX6rp4FroCXMfzqPmuVVoBGBV/uwO1TPyb+uBZ2/972zkCA8u4je5M5Qx51sL8y7jg==",
+ "version": "5.3.0",
+ "resolved": "https://registry.npmjs.org/rc-tree-select/-/rc-tree-select-5.3.0.tgz",
+ "integrity": "sha512-UN6CUBulmch+CsihnJ73+DtWijEB1hVTC8sdVxq6E0teVAkHQZUvDj+cwZShtShAKvWwXy73PZ1hIHEUrmVcKw==",
"requires": {
"@babel/runtime": "^7.10.1",
"classnames": "2.x",
- "rc-select": "~14.0.0-alpha.8",
- "rc-tree": "~5.4.3",
+ "rc-select": "~14.1.0",
+ "rc-tree": "~5.5.0",
"rc-util": "^5.16.1"
}
},
"rc-trigger": {
- "version": "5.2.16",
- "resolved": "https://registry.npmjs.org/rc-trigger/-/rc-trigger-5.2.16.tgz",
- "integrity": "sha512-vIM1HsTUpm9Ljeudy38K2+W6kjwD950YU6Wn4zR8ECNV0YsThvqgcpZ0VpF9vxZqxZ/sgvQ4bELxpqwFXGaLxg==",
+ "version": "5.2.18",
+ "resolved": "https://registry.npmjs.org/rc-trigger/-/rc-trigger-5.2.18.tgz",
+ "integrity": "sha512-hi2yZ7umtbAGLxgSph1az9BR9i4Pb4fiQa4pdvFQuKN7U//3nwwygHQKHfexnM+0APBnzZwVlEHA5I8BpWrygw==",
"requires": {
"@babel/runtime": "^7.11.2",
"classnames": "^2.2.6",
@@ -52239,9 +52360,9 @@
},
"dependencies": {
"rc-util": {
- "version": "5.21.0",
- "resolved": "https://registry.npmjs.org/rc-util/-/rc-util-5.21.0.tgz",
- "integrity": "sha512-5THhvHk69Mqfn9CHoqOWKFjfOrJop0364bT2NU8baMthJCiyfJs3SyDfJJbKZqw9LHhw17eMpat3g4WVFmLIng==",
+ "version": "5.21.4",
+ "resolved": "https://registry.npmjs.org/rc-util/-/rc-util-5.21.4.tgz",
+ "integrity": "sha512-rq11ap3NnOIdywFhcMQ9J7DXRJJ1c1Id1Hvr/1Dphr+5X75ERJBJybuh779DdurP4LJQqAhT6Aie0AjrBc5Vqw==",
"requires": {
"@babel/runtime": "^7.12.5",
"react-is": "^16.12.0",
@@ -52271,9 +52392,9 @@
}
},
"rc-virtual-list": {
- "version": "3.4.6",
- "resolved": "https://registry.npmjs.org/rc-virtual-list/-/rc-virtual-list-3.4.6.tgz",
- "integrity": "sha512-wMJ7Bl+AxgIDojp0VxuQxjpNulKodwxGXSsTyxA9Mwzwemj5vKAgTbkPT64ZW5ORf8FOQAaPRlMiTADrPEo3sQ==",
+ "version": "3.4.7",
+ "resolved": "https://registry.npmjs.org/rc-virtual-list/-/rc-virtual-list-3.4.7.tgz",
+ "integrity": "sha512-PhV8a8g/L9sCmWcmXizzwW7QdqsxK4ebHU6fA9OsUIR7isFdx2bTGU2iAUdRV4teiIF1ZHF3gSQh8NtAxrXh6A==",
"requires": {
"classnames": "^2.2.6",
"rc-resize-observer": "^1.0.0",
diff --git a/web/package.json b/web/package.json
index 9a6a20509..e3a3a5ed1 100644
--- a/web/package.json
+++ b/web/package.json
@@ -15,7 +15,7 @@
"@ant-design/icons": "4.7.0",
"@emoji-mart/data": "^1.0.1",
"@storybook/react": "^6.4.22",
- "antd": "4.18.9",
+ "antd": "^4.20.4",
"autoprefixer": "^10.4.4",
"chart.js": "3.7.0",
"chartkick": "4.1.1",
@@ -85,7 +85,7 @@
"html-webpack-plugin": "^5.5.0",
"less": "^4.1.2",
"less-loader": "^10.2.0",
- "prettier": "2.5.1",
+ "prettier": "2.6.2",
"sass": "^1.50.0",
"sass-loader": "^10.1.1",
"sb": "^6.4.22",
diff --git a/web/pages/_app.tsx b/web/pages/_app.tsx
index 5bc37c791..2810afa13 100644
--- a/web/pages/_app.tsx
+++ b/web/pages/_app.tsx
@@ -21,13 +21,13 @@ import '../styles/pages.scss';
import '../styles/offline-notice.scss';
import { AppProps } from 'next/app';
-import { useRouter } from 'next/router';
+import { Router, useRouter } from 'next/router';
-import AdminLayout from './admin/admin-layout';
+import AdminLayout from '../components/layouts/admin-layout';
import SimpleLayout from '../components/layouts/SimpleLayout';
function App({ Component, pageProps }: AppProps) {
- const router = useRouter();
+ const router = useRouter() as Router;
if (router.pathname.startsWith('/admin')) {
return ;
}
diff --git a/web/pages/admin/config-notify.tsx b/web/pages/admin/config-notify.tsx
index 082a8ef31..6247d7227 100644
--- a/web/pages/admin/config-notify.tsx
+++ b/web/pages/admin/config-notify.tsx
@@ -12,7 +12,7 @@ import TextFieldWithSubmit, {
import { TEXTFIELD_PROPS_FEDERATION_INSTANCE_URL } from '../../utils/config-constants';
import { ServerStatusContext } from '../../utils/server-status-context';
import { UpdateArgs } from '../../types/config-section';
-import isValidUrl from '../utils/urls';
+import isValidUrl from '../../utils/urls';
const { Title } = Typography;
diff --git a/web/renovate.json b/web/renovate.json
index 171c333c1..82a829b93 100644
--- a/web/renovate.json
+++ b/web/renovate.json
@@ -1,11 +1,7 @@
{
- "extends": [
- "config:base"
- ],
+ "extends": ["config:base"],
"timezone": "America/Los_Angeles",
- "schedule": [
- "before 8am on Monday"
- ],
+ "schedule": ["before 8am on Monday"],
"lockFileMaintenance": {
"enabled": true,
"automerge": true
@@ -15,37 +11,26 @@
},
"packageRules": [
{
- "matchUpdateTypes": [
- "minor"
- ],
+ "matchUpdateTypes": ["minor"],
"matchCurrentVersion": "!/^0/",
"automerge": true
},
{
- "matchDepTypes": [
- "devDependencies"
- ],
+ "matchDepTypes": ["devDependencies"],
"automerge": true,
"major": {
"dependencyDashboardApproval": true
}
},
{
- "matchPackagePatterns": [
- "*"
- ],
- "matchUpdateTypes": [
- "minor",
- "patch"
- ],
+ "matchPackagePatterns": ["*"],
+ "matchUpdateTypes": ["minor", "patch"],
"major": {
"dependencyDashboardApproval": true
},
"groupName": "all non-major dependencies",
"groupSlug": "all-minor-patch",
- "labels": [
- "dependencies"
- ]
+ "labels": ["dependencies"]
}
]
-}
\ No newline at end of file
+}
diff --git a/web/services/status-service.ts b/web/services/status-service.ts
index 92cf3a7fb..995d5206f 100644
--- a/web/services/status-service.ts
+++ b/web/services/status-service.ts
@@ -1,4 +1,4 @@
-import ServerStatus from '../interfaces/server-status.model';
+import { ServerStatus } from '../interfaces/server-status.model';
const ENDPOINT = `/api/status`;
diff --git a/web/services/websocket-service.ts b/web/services/websocket-service.ts
index 9ff972de3..2ba819d01 100644
--- a/web/services/websocket-service.ts
+++ b/web/services/websocket-service.ts
@@ -1,7 +1,7 @@
import { message } from 'antd';
-import { MessageType } from '../interfaces/socket-events';
+import { MessageType, SocketEvent } from '../interfaces/socket-events';
-interface SocketMessage {
+export interface SocketMessage {
type: MessageType;
data: any;
}
@@ -15,7 +15,7 @@ export default class WebsocketService {
websocketReconnectTimer: ReturnType;
- handleMessage?: (message: SocketMessage) => void;
+ handleMessage?: (message: SocketEvent) => void;
constructor(accessToken, path) {
this.accessToken = accessToken;
@@ -76,7 +76,7 @@ export default class WebsocketService {
// Optimization where multiple events can be sent within a
// single websocket message. So split them if needed.
const messages = e.data.split('\n');
- let message: SocketMessage;
+ let message: SocketEvent;
// eslint-disable-next-line no-plusplus
for (let i = 0; i < messages.length; i++) {
diff --git a/web/stories/ActionButtonRow.stories.tsx b/web/stories/ActionButtonRow.stories.tsx
index e618b080e..bd292e929 100644
--- a/web/stories/ActionButtonRow.stories.tsx
+++ b/web/stories/ActionButtonRow.stories.tsx
@@ -10,9 +10,10 @@ export default {
} as ComponentMeta;
// eslint-disable-next-line @typescript-eslint/no-unused-vars
-const Template: ComponentStory = args => (
- {args.buttons}
-);
+const Template: ComponentStory = args => {
+ const { buttons } = args as any;
+ return {buttons};
+};
// eslint-disable-next-line @typescript-eslint/no-unused-vars
const actions = [
diff --git a/web/stories/BrowserNotifyModal.stories.tsx b/web/stories/BrowserNotifyModal.stories.tsx
index 2113053d8..a88eebf80 100644
--- a/web/stories/BrowserNotifyModal.stories.tsx
+++ b/web/stories/BrowserNotifyModal.stories.tsx
@@ -1,6 +1,7 @@
import React from 'react';
import { ComponentStory, ComponentMeta } from '@storybook/react';
import BrowserNotifyModal from '../components/modals/BrowserNotifyModal';
+import AuthModal from '../components/modals/AuthModal';
const Example = () => (