diff --git a/web/src/components/WebFastForm/__tests__/utils.spec.ts b/packages/design/components/WebMetaForm/__tests__/utils.spec.ts
similarity index 100%
rename from web/src/components/WebFastForm/__tests__/utils.spec.ts
rename to packages/design/components/WebMetaForm/__tests__/utils.spec.ts
diff --git a/web/src/components/WebFastForm/index.tsx b/packages/design/components/WebMetaForm/index.tsx
similarity index 57%
rename from web/src/components/WebFastForm/index.tsx
rename to packages/design/components/WebMetaForm/index.tsx
index 25f36922..14efda88 100644
--- a/web/src/components/WebFastForm/index.tsx
+++ b/packages/design/components/WebMetaForm/index.tsx
@@ -1,27 +1,27 @@
import React, { useMemo } from 'react';
import {
- FastForm,
+ MetaForm,
regField,
- FastFormContainerComponent,
+ MetaFormContainerComponent,
regFormContainer,
-} from 'tailchat-shared';
+} from 'meta-form';
import { Form, Button } from 'antd';
-import { FastFormText } from './types/Text';
-import { FastFormTextArea } from './types/TextArea';
-import { FastFormPassword } from './types/Password';
-import { FastFormSelect } from './types/Select';
-import { FastFormCheckbox } from './types/Checkbox';
-import { FastFormCustom } from './types/Custom';
+import { MetaFormText } from './types/Text';
+import { MetaFormTextArea } from './types/TextArea';
+import { MetaFormPassword } from './types/Password';
+import { MetaFormSelect } from './types/Select';
+import { MetaFormCheckbox } from './types/Checkbox';
+import { MetaFormCustom } from './types/Custom';
-regField('text', FastFormText);
-regField('textarea', FastFormTextArea);
-regField('password', FastFormPassword);
-regField('select', FastFormSelect);
-regField('checkbox', FastFormCheckbox);
-regField('custom', FastFormCustom);
+regField('text', MetaFormText);
+regField('textarea', MetaFormTextArea);
+regField('password', MetaFormPassword);
+regField('select', MetaFormSelect);
+regField('checkbox', MetaFormCheckbox);
+regField('custom', MetaFormCustom);
-const WebFastFormContainer: FastFormContainerComponent = React.memo((props) => {
+const WebMetaFormContainer: MetaFormContainerComponent = React.memo((props) => {
const layout = props.layout;
const submitButtonRender = useMemo(() => {
return (
@@ -64,8 +64,8 @@ const WebFastFormContainer: FastFormContainerComponent = React.memo((props) => {
);
});
-WebFastFormContainer.displayName = 'WebFastFormContainer';
-regFormContainer(WebFastFormContainer);
+WebMetaFormContainer.displayName = 'WebMetaFormContainer';
+regFormContainer(WebMetaFormContainer);
-export const WebFastForm = FastForm;
-WebFastForm.displayName = 'WebFastForm';
+export const WebMetaForm = MetaForm;
+WebMetaForm.displayName = 'WebMetaForm';
diff --git a/web/src/components/WebFastForm/types/Checkbox.tsx b/packages/design/components/WebMetaForm/types/Checkbox.tsx
similarity index 73%
rename from web/src/components/WebFastForm/types/Checkbox.tsx
rename to packages/design/components/WebMetaForm/types/Checkbox.tsx
index 6b8425c9..f3b7fa90 100644
--- a/web/src/components/WebFastForm/types/Checkbox.tsx
+++ b/packages/design/components/WebMetaForm/types/Checkbox.tsx
@@ -1,9 +1,9 @@
import React from 'react';
import { Form, Checkbox } from 'antd';
-import type { FastFormFieldComponent } from 'tailchat-shared';
+import type { MetaFormFieldComponent } from 'meta-form';
import { getValidateStatus } from '../utils';
-export const FastFormCheckbox: FastFormFieldComponent = React.memo((props) => {
+export const MetaFormCheckbox: MetaFormFieldComponent = React.memo((props) => {
const { name, label, value, onChange, error } = props;
return (
@@ -22,4 +22,4 @@ export const FastFormCheckbox: FastFormFieldComponent = React.memo((props) => {
);
});
-FastFormCheckbox.displayName = 'FastFormCheckbox';
+MetaFormCheckbox.displayName = 'MetaFormCheckbox';
diff --git a/packages/design/components/WebMetaForm/types/Custom.tsx b/packages/design/components/WebMetaForm/types/Custom.tsx
new file mode 100644
index 00000000..799061d8
--- /dev/null
+++ b/packages/design/components/WebMetaForm/types/Custom.tsx
@@ -0,0 +1,17 @@
+import React from 'react';
+import { Form } from 'antd';
+import type { MetaFormFieldComponent, MetaFormFieldProps } from 'meta-form';
+import { CustomField } from 'meta-form';
+
+export const MetaFormCustom: MetaFormFieldComponent<{
+ render: (props: MetaFormFieldProps) => React.ReactNode;
+}> = React.memo((props) => {
+ const { label } = props;
+
+ return (
+
+
+
+ );
+});
+MetaFormCustom.displayName = 'MetaFormCustom';
diff --git a/web/src/components/WebFastForm/types/Password.tsx b/packages/design/components/WebMetaForm/types/Password.tsx
similarity index 76%
rename from web/src/components/WebFastForm/types/Password.tsx
rename to packages/design/components/WebMetaForm/types/Password.tsx
index 56256a4e..940c4c5d 100644
--- a/web/src/components/WebFastForm/types/Password.tsx
+++ b/packages/design/components/WebMetaForm/types/Password.tsx
@@ -1,9 +1,9 @@
import React from 'react';
import { Input, Form } from 'antd';
-import type { FastFormFieldComponent } from 'tailchat-shared';
+import type { MetaFormFieldComponent } from 'meta-form';
import { getValidateStatus } from '../utils';
-export const FastFormPassword: FastFormFieldComponent = React.memo((props) => {
+export const MetaFormPassword: MetaFormFieldComponent = React.memo((props) => {
const { name, label, value, onChange, error, maxLength, placeholder } = props;
return (
@@ -24,4 +24,4 @@ export const FastFormPassword: FastFormFieldComponent = React.memo((props) => {
);
});
-FastFormPassword.displayName = 'FastFormPassword';
+MetaFormPassword.displayName = 'MetaFormPassword';
diff --git a/web/src/components/WebFastForm/types/Select.tsx b/packages/design/components/WebMetaForm/types/Select.tsx
similarity index 76%
rename from web/src/components/WebFastForm/types/Select.tsx
rename to packages/design/components/WebMetaForm/types/Select.tsx
index 36024707..b33dee2e 100644
--- a/web/src/components/WebFastForm/types/Select.tsx
+++ b/packages/design/components/WebMetaForm/types/Select.tsx
@@ -2,17 +2,17 @@ import React, { useEffect } from 'react';
import { Select, Form } from 'antd';
import _get from 'lodash/get';
import _isNil from 'lodash/isNil';
-import type { FastFormFieldComponent } from 'tailchat-shared';
+import type { MetaFormFieldComponent } from 'meta-form';
const Option = Select.Option;
-interface FastFormSelectOptionsItem {
+interface MetaFormSelectOptionsItem {
label: string;
value: string;
}
-export const FastFormSelect: FastFormFieldComponent<{
- options: FastFormSelectOptionsItem[];
+export const MetaFormSelect: MetaFormFieldComponent<{
+ options: MetaFormSelectOptionsItem[];
}> = React.memo((props) => {
const { name, label, value, onChange, options } = props;
@@ -35,4 +35,4 @@ export const FastFormSelect: FastFormFieldComponent<{
);
});
-FastFormSelect.displayName = 'FastFormSelect';
+MetaFormSelect.displayName = 'MetaFormSelect';
diff --git a/web/src/components/WebFastForm/types/Text.tsx b/packages/design/components/WebMetaForm/types/Text.tsx
similarity index 76%
rename from web/src/components/WebFastForm/types/Text.tsx
rename to packages/design/components/WebMetaForm/types/Text.tsx
index 3994e3e2..e56e4b7b 100644
--- a/web/src/components/WebFastForm/types/Text.tsx
+++ b/packages/design/components/WebMetaForm/types/Text.tsx
@@ -1,9 +1,9 @@
import React from 'react';
import { Input, Form } from 'antd';
-import type { FastFormFieldComponent } from 'tailchat-shared';
+import type { MetaFormFieldComponent } from 'meta-form';
import { getValidateStatus } from '../utils';
-export const FastFormText: FastFormFieldComponent = React.memo((props) => {
+export const MetaFormText: MetaFormFieldComponent = React.memo((props) => {
const { name, label, value, onChange, error, maxLength, placeholder } = props;
return (
@@ -23,4 +23,4 @@ export const FastFormText: FastFormFieldComponent = React.memo((props) => {
);
});
-FastFormText.displayName = 'FastFormText';
+MetaFormText.displayName = 'MetaFormText';
diff --git a/web/src/components/WebFastForm/types/TextArea.tsx b/packages/design/components/WebMetaForm/types/TextArea.tsx
similarity index 75%
rename from web/src/components/WebFastForm/types/TextArea.tsx
rename to packages/design/components/WebMetaForm/types/TextArea.tsx
index 28cc7174..e35eb1ff 100644
--- a/web/src/components/WebFastForm/types/TextArea.tsx
+++ b/packages/design/components/WebMetaForm/types/TextArea.tsx
@@ -1,9 +1,9 @@
import React from 'react';
import { Input, Form } from 'antd';
-import type { FastFormFieldComponent } from 'tailchat-shared';
+import type { MetaFormFieldComponent } from 'meta-form';
import { getValidateStatus } from '../utils';
-export const FastFormTextArea: FastFormFieldComponent = React.memo((props) => {
+export const MetaFormTextArea: MetaFormFieldComponent = React.memo((props) => {
const { name, label, value, onChange, error, maxLength, placeholder } = props;
return (
@@ -23,4 +23,4 @@ export const FastFormTextArea: FastFormFieldComponent = React.memo((props) => {
);
});
-FastFormTextArea.displayName = 'FastFormTextArea';
+MetaFormTextArea.displayName = 'MetaFormTextArea';
diff --git a/web/src/components/WebFastForm/utils.ts b/packages/design/components/WebMetaForm/utils.ts
similarity index 100%
rename from web/src/components/WebFastForm/utils.ts
rename to packages/design/components/WebMetaForm/utils.ts
diff --git a/packages/design/components/index.ts b/packages/design/components/index.ts
index de9d18f2..35487fd5 100644
--- a/packages/design/components/index.ts
+++ b/packages/design/components/index.ts
@@ -1,2 +1,10 @@
export { Icon } from './Icon';
export { Image } from './Image';
+
+export { WebMetaForm } from './WebMetaForm';
+export {
+ createMetaFormSchema,
+ fieldSchema as metaFormFieldSchema,
+ useMetaFormContext,
+} from 'meta-form';
+export type { MetaFormFieldMeta } from 'meta-form';
diff --git a/packages/design/package.json b/packages/design/package.json
index 78d96d39..7386129e 100644
--- a/packages/design/package.json
+++ b/packages/design/package.json
@@ -21,6 +21,15 @@
"homepage": "https://github.com/msgbyte/tailchat#readme",
"dependencies": {
"@iconify/react": "^3.2.1",
- "antd": "^4.19.5"
+ "antd": "^4.19.5",
+ "meta-form": "workspace:^1.0.0"
+ },
+ "devDependencies": {
+ "react": "17.0.2",
+ "react-dom": "17.0.2"
+ },
+ "peerDependencies": {
+ "react": "17.0.2",
+ "react-dom": "17.0.2"
}
}
diff --git a/packages/meta-form/.gitignore b/packages/meta-form/.gitignore
new file mode 100644
index 00000000..a65b4177
--- /dev/null
+++ b/packages/meta-form/.gitignore
@@ -0,0 +1 @@
+lib
diff --git a/packages/meta-form/.npmrc b/packages/meta-form/.npmrc
new file mode 100644
index 00000000..059ab334
--- /dev/null
+++ b/packages/meta-form/.npmrc
@@ -0,0 +1,2 @@
+# https://npmmirror.com/
+registry = https://registry.npmmirror.com
diff --git a/packages/meta-form/README.md b/packages/meta-form/README.md
new file mode 100644
index 00000000..77056639
--- /dev/null
+++ b/packages/meta-form/README.md
@@ -0,0 +1,8 @@
+基于Meta信息快速构建Form表单
+
+
+## Install
+
+```bash
+npm install react meta-form
+```
diff --git a/packages/meta-form/package.json b/packages/meta-form/package.json
new file mode 100644
index 00000000..c393d5b8
--- /dev/null
+++ b/packages/meta-form/package.json
@@ -0,0 +1,39 @@
+{
+ "name": "meta-form",
+ "version": "1.0.0",
+ "description": "基于Meta信息快速构建Form表单",
+ "main": "lib/index.js",
+ "scripts": {
+ "build": "tsc",
+ "prepare": "tsc",
+ "test": "echo \"Error: no test specified\" && exit 1"
+ },
+ "files": ["lib"],
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/msgbyte/tailchat.git"
+ },
+ "keywords": [
+ "meta",
+ "form",
+ "react",
+ "formik"
+ ],
+ "author": "moonrailgun ",
+ "license": "MIT",
+ "bugs": {
+ "url": "https://github.com/msgbyte/tailchat/issues"
+ },
+ "homepage": "https://github.com/msgbyte/tailchat#readme",
+ "devDependencies": {
+ "react": "17.0.2",
+ "typescript": "^4.5.2"
+ },
+ "dependencies": {
+ "formik": "^2.2.9",
+ "yup": "^0.32.9"
+ },
+ "peerDependencies": {
+ "react": "17.0.2"
+ }
+}
diff --git a/shared/components/FastForm/CustomField.tsx b/packages/meta-form/src/CustomField.tsx
similarity index 51%
rename from shared/components/FastForm/CustomField.tsx
rename to packages/meta-form/src/CustomField.tsx
index 45995cde..adc7ae97 100644
--- a/shared/components/FastForm/CustomField.tsx
+++ b/packages/meta-form/src/CustomField.tsx
@@ -1,8 +1,8 @@
import React from 'react';
-import type { FastFormFieldComponent, FastFormFieldProps } from './field';
+import type { MetaFormFieldComponent, MetaFormFieldProps } from './field';
-export const CustomField: FastFormFieldComponent<{
- render: (props: FastFormFieldProps) => React.ReactNode;
+export const CustomField: MetaFormFieldComponent<{
+ render: (props: MetaFormFieldProps) => React.ReactNode;
}> = React.memo((props) => {
const { render, ...others } = props;
diff --git a/packages/meta-form/src/container.tsx b/packages/meta-form/src/container.tsx
new file mode 100644
index 00000000..44e8ac9c
--- /dev/null
+++ b/packages/meta-form/src/container.tsx
@@ -0,0 +1,29 @@
+import type { ComponentType } from 'react';
+
+/**
+ * 容器配置
+ */
+export interface MetaFormContainerProps {
+ loading: boolean;
+ submitLabel?: string;
+
+ layout?: 'horizontal' | 'vertical';
+
+ /**
+ * 是否允许提交
+ */
+ canSubmit?: boolean;
+ handleSubmit: () => void;
+}
+export type MetaFormContainerComponent =
+ React.ComponentType;
+let MetaFormContainer: MetaFormContainerComponent;
+export function regFormContainer(component: MetaFormContainerComponent) {
+ MetaFormContainer = component;
+}
+
+export function getFormContainer():
+ | ComponentType
+ | undefined {
+ return MetaFormContainer;
+}
diff --git a/packages/meta-form/src/context.tsx b/packages/meta-form/src/context.tsx
new file mode 100644
index 00000000..d75fd9d4
--- /dev/null
+++ b/packages/meta-form/src/context.tsx
@@ -0,0 +1,13 @@
+import React, { useContext } from 'react';
+import type { useFormik } from 'formik';
+
+type MetaFormContextType = ReturnType;
+
+export const MetaFormContext = React.createContext(
+ null
+);
+MetaFormContext.displayName = 'MetaFormContext';
+
+export function useMetaFormContext(): MetaFormContextType | null {
+ return useContext(MetaFormContext);
+}
diff --git a/shared/components/FastForm/field.tsx b/packages/meta-form/src/field.tsx
similarity index 59%
rename from shared/components/FastForm/field.tsx
rename to packages/meta-form/src/field.tsx
index ec569ec0..3b1a6f6f 100644
--- a/shared/components/FastForm/field.tsx
+++ b/packages/meta-form/src/field.tsx
@@ -3,14 +3,14 @@ import { CustomField } from './CustomField';
/**
* 字段通用信息
*/
-interface FastFormFieldCommon {
+interface MetaFormFieldCommon {
name: string; // 字段名
label?: string; // 字段标签
defaultValue?: any; // 默认值
[other: string]: any; // 其他字段
}
-export interface FastFormFieldProps extends FastFormFieldCommon {
+export interface MetaFormFieldProps extends MetaFormFieldCommon {
value: any;
error: string | undefined;
onChange: (val: any) => void; // 修改数据的回调函数
@@ -19,15 +19,15 @@ export interface FastFormFieldProps extends FastFormFieldCommon {
/**
* 字段组件
*/
-export type FastFormFieldComponent> =
- React.ComponentType;
+export type MetaFormFieldComponent> =
+ React.ComponentType;
-const fieldMap = new Map();
+const fieldMap = new Map();
/**
* 注册组件
*/
-export function regField(type: string, component: FastFormFieldComponent) {
+export function regField(type: string, component: MetaFormFieldComponent) {
fieldMap.set(type, component);
}
@@ -36,14 +36,14 @@ export function regField(type: string, component: FastFormFieldComponent) {
*/
export function getField(
type: string
-): FastFormFieldComponent | undefined {
+): MetaFormFieldComponent | undefined {
return fieldMap.get(type);
}
/**
* 字段配置
*/
-export interface FastFormFieldMeta extends FastFormFieldCommon {
+export interface MetaFormFieldMeta extends MetaFormFieldCommon {
type: string; // 字段类型
}
diff --git a/shared/components/FastForm/index.tsx b/packages/meta-form/src/index.tsx
similarity index 77%
rename from shared/components/FastForm/index.tsx
rename to packages/meta-form/src/index.tsx
index 2a273caa..2b1335f5 100644
--- a/shared/components/FastForm/index.tsx
+++ b/packages/meta-form/src/index.tsx
@@ -5,20 +5,20 @@ import _fromPairs from 'lodash/fromPairs';
import _isFunction from 'lodash/isFunction';
import _isEmpty from 'lodash/isEmpty';
import type { ObjectSchema } from 'yup';
-import { FastFormContext } from './context';
+import { MetaFormContext } from './context';
import { getField, regField } from './field';
import type {
- FastFormFieldComponent,
- FastFormFieldProps,
- FastFormFieldMeta,
+ MetaFormFieldComponent,
+ MetaFormFieldProps,
+ MetaFormFieldMeta,
} from './field';
import { getFormContainer } from './container';
/**
* 表单配置
*/
-export interface FastFormProps {
- fields: FastFormFieldMeta[]; // 字段详情
+export interface MetaFormProps {
+ fields: MetaFormFieldMeta[]; // 字段详情
schema?: ObjectSchema; // yup schame object 用于表单校验
layout?: 'horizontal' | 'vertical'; // 布局方式(默认水平)
submitLabel?: string; // 提交按钮的标签名
@@ -31,7 +31,7 @@ export interface FastFormProps {
* 一个快速生成表单的组件
* 用于通过配置来生成表单,简化通用代码
*/
-export const FastForm: React.FC = React.memo((props) => {
+export const MetaForm: React.FC = React.memo((props) => {
const initialValues = useMemo(() => {
return {
..._fromPairs(
@@ -65,10 +65,10 @@ export const FastForm: React.FC = React.memo((props) => {
});
const { handleSubmit, setFieldValue, values, errors } = formik;
- const FastFormContainer = getFormContainer();
+ const MetaFormContainer = getFormContainer();
- if (_isNil(FastFormContainer)) {
- console.warn('FastFormContainer 没有被注册');
+ if (_isNil(MetaFormContainer)) {
+ console.warn('MetaFormContainer 没有被注册');
return null;
}
@@ -96,8 +96,8 @@ export const FastForm: React.FC = React.memo((props) => {
}, [props.fields, values, errors, setFieldValue]);
return (
-
-
+ = React.memo((props) => {
canSubmit={_isEmpty(errors)}
>
{fieldsRender}
-
-
+
+
);
});
-FastForm.displayName = 'FastForm';
-FastForm.defaultProps = {
+MetaForm.displayName = 'MetaForm';
+MetaForm.defaultProps = {
submitLabel: '提交',
};
export { CustomField } from './CustomField';
-export type { FastFormFieldComponent, FastFormFieldProps, FastFormFieldMeta };
+export type { MetaFormFieldComponent, MetaFormFieldProps, MetaFormFieldMeta };
export { regField };
export { regFormContainer } from './container';
-export type { FastFormContainerComponent } from './container';
+export type { MetaFormContainerComponent } from './container';
+export { createMetaFormSchema, fieldSchema } from './schema';
+export { useMetaFormContext } from './context';
diff --git a/shared/components/FastForm/schema.ts b/packages/meta-form/src/schema.ts
similarity index 72%
rename from shared/components/FastForm/schema.ts
rename to packages/meta-form/src/schema.ts
index 95edd8e9..9cd74dc2 100644
--- a/shared/components/FastForm/schema.ts
+++ b/packages/meta-form/src/schema.ts
@@ -3,11 +3,11 @@ import { string, object, ref } from 'yup';
import type { ObjectShape } from 'yup/lib/object';
/**
- * 创建FastForm的Schema
+ * 创建MetaForm的Schema
*
*
*/
-export function createFastFormSchema(fieldMap: ObjectShape) {
+export function createMetaFormSchema(fieldMap: ObjectShape) {
return object().shape(fieldMap);
}
diff --git a/packages/meta-form/tsconfig.json b/packages/meta-form/tsconfig.json
new file mode 100644
index 00000000..93ffce2c
--- /dev/null
+++ b/packages/meta-form/tsconfig.json
@@ -0,0 +1,15 @@
+{
+ "compilerOptions": {
+ "target": "ES5",
+ "lib": ["DOM"],
+ "jsx": "react",
+ "outDir": "./lib",
+ "declaration": true,
+ "esModuleInterop": true,
+ "isolatedModules": true,
+ "module": "ESNext",
+ "moduleResolution": "node",
+ "strict": true,
+ "importsNotUsedAsValues": "error",
+ }
+}
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 0fb0a5e5..83d685cb 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -57,9 +57,29 @@ importers:
specifiers:
'@iconify/react': ^3.2.1
antd: ^4.19.5
+ meta-form: workspace:^1.0.0
+ react: 17.0.2
+ react-dom: 17.0.2
dependencies:
'@iconify/react': 3.2.1
- antd: 4.19.5
+ antd: 4.19.5_react-dom@17.0.2+react@17.0.2
+ meta-form: link:../meta-form
+ devDependencies:
+ react: 17.0.2
+ react-dom: 17.0.2_react@17.0.2
+
+ packages/meta-form:
+ specifiers:
+ formik: ^2.2.9
+ react: 17.0.2
+ typescript: ^4.5.2
+ yup: ^0.32.9
+ dependencies:
+ formik: 2.2.9_react@17.0.2
+ yup: 0.32.11
+ devDependencies:
+ react: 17.0.2
+ typescript: 4.5.4
packages/plugin-declaration-generator:
specifiers:
@@ -112,20 +132,20 @@ importers:
url-regex: ^5.0.0
yup: ^0.32.9
dependencies:
- '@reduxjs/toolkit': 1.7.1_react-redux@7.2.6+react@17.0.2
+ '@reduxjs/toolkit': 1.7.1_react-redux@7.2.6
axios: 0.21.4
crc: 3.8.0
dayjs: 1.10.7
events: 3.3.0
flatted: 3.2.4
- formik: 2.2.9_react@17.0.2
+ formik: 2.2.9
i18next: 20.6.1
i18next-http-backend: 1.3.1
lodash: 4.17.21
- react-i18next: 11.15.1_i18next@20.6.1+react@17.0.2
+ react-i18next: 11.15.1_i18next@20.6.1
react-native-storage: /@trpgengine/react-native-storage/1.0.1
- react-query: 3.34.6_react@17.0.2
- react-redux: 7.2.6_react@17.0.2
+ react-query: 3.34.6
+ react-redux: 7.2.6
regenerator-runtime: registry.nlark.com/regenerator-runtime/0.13.9
socket.io-client: 4.4.0
str2int: 1.1.0
@@ -398,20 +418,6 @@ packages:
resolution: {integrity: sha512-EB0iwlKDGpG93hW8f85CTJTs4SvMX7tt5ceupvhALp1IF44SeUFOMhKUOYqpsoYWQKAOuTRDMqn75rEaKDp0Xw==}
dev: false
- /@ant-design/icons/4.7.0:
- resolution: {integrity: sha512-aoB4Z7JA431rt6d4u+8xcNPPCrdufSRMUOpxa1ab6mz1JCQZOEVolj2WVs/tDFmN62zzK30mNelEsprLYsSF3g==}
- engines: {node: '>=8'}
- peerDependencies:
- react: '>=16.0.0'
- react-dom: '>=16.0.0'
- dependencies:
- '@ant-design/colors': 6.0.0
- '@ant-design/icons-svg': 4.2.1
- '@babel/runtime': 7.16.5
- classnames: 2.3.1
- rc-util: 5.19.3
- dev: false
-
/@ant-design/icons/4.7.0_react-dom@17.0.2+react@17.0.2:
resolution: {integrity: sha512-aoB4Z7JA431rt6d4u+8xcNPPCrdufSRMUOpxa1ab6mz1JCQZOEVolj2WVs/tDFmN62zzK30mNelEsprLYsSF3g==}
engines: {node: '>=8'}
@@ -428,7 +434,7 @@ packages:
react-dom: 17.0.2_react@17.0.2
dev: false
- /@ant-design/react-slick/0.28.4:
+ /@ant-design/react-slick/0.28.4_react@17.0.2:
resolution: {integrity: sha512-j9eAHTn7GxbXUFNknJoHS2ceAsqrQi2j8XykjZE1IXCD8kJF+t28EvhBLniDpbOsBk/3kjalnhriTfZcjBHNqg==}
peerDependencies:
react: '>=16.9.0'
@@ -437,6 +443,7 @@ packages:
classnames: 2.3.1
json2mq: 0.2.0
lodash: 4.17.21
+ react: 17.0.2
resize-observer-polyfill: 1.5.1
dev: false
@@ -2175,7 +2182,7 @@ packages:
resolution: {integrity: sha512-zrsUxjLOKAzdewIDRWy9nsV1GQsKBCWaGwsZQlCgr6/q+vjyZhFgqedLfFBuI9anTPEUT4APq9Mu0SZBTzIcGQ==, registry: https://registry.npm.taobao.org/, tarball: '@popperjs/core/download/@popperjs/core-2.11.0.tgz'}
dev: false
- /@reduxjs/toolkit/1.7.1_react-redux@7.2.6+react@17.0.2:
+ /@reduxjs/toolkit/1.7.1_react-redux@7.2.6:
resolution: {integrity: sha512-wXwXYjBVz/ItxB7SMzEAMmEE/FBiY1ze18N+VVVX7NtVbRUrdOGKhpQMHivIJfkbJvSdLUU923a/yAagJQzY0Q==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npm.taobao.org/@reduxjs/toolkit/download/@reduxjs/toolkit-1.7.1.tgz}
peerDependencies:
react: ^16.9.0 || ^17.0.0 || 18.0.0-beta
@@ -2187,8 +2194,7 @@ packages:
optional: true
dependencies:
immer: 9.0.7
- react: 17.0.2
- react-redux: 7.2.6_react@17.0.2
+ react-redux: 7.2.6
redux: 4.1.2
redux-thunk: 2.4.1_redux@4.1.2
reselect: 4.1.5
@@ -2641,7 +2647,7 @@ packages:
dev: true
/@types/lodash/4.14.178:
- resolution: {integrity: sha512-0d5Wd09ItQWH1qFbEyQ7oTQ3GZrMfth5JkbN3EvTKLXcHLRDSXeLnlvlOn0wvxVIwK5o2M8JzP/OWz7T3NRsbw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npm.taobao.org/@types/lodash/download/@types/lodash-4.14.178.tgz}
+ resolution: {integrity: sha512-0d5Wd09ItQWH1qFbEyQ7oTQ3GZrMfth5JkbN3EvTKLXcHLRDSXeLnlvlOn0wvxVIwK5o2M8JzP/OWz7T3NRsbw==}
/@types/mdast/3.0.10:
resolution: {integrity: sha512-W864tg/Osz1+9f4lrGTZpCSO5/z4608eUp19tbozkq2HJK6i3z1kT0H9tlADXuYIb1YYOBByU4Jsqkk75q48qA==}
@@ -3294,15 +3300,15 @@ packages:
scroll-into-view-if-needed: 2.2.28
dev: false
- /antd/4.19.5:
+ /antd/4.19.5_react-dom@17.0.2+react@17.0.2:
resolution: {integrity: sha512-C4H/VJqlVO5iMvHZyiV27R8SbPs4jsOKCGPhDXIHUry/RnUCbMmVeQaPRfUIxSI1NbqDflsuQfevPtz1svyIlg==}
peerDependencies:
react: '>=16.9.0'
react-dom: '>=16.9.0'
dependencies:
'@ant-design/colors': 6.0.0
- '@ant-design/icons': 4.7.0
- '@ant-design/react-slick': 0.28.4
+ '@ant-design/icons': 4.7.0_react-dom@17.0.2+react@17.0.2
+ '@ant-design/react-slick': 0.28.4_react@17.0.2
'@babel/runtime': 7.16.5
'@ctrl/tinycolor': 3.4.0
classnames: 2.3.1
@@ -3310,38 +3316,40 @@ packages:
lodash: 4.17.21
memoize-one: 6.0.0
moment: 2.29.1
- rc-cascader: 3.2.9
- rc-checkbox: 2.3.2
- rc-collapse: 3.1.2
- rc-dialog: 8.6.0
- rc-drawer: 4.4.3
- rc-dropdown: 3.3.3
- rc-field-form: 1.25.0
- rc-image: 5.2.5
- rc-input: 0.0.1-alpha.6
- rc-input-number: 7.3.4
- rc-mentions: 1.6.1
- rc-menu: 9.3.2
- rc-motion: 2.4.4
- rc-notification: 4.5.7
- rc-pagination: 3.1.14
- rc-picker: 2.6.5
- rc-progress: 3.2.2
- rc-rate: 2.9.1
- rc-resize-observer: 1.2.0
- rc-select: 14.0.6
- rc-slider: 10.0.0-alpha.6
- rc-steps: 4.1.4
- rc-switch: 3.2.2
- rc-table: 7.23.2
- rc-tabs: 11.10.5
- rc-textarea: 0.3.6
- rc-tooltip: 5.1.1
- rc-tree: 5.4.4
- rc-tree-select: 5.1.5
- rc-trigger: 5.2.10
- rc-upload: 4.3.3
- rc-util: 5.19.3
+ rc-cascader: 3.2.9_react-dom@17.0.2+react@17.0.2
+ rc-checkbox: 2.3.2_react-dom@17.0.2+react@17.0.2
+ rc-collapse: 3.1.2_react-dom@17.0.2+react@17.0.2
+ rc-dialog: 8.6.0_react-dom@17.0.2+react@17.0.2
+ rc-drawer: 4.4.3_react-dom@17.0.2+react@17.0.2
+ rc-dropdown: 3.3.3_react-dom@17.0.2+react@17.0.2
+ rc-field-form: 1.25.0_react-dom@17.0.2+react@17.0.2
+ rc-image: 5.2.5_react-dom@17.0.2+react@17.0.2
+ rc-input: 0.0.1-alpha.6_react-dom@17.0.2+react@17.0.2
+ rc-input-number: 7.3.4_react-dom@17.0.2+react@17.0.2
+ rc-mentions: 1.6.1_react-dom@17.0.2+react@17.0.2
+ rc-menu: 9.3.2_react-dom@17.0.2+react@17.0.2
+ rc-motion: 2.4.4_react-dom@17.0.2+react@17.0.2
+ rc-notification: 4.5.7_react-dom@17.0.2+react@17.0.2
+ rc-pagination: 3.1.14_react-dom@17.0.2+react@17.0.2
+ rc-picker: 2.6.5_react-dom@17.0.2+react@17.0.2
+ rc-progress: 3.2.2_react-dom@17.0.2+react@17.0.2
+ rc-rate: 2.9.1_react-dom@17.0.2+react@17.0.2
+ rc-resize-observer: 1.2.0_react-dom@17.0.2+react@17.0.2
+ rc-select: 14.0.6_react-dom@17.0.2+react@17.0.2
+ rc-slider: 10.0.0-alpha.6_react-dom@17.0.2+react@17.0.2
+ rc-steps: 4.1.4_react-dom@17.0.2+react@17.0.2
+ rc-switch: 3.2.2_react-dom@17.0.2+react@17.0.2
+ rc-table: 7.23.2_react-dom@17.0.2+react@17.0.2
+ rc-tabs: 11.10.5_react-dom@17.0.2+react@17.0.2
+ rc-textarea: 0.3.6_react-dom@17.0.2+react@17.0.2
+ rc-tooltip: 5.1.1_react-dom@17.0.2+react@17.0.2
+ rc-tree: 5.4.4_react-dom@17.0.2+react@17.0.2
+ rc-tree-select: 5.1.5_react-dom@17.0.2+react@17.0.2
+ rc-trigger: 5.2.10_react-dom@17.0.2+react@17.0.2
+ rc-upload: 4.3.3_react-dom@17.0.2+react@17.0.2
+ rc-util: 5.19.3_react-dom@17.0.2+react@17.0.2
+ react: 17.0.2
+ react-dom: 17.0.2_react@17.0.2
scroll-into-view-if-needed: 2.2.28
dev: false
@@ -4262,6 +4270,11 @@ packages:
resolution: {integrity: sha512-hjf+xovcEn31w/EUYdTXQh/8smFL/dzYjohQGEIgjyNavaJfBY2p5F527Bo1VPATxv0VYTUC2bOcXvqFwk78Og==}
engines: {node: '>=0.10'}
+ /deepmerge/2.2.1:
+ resolution: {integrity: sha512-R9hc1Xa/NOBi9WRVUWg19rl1UB7Tt4kuPd+thNJgFZoxXsTz7ncaPaeIm+40oSGuP33DfMb4sZt1QIGiJzC4EA==}
+ engines: {node: '>=0.10.0'}
+ dev: false
+
/deepmerge/4.2.2:
resolution: {integrity: sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==}
engines: {node: '>=0.10.0'}
@@ -4939,19 +4952,33 @@ packages:
debug:
optional: true
+ /formik/2.2.9:
+ resolution: {integrity: sha512-LQLcISMmf1r5at4/gyJigGn0gOwFbeEAlji+N9InZF6LIMXnFNkO42sCI8Jt84YZggpD4cPWObAZaxpEFtSzNA==}
+ peerDependencies:
+ react: '>=16.8.0'
+ dependencies:
+ deepmerge: 2.2.1
+ hoist-non-react-statics: 3.3.2
+ lodash: 4.17.21
+ lodash-es: 4.17.21
+ react-fast-compare: 2.0.4
+ tiny-warning: 1.0.3
+ tslib: 1.14.1
+ dev: false
+
/formik/2.2.9_react@17.0.2:
- resolution: {integrity: sha1-hZS6nF4uXPH0LFcEEo4Rn8RiMtA=, registry: https://registry.npm.taobao.org/, tarball: https://registry.npm.taobao.org/formik/download/formik-2.2.9.tgz}
+ resolution: {integrity: sha512-LQLcISMmf1r5at4/gyJigGn0gOwFbeEAlji+N9InZF6LIMXnFNkO42sCI8Jt84YZggpD4cPWObAZaxpEFtSzNA==}
peerDependencies:
react: '>=16.8.0'
dependencies:
- deepmerge: registry.nlark.com/deepmerge/2.2.1
- hoist-non-react-statics: registry.nlark.com/hoist-non-react-statics/3.3.2
+ deepmerge: 2.2.1
+ hoist-non-react-statics: 3.3.2
lodash: 4.17.21
- lodash-es: registry.nlark.com/lodash-es/4.17.21
+ lodash-es: 4.17.21
react: 17.0.2
react-fast-compare: 2.0.4
- tiny-warning: registry.nlark.com/tiny-warning/1.0.3
- tslib: registry.nlark.com/tslib/1.14.1
+ tiny-warning: 1.0.3
+ tslib: 1.14.1
dev: false
/fraction.js/4.1.2:
@@ -5149,6 +5176,12 @@ packages:
value-equal: registry.nlark.com/value-equal/1.0.1
dev: false
+ /hoist-non-react-statics/3.3.2:
+ resolution: {integrity: sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==}
+ dependencies:
+ react-is: 16.13.1
+ dev: false
+
/hosted-git-info/2.8.9:
resolution: {integrity: sha1-3/wL+aIcAiCQkPKqaUKeFBTa8/k=, registry: https://registry.npm.taobao.org/, tarball: https://registry.npm.taobao.org/hosted-git-info/download/hosted-git-info-2.8.9.tgz}
dev: true
@@ -6361,6 +6394,10 @@ packages:
p-locate: 4.1.0
dev: true
+ /lodash-es/4.17.21:
+ resolution: {integrity: sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==}
+ dev: false
+
/lodash.debounce/4.0.8:
resolution: {integrity: sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==}
dev: true
@@ -6374,7 +6411,7 @@ packages:
dev: false
/lodash/4.17.21:
- resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npm.taobao.org/lodash/download/lodash-4.17.21.tgz}
+ resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==}
/log-symbols/4.1.0:
resolution: {integrity: sha1-P727lbRoOsn8eFER55LlWNSr1QM=, registry: https://registry.npm.taobao.org/, tarball: https://registry.npm.taobao.org/log-symbols/download/log-symbols-4.1.0.tgz}
@@ -6673,7 +6710,7 @@ packages:
dev: false
/nanoclone/0.2.1:
- resolution: {integrity: sha1-3UCQ+PGhENJrsyxJ7S9bkjUgntQ=, registry: https://registry.npm.taobao.org/, tarball: https://registry.npm.taobao.org/nanoclone/download/nanoclone-0.2.1.tgz}
+ resolution: {integrity: sha512-wynEP02LmIbLpcYw8uBKpcfF6dmg2vcpKqxeH5UcoKEYdExslsdUA4ugFauuaeYdTB76ez6gJW8XAZ6CgkXYxA==}
dev: false
/nanoid/3.1.30:
@@ -7235,7 +7272,7 @@ packages:
react-is: 16.13.1
/property-expr/2.0.4:
- resolution: {integrity: sha1-N7klR45YllAxu2EuxbMmD4JB6RA=, registry: https://registry.npm.taobao.org/, tarball: https://registry.npm.taobao.org/property-expr/download/property-expr-2.0.4.tgz}
+ resolution: {integrity: sha512-sFPkHQjVKheDNnPvotjQmm3KD3uk1fWKUN7CrpdbwmUx3CrG3QiM8QpTSimvig5vTXmTvjz7+TDvXOI9+4rkcg==}
dev: false
/property-information/5.6.0:
@@ -7323,20 +7360,6 @@ packages:
unpipe: registry.nlark.com/unpipe/1.0.0
dev: true
- /rc-align/4.0.11:
- resolution: {integrity: sha512-n9mQfIYQbbNTbefyQnRHZPWuTEwG1rY4a9yKlIWHSTbgwI+XUMGRYd0uJ5pE2UbrNX0WvnMBA1zJ3Lrecpra/A==}
- peerDependencies:
- react: '>=16.9.0'
- react-dom: '>=16.9.0'
- dependencies:
- '@babel/runtime': 7.16.5
- classnames: 2.3.1
- dom-align: 1.12.2
- lodash: 4.17.21
- rc-util: 5.19.3
- resize-observer-polyfill: 1.5.1
- dev: false
-
/rc-align/4.0.11_react-dom@17.0.2+react@17.0.2:
resolution: {integrity: sha512-n9mQfIYQbbNTbefyQnRHZPWuTEwG1rY4a9yKlIWHSTbgwI+XUMGRYd0uJ5pE2UbrNX0WvnMBA1zJ3Lrecpra/A==}
peerDependencies:
@@ -7369,7 +7392,7 @@ packages:
react-dom: 17.0.2_react@17.0.2
dev: false
- /rc-cascader/3.2.9:
+ /rc-cascader/3.2.9_react-dom@17.0.2+react@17.0.2:
resolution: {integrity: sha512-Mvkegzf506PD7qc38kg2tGllIBXs5dio3DPg+NER7SiOfCXBCATWYEs0CbUp8JDQgYHoHF0vPvFMYtxFTJuWaw==}
peerDependencies:
react: '>=16.9.0'
@@ -7378,12 +7401,14 @@ packages:
'@babel/runtime': 7.16.5
array-tree-filter: 2.1.0
classnames: 2.3.1
- rc-select: 14.0.6
- rc-tree: 5.4.4
- rc-util: 5.19.3
+ rc-select: 14.0.6_react-dom@17.0.2+react@17.0.2
+ rc-tree: 5.4.4_react-dom@17.0.2+react@17.0.2
+ rc-util: 5.19.3_react-dom@17.0.2+react@17.0.2
+ react: 17.0.2
+ react-dom: 17.0.2_react@17.0.2
dev: false
- /rc-checkbox/2.3.2:
+ /rc-checkbox/2.3.2_react-dom@17.0.2+react@17.0.2:
resolution: {integrity: sha512-afVi1FYiGv1U0JlpNH/UaEXdh6WUJjcWokj/nUN2TgG80bfG+MDdbfHKlLcNNba94mbjy2/SXJ1HDgrOkXGAjg==}
peerDependencies:
react: '>=16.9.0'
@@ -7391,9 +7416,11 @@ packages:
dependencies:
'@babel/runtime': 7.16.5
classnames: 2.3.1
+ react: 17.0.2
+ react-dom: 17.0.2_react@17.0.2
dev: false
- /rc-collapse/3.1.2:
+ /rc-collapse/3.1.2_react-dom@17.0.2+react@17.0.2:
resolution: {integrity: sha512-HujcKq7mghk/gVKeI6EjzTbb8e19XUZpakrYazu1MblEZ3Hu3WBMSN4A3QmvbF6n1g7x6lUlZvsHZ5shABWYOQ==}
peerDependencies:
react: '>=16.9.0'
@@ -7401,12 +7428,14 @@ packages:
dependencies:
'@babel/runtime': 7.16.5
classnames: 2.3.1
- rc-motion: 2.4.4
- rc-util: 5.19.3
+ rc-motion: 2.4.4_react-dom@17.0.2+react@17.0.2
+ rc-util: 5.19.3_react-dom@17.0.2+react@17.0.2
+ react: 17.0.2
+ react-dom: 17.0.2_react@17.0.2
shallowequal: 1.1.0
dev: false
- /rc-dialog/8.6.0:
+ /rc-dialog/8.6.0_react-dom@17.0.2+react@17.0.2:
resolution: {integrity: sha512-GSbkfqjqxpZC5/zc+8H332+q5l/DKUhpQr0vdX2uDsxo5K0PhvaMEVjyoJUTkZ3+JstEADQji1PVLVb/2bJeOQ==}
peerDependencies:
react: '>=16.9.0'
@@ -7414,19 +7443,10 @@ packages:
dependencies:
'@babel/runtime': 7.16.5
classnames: 2.3.1
- rc-motion: 2.4.4
- rc-util: 5.19.3
- dev: false
-
- /rc-drawer/4.4.3:
- resolution: {integrity: sha512-FYztwRs3uXnFOIf1hLvFxIQP9MiZJA+0w+Os8dfDh/90X7z/HqP/Yg+noLCIeHEbKln1Tqelv8ymCAN24zPcfQ==}
- peerDependencies:
- react: '>=16.9.0'
- react-dom: '>=16.9.0'
- dependencies:
- '@babel/runtime': 7.16.5
- classnames: 2.3.1
- rc-util: 5.19.3
+ rc-motion: 2.4.4_react-dom@17.0.2+react@17.0.2
+ rc-util: 5.19.3_react-dom@17.0.2+react@17.0.2
+ react: 17.0.2
+ react-dom: 17.0.2_react@17.0.2
dev: false
/rc-drawer/4.4.3_react-dom@17.0.2+react@17.0.2:
@@ -7442,18 +7462,6 @@ packages:
react-dom: 17.0.2_react@17.0.2
dev: false
- /rc-dropdown/3.3.3:
- resolution: {integrity: sha512-UNe68VpvtrpU0CS4jh5hD4iGqzi4Pdp7uOya6+H3QIEZxe7K+Xs11BNjZm6W4MaL0jTmzUj+bxvnq5bP3rRoVQ==}
- peerDependencies:
- react: '>=16.11.0'
- react-dom: '>=16.11.0'
- dependencies:
- '@babel/runtime': 7.16.5
- classnames: 2.3.1
- rc-trigger: 5.2.10
- rc-util: 5.19.3
- dev: false
-
/rc-dropdown/3.3.3_react-dom@17.0.2+react@17.0.2:
resolution: {integrity: sha512-UNe68VpvtrpU0CS4jh5hD4iGqzi4Pdp7uOya6+H3QIEZxe7K+Xs11BNjZm6W4MaL0jTmzUj+bxvnq5bP3rRoVQ==}
peerDependencies:
@@ -7482,7 +7490,7 @@ packages:
react-dom: 17.0.2_react@17.0.2
dev: false
- /rc-field-form/1.25.0:
+ /rc-field-form/1.25.0_react-dom@17.0.2+react@17.0.2:
resolution: {integrity: sha512-mOl0YTgIw7d9EyNySgqw6HlchOt5AGliIRWEIaTt8kP+LHjXBYqOQ+tzVUH2ALren6G568UJicQ2SeMFpfCWHQ==}
engines: {node: '>=8.x'}
peerDependencies:
@@ -7491,10 +7499,12 @@ packages:
dependencies:
'@babel/runtime': 7.16.5
async-validator: 4.0.7
- rc-util: 5.19.3
+ rc-util: 5.19.3_react-dom@17.0.2+react@17.0.2
+ react: 17.0.2
+ react-dom: 17.0.2_react@17.0.2
dev: false
- /rc-image/5.2.5:
+ /rc-image/5.2.5_react-dom@17.0.2+react@17.0.2:
resolution: {integrity: sha512-qUfZjYIODxO0c8a8P5GeuclYXZjzW4hV/5hyo27XqSFo1DmTCs2HkVeQObkcIk5kNsJtgsj1KoPThVsSc/PXOw==}
peerDependencies:
react: '>=16.9.0'
@@ -7502,19 +7512,10 @@ packages:
dependencies:
'@babel/runtime': 7.16.5
classnames: 2.3.1
- rc-dialog: 8.6.0
- rc-util: 5.19.3
- dev: false
-
- /rc-input-number/7.3.4:
- resolution: {integrity: sha512-W9uqSzuvJUnz8H8vsVY4kx+yK51SsAxNTwr8SNH4G3XqQNocLVmKIibKFRjocnYX1RDHMND9FFbgj2h7E7nvGA==}
- peerDependencies:
- react: '>=16.9.0'
- react-dom: '>=16.9.0'
- dependencies:
- '@babel/runtime': 7.16.5
- classnames: 2.3.1
- rc-util: 5.19.3
+ rc-dialog: 8.6.0_react-dom@17.0.2+react@17.0.2
+ rc-util: 5.19.3_react-dom@17.0.2+react@17.0.2
+ react: 17.0.2
+ react-dom: 17.0.2_react@17.0.2
dev: false
/rc-input-number/7.3.4_react-dom@17.0.2+react@17.0.2:
@@ -7530,7 +7531,7 @@ packages:
react-dom: 17.0.2_react@17.0.2
dev: false
- /rc-input/0.0.1-alpha.6:
+ /rc-input/0.0.1-alpha.6_react-dom@17.0.2+react@17.0.2:
resolution: {integrity: sha512-kgpmbxa9vp6kPLW7IP5/Lf6wuaMq+pUq+dPz98vIM58h4wkEKgBQlkMIg9OCEVQIiR8rEPEoe4dO2fc9R0aypQ==}
peerDependencies:
react: '>=16.0.0'
@@ -7538,10 +7539,12 @@ packages:
dependencies:
'@babel/runtime': 7.16.5
classnames: 2.3.1
- rc-util: 5.19.3
+ rc-util: 5.19.3_react-dom@17.0.2+react@17.0.2
+ react: 17.0.2
+ react-dom: 17.0.2_react@17.0.2
dev: false
- /rc-mentions/1.6.1:
+ /rc-mentions/1.6.1_react-dom@17.0.2+react@17.0.2:
resolution: {integrity: sha512-LDzGI8jJVGnkhpTZxZuYBhMz3avcZZqPGejikchh97xPni/g4ht714Flh7DVvuzHQ+BoKHhIjobHnw1rcP8erg==}
peerDependencies:
react: '>=16.9.0'
@@ -7549,10 +7552,12 @@ packages:
dependencies:
'@babel/runtime': 7.16.5
classnames: 2.3.1
- rc-menu: 9.3.2
- rc-textarea: 0.3.6
- rc-trigger: 5.2.10
- rc-util: 5.19.3
+ rc-menu: 9.3.2_react-dom@17.0.2+react@17.0.2
+ rc-textarea: 0.3.6_react-dom@17.0.2+react@17.0.2
+ rc-trigger: 5.2.10_react-dom@17.0.2+react@17.0.2
+ rc-util: 5.19.3_react-dom@17.0.2+react@17.0.2
+ react: 17.0.2
+ react-dom: 17.0.2_react@17.0.2
dev: false
/rc-menu/9.1.1_react-dom@17.0.2+react@17.0.2:
@@ -7572,21 +7577,6 @@ packages:
shallowequal: registry.nlark.com/shallowequal/1.1.0
dev: false
- /rc-menu/9.3.2:
- resolution: {integrity: sha512-h3m45oY1INZyqphGELkdT0uiPnFzxkML8m0VMhJnk2fowtqfiT7F5tJLT3znEVaPIY80vMy1bClCkgq8U91CzQ==}
- peerDependencies:
- react: '>=16.9.0'
- react-dom: '>=16.9.0'
- dependencies:
- '@babel/runtime': 7.16.5
- classnames: 2.3.1
- rc-motion: 2.4.4
- rc-overflow: 1.2.2
- rc-trigger: 5.2.10
- rc-util: 5.19.3
- shallowequal: 1.1.0
- dev: false
-
/rc-menu/9.3.2_react-dom@17.0.2+react@17.0.2:
resolution: {integrity: sha512-h3m45oY1INZyqphGELkdT0uiPnFzxkML8m0VMhJnk2fowtqfiT7F5tJLT3znEVaPIY80vMy1bClCkgq8U91CzQ==}
peerDependencies:
@@ -7604,17 +7594,6 @@ packages:
shallowequal: 1.1.0
dev: false
- /rc-motion/2.4.4:
- resolution: {integrity: sha512-ms7n1+/TZQBS0Ydd2Q5P4+wJTSOrhIrwNxLXCZpR7Fa3/oac7Yi803HDALc2hLAKaCTQtw9LmQeB58zcwOsqlQ==}
- peerDependencies:
- react: '>=16.9.0'
- react-dom: '>=16.9.0'
- dependencies:
- '@babel/runtime': 7.16.5
- classnames: 2.3.1
- rc-util: 5.19.3
- dev: false
-
/rc-motion/2.4.4_react-dom@17.0.2+react@17.0.2:
resolution: {integrity: sha512-ms7n1+/TZQBS0Ydd2Q5P4+wJTSOrhIrwNxLXCZpR7Fa3/oac7Yi803HDALc2hLAKaCTQtw9LmQeB58zcwOsqlQ==}
peerDependencies:
@@ -7628,7 +7607,7 @@ packages:
react-dom: 17.0.2_react@17.0.2
dev: false
- /rc-notification/4.5.7:
+ /rc-notification/4.5.7_react-dom@17.0.2+react@17.0.2:
resolution: {integrity: sha512-zhTGUjBIItbx96SiRu3KVURcLOydLUHZCPpYEn1zvh+re//Tnq/wSxN4FKgp38n4HOgHSVxcLEeSxBMTeBBDdw==}
engines: {node: '>=8.x'}
peerDependencies:
@@ -7637,20 +7616,10 @@ packages:
dependencies:
'@babel/runtime': 7.16.5
classnames: 2.3.1
- rc-motion: 2.4.4
- rc-util: 5.19.3
- dev: false
-
- /rc-overflow/1.2.2:
- resolution: {integrity: sha512-X5kj9LDU1ue5wHkqvCprJWLKC+ZLs3p4He/oxjZ1Q4NKaqKBaYf5OdSzRSgh3WH8kSdrfU8LjvlbWnHgJOEkNQ==}
- peerDependencies:
- react: '>=16.9.0'
- react-dom: '>=16.9.0'
- dependencies:
- '@babel/runtime': 7.16.5
- classnames: 2.3.1
- rc-resize-observer: 1.2.0
- rc-util: 5.19.3
+ rc-motion: 2.4.4_react-dom@17.0.2+react@17.0.2
+ rc-util: 5.19.3_react-dom@17.0.2+react@17.0.2
+ react: 17.0.2
+ react-dom: 17.0.2_react@17.0.2
dev: false
/rc-overflow/1.2.2_react-dom@17.0.2+react@17.0.2:
@@ -7667,16 +7636,6 @@ packages:
react-dom: 17.0.2_react@17.0.2
dev: false
- /rc-pagination/3.1.14:
- resolution: {integrity: sha512-tcugvxrtPiVU00Uh0IwC8NIUlxa4KtA9pXcaMNJdSHeO2uQqVkHEwllsULTAWRF3zRV2ozo2weP/DRKIUrX+Zg==}
- peerDependencies:
- react: '>=16.9.0'
- react-dom: '>=16.9.0'
- dependencies:
- '@babel/runtime': 7.16.5
- classnames: 2.3.1
- dev: false
-
/rc-pagination/3.1.14_react-dom@17.0.2+react@17.0.2:
resolution: {integrity: sha512-tcugvxrtPiVU00Uh0IwC8NIUlxa4KtA9pXcaMNJdSHeO2uQqVkHEwllsULTAWRF3zRV2ozo2weP/DRKIUrX+Zg==}
peerDependencies:
@@ -7708,7 +7667,7 @@ packages:
shallowequal: registry.nlark.com/shallowequal/1.1.0
dev: false
- /rc-picker/2.6.5:
+ /rc-picker/2.6.5_react-dom@17.0.2+react@17.0.2:
resolution: {integrity: sha512-4pcg0PgEz4YXBfdwMuHIKaRWaADm3k3g0NtoPIgeGM+VVeOBdUowTx0YSXnT8mQEXcE9lWXX+ZX3biAzQwDM1w==}
engines: {node: '>=8.x'}
peerDependencies:
@@ -7720,22 +7679,13 @@ packages:
date-fns: 2.27.0
dayjs: 1.10.7
moment: 2.29.1
- rc-trigger: 5.2.10
- rc-util: 5.19.3
+ rc-trigger: 5.2.10_react-dom@17.0.2+react@17.0.2
+ rc-util: 5.19.3_react-dom@17.0.2+react@17.0.2
+ react: 17.0.2
+ react-dom: 17.0.2_react@17.0.2
shallowequal: 1.1.0
dev: false
- /rc-progress/3.2.2:
- resolution: {integrity: sha512-hvYqiFxFQeDGzY8AuARqp4vEGSD54W0KMg8cCcLFyT2tRJnxQyND/9vyUzVMYuaHexou06QsvLoqyBc3BPDVbg==}
- peerDependencies:
- react: '>=16.9.0'
- react-dom: '>=16.9.0'
- dependencies:
- '@babel/runtime': 7.16.5
- classnames: 2.3.1
- rc-util: 5.19.3
- dev: false
-
/rc-progress/3.2.2_react-dom@17.0.2+react@17.0.2:
resolution: {integrity: sha512-hvYqiFxFQeDGzY8AuARqp4vEGSD54W0KMg8cCcLFyT2tRJnxQyND/9vyUzVMYuaHexou06QsvLoqyBc3BPDVbg==}
peerDependencies:
@@ -7749,7 +7699,7 @@ packages:
react-dom: 17.0.2_react@17.0.2
dev: false
- /rc-rate/2.9.1:
+ /rc-rate/2.9.1_react-dom@17.0.2+react@17.0.2:
resolution: {integrity: sha512-MmIU7FT8W4LYRRHJD1sgG366qKtSaKb67D0/vVvJYR0lrCuRrCiVQ5qhfT5ghVO4wuVIORGpZs7ZKaYu+KMUzA==}
engines: {node: '>=8.x'}
peerDependencies:
@@ -7758,7 +7708,9 @@ packages:
dependencies:
'@babel/runtime': 7.16.5
classnames: 2.3.1
- rc-util: 5.19.3
+ rc-util: 5.19.3_react-dom@17.0.2+react@17.0.2
+ react: 17.0.2
+ react-dom: 17.0.2_react@17.0.2
dev: false
/rc-resize-observer/1.1.2_react-dom@17.0.2+react@17.0.2:
@@ -7775,18 +7727,6 @@ packages:
resize-observer-polyfill: registry.nlark.com/resize-observer-polyfill/1.5.1
dev: false
- /rc-resize-observer/1.2.0:
- resolution: {integrity: sha512-6W+UzT3PyDM0wVCEHfoW3qTHPTvbdSgiA43buiy8PzmeMnfgnDeb9NjdimMXMl3/TcrvvWl5RRVdp+NqcR47pQ==}
- peerDependencies:
- react: '>=16.9.0'
- react-dom: '>=16.9.0'
- dependencies:
- '@babel/runtime': 7.16.5
- classnames: 2.3.1
- rc-util: 5.19.3
- resize-observer-polyfill: 1.5.1
- dev: false
-
/rc-resize-observer/1.2.0_react-dom@17.0.2+react@17.0.2:
resolution: {integrity: sha512-6W+UzT3PyDM0wVCEHfoW3qTHPTvbdSgiA43buiy8PzmeMnfgnDeb9NjdimMXMl3/TcrvvWl5RRVdp+NqcR47pQ==}
peerDependencies:
@@ -7819,7 +7759,7 @@ packages:
react-dom: 17.0.2_react@17.0.2
dev: false
- /rc-select/14.0.6:
+ /rc-select/14.0.6_react-dom@17.0.2+react@17.0.2:
resolution: {integrity: sha512-HMb2BwfTvBxMmIWTR/afP4bcRJLbVKFSBW/VFfL5Z+kdV2XlrYdlliK2uHY7pRRvW16PPGwmOwGfV+eoulPINw==}
engines: {node: '>=8.x'}
peerDependencies:
@@ -7828,14 +7768,16 @@ packages:
dependencies:
'@babel/runtime': 7.16.5
classnames: 2.3.1
- rc-motion: 2.4.4
- rc-overflow: 1.2.2
- rc-trigger: 5.2.10
- rc-util: 5.19.3
- rc-virtual-list: 3.4.2
+ rc-motion: 2.4.4_react-dom@17.0.2+react@17.0.2
+ rc-overflow: 1.2.2_react-dom@17.0.2+react@17.0.2
+ rc-trigger: 5.2.10_react-dom@17.0.2+react@17.0.2
+ rc-util: 5.19.3_react-dom@17.0.2+react@17.0.2
+ rc-virtual-list: 3.4.2_react-dom@17.0.2+react@17.0.2
+ react: 17.0.2
+ react-dom: 17.0.2_react@17.0.2
dev: false
- /rc-slider/10.0.0-alpha.6:
+ /rc-slider/10.0.0-alpha.6_react-dom@17.0.2+react@17.0.2:
resolution: {integrity: sha512-4tMChJ3lzX0qlttcXqJ2xecQ+CmZYPXJGDOvPnIS5YWsiSl452vt377/l8A1ZnwjwKAAy2V6nrOXNdqPP2Tq7w==}
engines: {node: '>=8.x'}
peerDependencies:
@@ -7844,8 +7786,10 @@ packages:
dependencies:
'@babel/runtime': 7.16.5
classnames: 2.3.1
- rc-tooltip: 5.1.1
- rc-util: 5.19.3
+ rc-tooltip: 5.1.1_react-dom@17.0.2+react@17.0.2
+ rc-util: 5.19.3_react-dom@17.0.2+react@17.0.2
+ react: 17.0.2
+ react-dom: 17.0.2_react@17.0.2
shallowequal: 1.1.0
dev: false
@@ -7865,18 +7809,6 @@ packages:
shallowequal: registry.nlark.com/shallowequal/1.1.0
dev: false
- /rc-steps/4.1.4:
- resolution: {integrity: sha512-qoCqKZWSpkh/b03ASGx1WhpKnuZcRWmvuW+ZUu4mvMdfvFzVxblTwUM+9aBd0mlEUFmt6GW8FXhMpHkK3Uzp3w==}
- engines: {node: '>=8.x'}
- peerDependencies:
- react: '>=16.9.0'
- react-dom: '>=16.9.0'
- dependencies:
- '@babel/runtime': 7.16.5
- classnames: 2.3.1
- rc-util: 5.19.3
- dev: false
-
/rc-steps/4.1.4_react-dom@17.0.2+react@17.0.2:
resolution: {integrity: sha512-qoCqKZWSpkh/b03ASGx1WhpKnuZcRWmvuW+ZUu4mvMdfvFzVxblTwUM+9aBd0mlEUFmt6GW8FXhMpHkK3Uzp3w==}
engines: {node: '>=8.x'}
@@ -7891,7 +7823,7 @@ packages:
react-dom: 17.0.2_react@17.0.2
dev: false
- /rc-switch/3.2.2:
+ /rc-switch/3.2.2_react-dom@17.0.2+react@17.0.2:
resolution: {integrity: sha512-+gUJClsZZzvAHGy1vZfnwySxj+MjLlGRyXKXScrtCTcmiYNPzxDFOxdQ/3pK1Kt/0POvwJ/6ALOR8gwdXGhs+A==}
peerDependencies:
react: '>=16.9.0'
@@ -7899,7 +7831,9 @@ packages:
dependencies:
'@babel/runtime': 7.16.5
classnames: 2.3.1
- rc-util: 5.19.3
+ rc-util: 5.19.3_react-dom@17.0.2+react@17.0.2
+ react: 17.0.2
+ react-dom: 17.0.2_react@17.0.2
dev: false
/rc-table/7.21.0_react-dom@17.0.2+react@17.0.2:
@@ -7918,7 +7852,7 @@ packages:
shallowequal: registry.nlark.com/shallowequal/1.1.0
dev: false
- /rc-table/7.23.2:
+ /rc-table/7.23.2_react-dom@17.0.2+react@17.0.2:
resolution: {integrity: sha512-opc2IBJOetsPSdNI+u1Lh9yY4Ks+EMgo1oJzZN+yIV4fRcgP81tHtxdPOVvXPFI4rUMO8CKnmHbGPU7jxMRAeg==}
engines: {node: '>=8.x'}
peerDependencies:
@@ -7927,26 +7861,13 @@ packages:
dependencies:
'@babel/runtime': 7.16.5
classnames: 2.3.1
- rc-resize-observer: 1.2.0
- rc-util: 5.19.3
+ rc-resize-observer: 1.2.0_react-dom@17.0.2+react@17.0.2
+ rc-util: 5.19.3_react-dom@17.0.2+react@17.0.2
+ react: 17.0.2
+ react-dom: 17.0.2_react@17.0.2
shallowequal: 1.1.0
dev: false
- /rc-tabs/11.10.5:
- resolution: {integrity: sha512-DDuUdV6b9zGRYLtjI5hyejWLKoz1QiLWNgMeBzc3aMeQylZFhTYnFGdDc6HRqj5IYearNTsFPVSA+6VIT8g5cg==}
- engines: {node: '>=8.x'}
- peerDependencies:
- react: '>=16.9.0'
- react-dom: '>=16.9.0'
- dependencies:
- '@babel/runtime': 7.16.5
- classnames: 2.3.1
- rc-dropdown: 3.3.3
- rc-menu: 9.3.2
- rc-resize-observer: 1.2.0
- rc-util: 5.19.3
- dev: false
-
/rc-tabs/11.10.5_react-dom@17.0.2+react@17.0.2:
resolution: {integrity: sha512-DDuUdV6b9zGRYLtjI5hyejWLKoz1QiLWNgMeBzc3aMeQylZFhTYnFGdDc6HRqj5IYearNTsFPVSA+6VIT8g5cg==}
engines: {node: '>=8.x'}
@@ -7964,18 +7885,6 @@ packages:
react-dom: 17.0.2_react@17.0.2
dev: false
- /rc-textarea/0.3.6:
- resolution: {integrity: sha512-6esiDE4AG3lqnmCdgAp/nutrZAqZEfRT3K749H8vMzNtxy9JScuMJ9MMtWN2DDQh+LCDvX4dgflaRjDCqtDHWw==}
- peerDependencies:
- react: '>=16.9.0'
- react-dom: '>=16.9.0'
- dependencies:
- '@babel/runtime': 7.16.5
- classnames: 2.3.1
- rc-resize-observer: 1.2.0
- rc-util: 5.19.3
- dev: false
-
/rc-textarea/0.3.6_react-dom@17.0.2+react@17.0.2:
resolution: {integrity: sha512-6esiDE4AG3lqnmCdgAp/nutrZAqZEfRT3K749H8vMzNtxy9JScuMJ9MMtWN2DDQh+LCDvX4dgflaRjDCqtDHWw==}
peerDependencies:
@@ -7990,14 +7899,16 @@ packages:
react-dom: 17.0.2_react@17.0.2
dev: false
- /rc-tooltip/5.1.1:
+ /rc-tooltip/5.1.1_react-dom@17.0.2+react@17.0.2:
resolution: {integrity: sha512-alt8eGMJulio6+4/uDm7nvV+rJq9bsfxFDCI0ljPdbuoygUscbsMYb6EQgwib/uqsXQUvzk+S7A59uYHmEgmDA==}
peerDependencies:
react: '>=16.9.0'
react-dom: '>=16.9.0'
dependencies:
'@babel/runtime': 7.16.5
- rc-trigger: 5.2.10
+ rc-trigger: 5.2.10_react-dom@17.0.2+react@17.0.2
+ react: 17.0.2
+ react-dom: 17.0.2_react@17.0.2
dev: false
/rc-tree-select/5.0.0-alpha.3_react-dom@17.0.2+react@17.0.2:
@@ -8015,7 +7926,7 @@ packages:
react-dom: 17.0.2_react@17.0.2
dev: false
- /rc-tree-select/5.1.5:
+ /rc-tree-select/5.1.5_react-dom@17.0.2+react@17.0.2:
resolution: {integrity: sha512-OXAwCFO0pQmb48NcjUJtiX6rp4FroCXMfzqPmuVVoBGBV/uwO1TPyb+uBZ2/972zkCA8u4je5M5Qx51sL8y7jg==}
peerDependencies:
react: '*'
@@ -8023,9 +7934,11 @@ packages:
dependencies:
'@babel/runtime': 7.16.5
classnames: 2.3.1
- rc-select: 14.0.6
- rc-tree: 5.4.4
- rc-util: 5.19.3
+ rc-select: 14.0.6_react-dom@17.0.2+react@17.0.2
+ rc-tree: 5.4.4_react-dom@17.0.2+react@17.0.2
+ rc-util: 5.19.3_react-dom@17.0.2+react@17.0.2
+ react: 17.0.2
+ react-dom: 17.0.2_react@17.0.2
dev: false
/rc-tree/5.3.6_react-dom@17.0.2+react@17.0.2:
@@ -8044,7 +7957,7 @@ packages:
react-dom: 17.0.2_react@17.0.2
dev: false
- /rc-tree/5.4.4:
+ /rc-tree/5.4.4_react-dom@17.0.2+react@17.0.2:
resolution: {integrity: sha512-2qoObRgp31DBXmVzMJmo4qmwP20XEa4hR3imWQtRPcgN3pmljW3WKFmZRrYdOFHz7CyTnRsFZR065bBkIoUpiA==}
engines: {node: '>=10.x'}
peerDependencies:
@@ -8053,23 +7966,11 @@ packages:
dependencies:
'@babel/runtime': 7.16.5
classnames: 2.3.1
- rc-motion: 2.4.4
- rc-util: 5.19.3
- rc-virtual-list: 3.4.2
- dev: false
-
- /rc-trigger/5.2.10:
- resolution: {integrity: sha512-FkUf4H9BOFDaIwu42fvRycXMAvkttph9AlbCZXssZDVzz2L+QZ0ERvfB/4nX3ZFPh1Zd+uVGr1DEDeXxq4J1TA==}
- engines: {node: '>=8.x'}
- peerDependencies:
- react: '>=16.9.0'
- react-dom: '>=16.9.0'
- dependencies:
- '@babel/runtime': 7.16.5
- classnames: 2.3.1
- rc-align: 4.0.11
- rc-motion: 2.4.4
- rc-util: 5.19.3
+ rc-motion: 2.4.4_react-dom@17.0.2+react@17.0.2
+ rc-util: 5.19.3_react-dom@17.0.2+react@17.0.2
+ rc-virtual-list: 3.4.2_react-dom@17.0.2+react@17.0.2
+ react: 17.0.2
+ react-dom: 17.0.2_react@17.0.2
dev: false
/rc-trigger/5.2.10_react-dom@17.0.2+react@17.0.2:
@@ -8088,17 +7989,6 @@ packages:
react-dom: 17.0.2_react@17.0.2
dev: false
- /rc-upload/4.3.3:
- resolution: {integrity: sha512-YoJ0phCRenMj1nzwalXzciKZ9/FAaCrFu84dS5pphwucTC8GUWClcDID/WWNGsLFcM97NqIboDqrV82rVRhW/w==}
- peerDependencies:
- react: '>=16.9.0'
- react-dom: '>=16.9.0'
- dependencies:
- '@babel/runtime': 7.16.5
- classnames: 2.3.1
- rc-util: 5.19.3
- dev: false
-
/rc-upload/4.3.3_react-dom@17.0.2+react@17.0.2:
resolution: {integrity: sha512-YoJ0phCRenMj1nzwalXzciKZ9/FAaCrFu84dS5pphwucTC8GUWClcDID/WWNGsLFcM97NqIboDqrV82rVRhW/w==}
peerDependencies:
@@ -8125,17 +8015,6 @@ packages:
shallowequal: registry.nlark.com/shallowequal/1.1.0
dev: false
- /rc-util/5.19.3:
- resolution: {integrity: sha512-S28epi9E2s7Nir05q8Ffl3hzDLwkavTGi0PGH1cTqCmkpG1AeBEuZgQDpksYeU6IgHcds5hWIPE5PUcdFiZl8w==}
- peerDependencies:
- react: '>=16.9.0'
- react-dom: '>=16.9.0'
- dependencies:
- '@babel/runtime': 7.16.5
- react-is: 16.13.1
- shallowequal: 1.1.0
- dev: false
-
/rc-util/5.19.3_react-dom@17.0.2+react@17.0.2:
resolution: {integrity: sha512-S28epi9E2s7Nir05q8Ffl3hzDLwkavTGi0PGH1cTqCmkpG1AeBEuZgQDpksYeU6IgHcds5hWIPE5PUcdFiZl8w==}
peerDependencies:
@@ -8149,18 +8028,6 @@ packages:
shallowequal: 1.1.0
dev: false
- /rc-virtual-list/3.4.2:
- resolution: {integrity: sha512-OyVrrPvvFcHvV0ssz5EDZ+7Rf5qLat/+mmujjchNw5FfbJWNDwkpQ99EcVE6+FtNRmX9wFa1LGNpZLUTvp/4GQ==}
- engines: {node: '>=8.x'}
- peerDependencies:
- react: '*'
- react-dom: '*'
- dependencies:
- classnames: 2.3.1
- rc-resize-observer: 1.2.0
- rc-util: 5.19.3
- dev: false
-
/rc-virtual-list/3.4.2_react-dom@17.0.2+react@17.0.2:
resolution: {integrity: sha512-OyVrrPvvFcHvV0ssz5EDZ+7Rf5qLat/+mmujjchNw5FfbJWNDwkpQ99EcVE6+FtNRmX9wFa1LGNpZLUTvp/4GQ==}
engines: {node: '>=8.x'}
@@ -8188,15 +8055,14 @@ packages:
dev: false
/react-dom/17.0.2_react@17.0.2:
- resolution: {integrity: sha512-s4h96KtLDUQlsENhMn1ar8t2bEa+q/YAtj8pPPdIjPDGBDIVNsrD9aXNWqspUe6AzKCIG0C1HZZLqLV7qpOBGA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npm.taobao.org/react-dom/download/react-dom-17.0.2.tgz}
+ resolution: {integrity: sha512-s4h96KtLDUQlsENhMn1ar8t2bEa+q/YAtj8pPPdIjPDGBDIVNsrD9aXNWqspUe6AzKCIG0C1HZZLqLV7qpOBGA==}
peerDependencies:
react: 17.0.2
dependencies:
- loose-envify: registry.nlark.com/loose-envify/1.4.0
- object-assign: registry.nlark.com/object-assign/4.1.1
+ loose-envify: 1.4.0
+ object-assign: 4.1.1
react: 17.0.2
scheduler: 0.20.2
- dev: false
/react-easy-crop/3.5.3_react-dom@17.0.2+react@17.0.2:
resolution: {integrity: sha1-dIG25ISotqwwg3PwsXOq1PHRAjk=, registry: https://registry.npm.taobao.org/, tarball: https://registry.npm.taobao.org/react-easy-crop/download/react-easy-crop-3.5.3.tgz}
@@ -8221,7 +8087,7 @@ packages:
dev: true
/react-fast-compare/2.0.4:
- resolution: {integrity: sha1-6EtNRVsP7BE+BALDKTUnFRlvgfk=, registry: https://registry.npm.taobao.org/, tarball: https://registry.npm.taobao.org/react-fast-compare/download/react-fast-compare-2.0.4.tgz}
+ resolution: {integrity: sha512-suNP+J1VU1MWFKcyt7RtjiSWUjvidmQSlqu+eHslq+342xCbGTYmC0mEhPCOHxlW0CywylOC1u2DFAT+bv4dBw==}
dev: false
/react-fast-compare/3.2.0:
@@ -8250,7 +8116,7 @@ packages:
react: 17.0.2
dev: false
- /react-i18next/11.15.1_i18next@20.6.1+react@17.0.2:
+ /react-i18next/11.15.1_i18next@20.6.1:
resolution: {integrity: sha512-lnje1uKu5XeM5MLvfbt1oygF+nEIZnpOM4Iu8bkx5ECD4XRYgi3SJDmolrp0EDxDHeK2GgFb+vEEK0hsZ9sjeA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npm.taobao.org/react-i18next/download/react-i18next-11.15.1.tgz}
peerDependencies:
i18next: '>= 19.0.0'
@@ -8260,7 +8126,6 @@ packages:
html-escaper: registry.nlark.com/html-escaper/2.0.2
html-parse-stringify: 3.0.1
i18next: 20.6.1
- react: 17.0.2
dev: false
/react-is/16.13.1:
@@ -8311,7 +8176,7 @@ packages:
resolution: {integrity: sha1-IVa6nYX6R0H68ZGLOO/B6uPGoTY=, registry: https://registry.npm.taobao.org/, tarball: https://registry.npm.taobao.org/react-property/download/react-property-2.0.0.tgz}
dev: false
- /react-query/3.34.6_react@17.0.2:
+ /react-query/3.34.6:
resolution: {integrity: sha512-2UKldH8T2PjmLxaOzANok7yITQn9FF1pBbrZFF1hvukBjYefHtCjUur+GOVAWMhrsskcCoKRviei4hcpvj9wLQ==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npm.taobao.org/react-query/download/react-query-3.34.6.tgz}
peerDependencies:
react: ^16.8.0 || ^17.0.0
@@ -8326,10 +8191,9 @@ packages:
'@babel/runtime': 7.16.5
broadcast-channel: 3.7.0
match-sorter: 6.3.1
- react: 17.0.2
dev: false
- /react-redux/7.2.6_react@17.0.2:
+ /react-redux/7.2.6:
resolution: {integrity: sha1-SWM6JP5VK1+cr1j+uKE4k23f6ao=, registry: https://registry.npm.taobao.org/, tarball: https://registry.npm.taobao.org/react-redux/download/react-redux-7.2.6.tgz}
peerDependencies:
react: ^16.8.3 || ^17
@@ -8346,7 +8210,6 @@ packages:
hoist-non-react-statics: registry.nlark.com/hoist-non-react-statics/3.3.2
loose-envify: registry.nlark.com/loose-envify/1.4.0
prop-types: 15.8.0
- react: 17.0.2
react-is: 17.0.2
dev: false
@@ -8433,12 +8296,11 @@ packages:
dev: false
/react/17.0.2:
- resolution: {integrity: sha512-gnhPt75i/dq/z3/6q/0asP78D0u592D5L1pd7M8P+dck6Fu/jJeL6iVVK23fptSUZj8Vjf++7wXA8UNclGQcbA==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npm.taobao.org/react/download/react-17.0.2.tgz}
+ resolution: {integrity: sha512-gnhPt75i/dq/z3/6q/0asP78D0u592D5L1pd7M8P+dck6Fu/jJeL6iVVK23fptSUZj8Vjf++7wXA8UNclGQcbA==}
engines: {node: '>=0.10.0'}
dependencies:
- loose-envify: registry.nlark.com/loose-envify/1.4.0
- object-assign: registry.nlark.com/object-assign/4.1.1
- dev: false
+ loose-envify: 1.4.0
+ object-assign: 4.1.1
/read-pkg-up/7.0.1:
resolution: {integrity: sha1-86YTV1hFlzOuK5VjgFbhhU5+9Qc=, registry: https://registry.npm.taobao.org/, tarball: https://registry.npm.taobao.org/read-pkg-up/download/read-pkg-up-7.0.1.tgz}
@@ -8743,11 +8605,10 @@ packages:
dev: true
/scheduler/0.20.2:
- resolution: {integrity: sha1-S67jlDbjSqk7SHS93L8P6Li1DpE=, registry: https://registry.npm.taobao.org/, tarball: https://registry.npm.taobao.org/scheduler/download/scheduler-0.20.2.tgz}
+ resolution: {integrity: sha512-2eWfGgAqqWFGqtdMmcL5zCMK1U8KlXv8SQFGglL3CEtd0aDVDWgeF/YoCmvln55m5zSk3J/20hTaSBeSObsQDQ==}
dependencies:
loose-envify: 1.4.0
object-assign: 4.1.1
- dev: false
/schema-utils/3.1.1:
resolution: {integrity: sha1-vHTEtraZXB2I92qLd76nIZ4MgoE=, registry: https://registry.npm.taobao.org/, tarball: https://registry.npm.taobao.org/schema-utils/download/schema-utils-3.1.1.tgz}
@@ -9314,6 +9175,10 @@ packages:
/tiny-invariant/1.2.0:
resolution: {integrity: sha512-1Uhn/aqw5C6RI4KejVeTg6mIS7IqxnLJ8Mv2tV5rTc0qWobay7pDUz6Wi392Cnc8ak1H0F2cjoRzb2/AW4+Fvg==}
+ /tiny-warning/1.0.3:
+ resolution: {integrity: sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA==}
+ dev: false
+
/tlds/1.227.0:
resolution: {integrity: sha512-H6KXre7PSkfZyPiGzHvdG/p42LCfPmmyH3MhmZnULiVGEGXKBe8vzyLrw6q0UAtXOL0eNScA9vC4DcfhrcaPlg==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npm.taobao.org/tlds/download/tlds-1.227.0.tgz}
hasBin: true
@@ -9354,6 +9219,10 @@ packages:
engines: {node: '>=0.6'}
dev: true
+ /toposort/2.0.2:
+ resolution: {integrity: sha512-0a5EOkAUp8D4moMi2W8ZF8jcga7BgZd91O/yabJCFY8az+XSzeGyTKs0Aoo897iV1Nj6guFq8orWDS96z91oGg==}
+ dev: false
+
/tr46/1.0.1:
resolution: {integrity: sha512-dTpowEjclQ7Kgx5SdBkqRzVhERQXov8/l9Ft9dVM9fmg0W0KQSVaXX9T4i6twCPNtYiZM53lpSSUAwJbFPOHxA==}
dependencies:
@@ -9482,6 +9351,10 @@ packages:
strip-bom: registry.nlark.com/strip-bom/3.0.0
dev: true
+ /tslib/1.14.1:
+ resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==}
+ dev: false
+
/tslib/2.3.1:
resolution: {integrity: sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==, registry: https://registry.npm.taobao.org/, tarball: https://registry.npm.taobao.org/tslib/download/tslib-2.3.1.tgz}
@@ -10215,16 +10088,16 @@ packages:
dev: false
/yup/0.32.11:
- resolution: {integrity: sha1-1n+4Pu+kaYYHmC5j98pMXtPPGMU=, registry: https://registry.npm.taobao.org/, tarball: https://registry.npm.taobao.org/yup/download/yup-0.32.11.tgz}
+ resolution: {integrity: sha512-Z2Fe1bn+eLstG8DRR6FTavGD+MeAwyfmouhHsIUgaADz8jvFKbO/fXc2trJKZg+5EBjh4gGm3iU/t3onKlXHIg==}
engines: {node: '>=10'}
dependencies:
'@babel/runtime': 7.16.5
'@types/lodash': 4.14.178
lodash: 4.17.21
- lodash-es: registry.nlark.com/lodash-es/4.17.21
+ lodash-es: 4.17.21
nanoclone: 0.2.1
property-expr: 2.0.4
- toposort: registry.nlark.com/toposort/2.0.2
+ toposort: 2.0.2
dev: false
registry.nlark.com/@ant-design/colors/6.0.0:
@@ -11226,13 +11099,6 @@ packages:
version: 0.1.4
dev: true
- registry.nlark.com/deepmerge/2.2.1:
- resolution: {integrity: sha1-XT/yKgHAD2RUBaL7wX0HeKGAEXA=, registry: https://registry.npm.taobao.org/, tarball: https://registry.nlark.com/deepmerge/download/deepmerge-2.2.1.tgz}
- name: deepmerge
- version: 2.2.1
- engines: {node: '>=0.10.0'}
- dev: false
-
registry.nlark.com/deepmerge/4.2.2:
resolution: {integrity: sha1-RNLqNnm49NT/ujPwPYZfwee/SVU=, registry: https://registry.npm.taobao.org/, tarball: https://registry.nlark.com/deepmerge/download/deepmerge-4.2.2.tgz}
name: deepmerge
@@ -12768,12 +12634,6 @@ packages:
p-locate: registry.nlark.com/p-locate/5.0.0
dev: true
- registry.nlark.com/lodash-es/4.17.21:
- resolution: {integrity: sha1-Q+YmxG5lkbd1C+srUBFzkMYJ4+4=, registry: https://registry.npm.taobao.org/, tarball: https://registry.nlark.com/lodash-es/download/lodash-es-4.17.21.tgz}
- name: lodash-es
- version: 4.17.21
- dev: false
-
registry.nlark.com/lodash.memoize/4.1.2:
resolution: {integrity: sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4=, registry: https://registry.npm.taobao.org/, tarball: https://registry.nlark.com/lodash.memoize/download/lodash.memoize-4.1.2.tgz}
name: lodash.memoize
@@ -14669,12 +14529,6 @@ packages:
dependencies:
is-number: registry.nlark.com/is-number/7.0.0
- registry.nlark.com/toposort/2.0.2:
- resolution: {integrity: sha1-riF2gXXRVZ1IvvNUILL0li8JwzA=, registry: https://registry.npm.taobao.org/, tarball: https://registry.nlark.com/toposort/download/toposort-2.0.2.tgz}
- name: toposort
- version: 2.0.2
- dev: false
-
registry.nlark.com/totalist/1.1.0:
resolution: {integrity: sha1-pNZaPlRlF3AePlw3pHpwrJf+Vt8=, registry: https://registry.npm.taobao.org/, tarball: https://registry.nlark.com/totalist/download/totalist-1.1.0.tgz}
name: totalist
@@ -14704,6 +14558,7 @@ packages:
resolution: {integrity: sha1-zy04vcNKE0vK8QkcQfZhni9nLQA=, registry: https://registry.npm.taobao.org/, tarball: https://registry.nlark.com/tslib/download/tslib-1.14.1.tgz}
name: tslib
version: 1.14.1
+ dev: true
registry.nlark.com/tslib/2.0.1:
resolution: {integrity: sha1-QQ6w0RPltjVkkO7HSWA3JbAhtD4=, registry: https://registry.npm.taobao.org/, tarball: https://registry.nlark.com/tslib/download/tslib-2.0.1.tgz}
diff --git a/shared/components/FastForm/container.tsx b/shared/components/FastForm/container.tsx
deleted file mode 100644
index aad07837..00000000
--- a/shared/components/FastForm/container.tsx
+++ /dev/null
@@ -1,29 +0,0 @@
-import type { ComponentType } from 'react';
-
-/**
- * 容器配置
- */
-export interface FastFormContainerProps {
- loading: boolean;
- submitLabel?: string;
-
- layout?: 'horizontal' | 'vertical';
-
- /**
- * 是否允许提交
- */
- canSubmit?: boolean;
- handleSubmit: () => void;
-}
-export type FastFormContainerComponent =
- React.ComponentType;
-let FastFormContainer: FastFormContainerComponent;
-export function regFormContainer(component: FastFormContainerComponent) {
- FastFormContainer = component;
-}
-
-export function getFormContainer():
- | ComponentType
- | undefined {
- return FastFormContainer;
-}
diff --git a/shared/components/FastForm/context.tsx b/shared/components/FastForm/context.tsx
deleted file mode 100644
index 75c5cc49..00000000
--- a/shared/components/FastForm/context.tsx
+++ /dev/null
@@ -1,13 +0,0 @@
-import React, { useContext } from 'react';
-import type { useFormik } from 'formik';
-
-type FastFormContextType = ReturnType;
-
-export const FastFormContext = React.createContext(
- null
-);
-FastFormContext.displayName = 'FastFormContext';
-
-export function useFastFormContext(): FastFormContextType | null {
- return useContext(FastFormContext);
-}
diff --git a/shared/index.tsx b/shared/index.tsx
index 19efff47..8a26eaa1 100644
--- a/shared/index.tsx
+++ b/shared/index.tsx
@@ -15,23 +15,6 @@ export {
export { useCachedUserInfo, useCachedOnlineStatus } from './cache/useCache';
// components
-export {
- FastForm,
- CustomField,
- regField,
- regFormContainer,
-} from './components/FastForm/index';
-export type {
- FastFormFieldComponent,
- FastFormFieldProps,
- FastFormFieldMeta,
- FastFormContainerComponent,
-} from './components/FastForm/index';
-export {
- createFastFormSchema,
- fieldSchema,
-} from './components/FastForm/schema';
-export { useFastFormContext } from './components/FastForm/context';
export { buildPortal, DefaultEventEmitter } from './components/Portal';
export { TcProvider } from './components/Provider';
diff --git a/web/src/components/WebFastForm/types/Custom.tsx b/web/src/components/WebFastForm/types/Custom.tsx
deleted file mode 100644
index 6381c080..00000000
--- a/web/src/components/WebFastForm/types/Custom.tsx
+++ /dev/null
@@ -1,22 +0,0 @@
-import React from 'react';
-import { Form } from 'antd';
-import _get from 'lodash/get';
-import _isNil from 'lodash/isNil';
-import type {
- FastFormFieldComponent,
- FastFormFieldProps,
-} from 'tailchat-shared';
-import { CustomField } from 'tailchat-shared';
-
-export const FastFormCustom: FastFormFieldComponent<{
- render: (props: FastFormFieldProps) => React.ReactNode;
-}> = React.memo((props) => {
- const { label } = props;
-
- return (
-
-
-
- );
-});
-FastFormCustom.displayName = 'FastFormCustom';
diff --git a/web/src/components/modals/ClaimTemporaryUser.tsx b/web/src/components/modals/ClaimTemporaryUser.tsx
index e561db7f..9ae5d201 100644
--- a/web/src/components/modals/ClaimTemporaryUser.tsx
+++ b/web/src/components/modals/ClaimTemporaryUser.tsx
@@ -3,16 +3,18 @@ import { setGlobalUserLoginInfo } from '@/utils/user-helper';
import React from 'react';
import {
claimTemporaryUser,
- createFastFormSchema,
- FastFormFieldMeta,
- fieldSchema,
t,
useAppDispatch,
useAsyncRequest,
userActions,
} from 'tailchat-shared';
+import {
+ createMetaFormSchema,
+ MetaFormFieldMeta,
+ metaFormFieldSchema,
+ WebMetaForm,
+} from 'tailchat-design';
import { ModalWrapper } from '../Modal';
-import { WebFastForm } from '../WebFastForm';
interface Values {
email: string;
@@ -20,7 +22,7 @@ interface Values {
[key: string]: unknown;
}
-const fields: FastFormFieldMeta[] = [
+const fields: MetaFormFieldMeta[] = [
{ type: 'text', name: 'email', label: t('邮箱') },
{
type: 'password',
@@ -29,12 +31,12 @@ const fields: FastFormFieldMeta[] = [
},
];
-const schema = createFastFormSchema({
- email: fieldSchema
+const schema = createMetaFormSchema({
+ email: metaFormFieldSchema
.string()
.required(t('邮箱不能为空'))
.email(t('邮箱格式不正确')),
- password: fieldSchema
+ password: metaFormFieldSchema
.string()
.min(6, t('密码不能低于6位'))
.required(t('密码不能为空')),
@@ -68,7 +70,7 @@ export const ClaimTemporaryUser: React.FC = React.memo(
return (
-
+
);
}
diff --git a/web/src/components/modals/GroupPanel/CreateGroupPanel.tsx b/web/src/components/modals/GroupPanel/CreateGroupPanel.tsx
index b7659db4..c90b8737 100644
--- a/web/src/components/modals/GroupPanel/CreateGroupPanel.tsx
+++ b/web/src/components/modals/GroupPanel/CreateGroupPanel.tsx
@@ -1,26 +1,26 @@
-import { findPluginPanelInfoByName } from '@/utils/plugin-helper';
import React, { useState } from 'react';
import {
- GroupPanelType,
t,
useAsyncRequest,
createGroupPanel,
- createFastFormSchema,
- fieldSchema,
showToasts,
} from 'tailchat-shared';
+import {
+ createMetaFormSchema,
+ metaFormFieldSchema,
+ WebMetaForm,
+} from 'tailchat-design';
import { ModalWrapper } from '../../Modal';
-import { WebFastForm } from '../../WebFastForm';
import { buildDataFromValues } from './helper';
import type { GroupPanelValues } from './types';
import { useGroupPanelFields } from './useGroupPanelFields';
-const schema = createFastFormSchema({
- name: fieldSchema
+const schema = createMetaFormSchema({
+ name: metaFormFieldSchema
.string()
.required(t('面板名不能为空'))
.max(20, t('面板名过长')),
- type: fieldSchema.string().required(t('面板类型不能为空')),
+ type: metaFormFieldSchema.string().required(t('面板类型不能为空')),
});
/**
@@ -45,7 +45,7 @@ export const ModalCreateGroupPanel: React.FC<{
return (
-
- f.type !== 'type')} // 变更时不显示类型
initialValues={pickValuesFromGroupPanelInfo(groupPanelInfo)}
diff --git a/web/src/components/modals/GroupPanel/useGroupPanelFields.tsx b/web/src/components/modals/GroupPanel/useGroupPanelFields.tsx
index 36d1d120..aed6e1e5 100644
--- a/web/src/components/modals/GroupPanel/useGroupPanelFields.tsx
+++ b/web/src/components/modals/GroupPanel/useGroupPanelFields.tsx
@@ -2,19 +2,18 @@ import { UserSelector } from '@/components/UserSelector';
import React from 'react';
import { useMemo } from 'react';
import {
- FastFormFieldMeta,
GroupPanelType,
isDevelopment,
t,
- useFastFormContext,
useGroupMemberIds,
} from 'tailchat-shared';
+import { MetaFormFieldMeta, useMetaFormContext } from 'tailchat-design';
import type { GroupPanelValues } from './types';
import _compact from 'lodash/compact';
import { pluginGroupPanel } from '@/plugin/common';
import { findPluginPanelInfoByName } from '@/utils/plugin-helper';
-const baseFields: FastFormFieldMeta[] = [
+const baseFields: MetaFormFieldMeta[] = [
{ type: 'text', name: 'name', label: t('面板名') },
{
type: 'select',
@@ -44,7 +43,7 @@ export function useGroupPanelFields(
const disableSendMessageWithoutRender = useMemo(() => {
const DisableSendMessageWithoutComponent: React.FC = () => {
const groupMemberUUIDs = useGroupMemberIds(groupId);
- const context = useFastFormContext();
+ const context = useMetaFormContext();
return (
= React.memo(
return (
-