@spacego/fe-components 0.3.0 → 0.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (49) hide show
  1. package/README.md +37 -37
  2. package/lib/fe-layouts/basics-layout/components/utils/index.js +8 -8
  3. package/lib/router/utils.js +31 -30
  4. package/lib/types/fe-auto-complete/auto-complete.d.ts +3 -1
  5. package/lib/types/fe-button/button.d.ts +15 -13
  6. package/lib/types/fe-cascader/cascader.d.ts +8 -6
  7. package/lib/types/fe-checkbox/checkbox.d.ts +6 -4
  8. package/lib/types/fe-checkbox-group/checkbox-group.d.ts +6 -4
  9. package/lib/types/fe-date-picker/date-picker.d.ts +4 -2
  10. package/lib/types/fe-description-render/description-render.d.ts +32 -30
  11. package/lib/types/fe-descriptions/descriptions.d.ts +3 -1
  12. package/lib/types/fe-empty/empty.d.ts +3 -1
  13. package/lib/types/fe-error-block/error-block.d.ts +7 -5
  14. package/lib/types/fe-form/fe-form/form.d.ts +338 -336
  15. package/lib/types/fe-form/fe-form-item/form-item.d.ts +66 -64
  16. package/lib/types/fe-form/fe-form-label/form-label.d.ts +44 -42
  17. package/lib/types/fe-input/input.d.ts +12 -10
  18. package/lib/types/fe-input-number/input-number.d.ts +3 -1
  19. package/lib/types/fe-layouts/basics-layout/components/utils/index.d.ts +7 -6
  20. package/lib/types/fe-layouts/context/global-context.d.ts +240 -238
  21. package/lib/types/fe-link/link.d.ts +6 -4
  22. package/lib/types/fe-map/map.d.ts +73 -73
  23. package/lib/types/fe-modal/modal.d.ts +20 -18
  24. package/lib/types/fe-pagination/pagination.d.ts +3 -1
  25. package/lib/types/fe-panel/panel-toolbar.d.ts +5 -3
  26. package/lib/types/fe-panel/panel.d.ts +60 -58
  27. package/lib/types/fe-permission/permission.d.ts +11 -9
  28. package/lib/types/fe-permission-provider/permission-provider.d.ts +8 -6
  29. package/lib/types/fe-radio/radio.d.ts +3 -1
  30. package/lib/types/fe-radio-group/radio-group.d.ts +3 -1
  31. package/lib/types/fe-rich-text/rich-text.d.ts +167 -165
  32. package/lib/types/fe-select/select.d.ts +9 -7
  33. package/lib/types/fe-switch/switch.d.ts +3 -1
  34. package/lib/types/fe-table/fe-table-link/table-link.d.ts +10 -8
  35. package/lib/types/fe-table/fe-table-render/table-render.d.ts +12 -10
  36. package/lib/types/fe-table/fe-table-toolbar/table-toolbar.d.ts +16 -14
  37. package/lib/types/fe-table/type/table-context.d.ts +60 -60
  38. package/lib/types/fe-table/type/table.d.ts +789 -787
  39. package/lib/types/fe-text-area/text-area.d.ts +5 -3
  40. package/lib/types/fe-time-picker/time-picker.d.ts +4 -2
  41. package/lib/types/fe-upload/upload.d.ts +83 -81
  42. package/lib/types/fe-upload-atomic/upload-atomic.d.ts +3 -1
  43. package/lib/types/hooks/use-descriptions.hook/use-descriptions.d.ts +151 -149
  44. package/lib/types/hooks/use-form.hook/use-form.d.ts +13 -11
  45. package/lib/types/hooks/use-permission.hook/use-permission.d.ts +10 -10
  46. package/lib/types/router/utils.d.ts +2 -1
  47. package/lib/types/typings/index.d.ts +98 -98
  48. package/lib/types/typings/shims-axios.d.ts +38 -38
  49. package/package.json +3 -3
@@ -1,4 +1,6 @@
1
1
  import { Input } from 'antd';
2
- type TextAreaProps = Parameters<typeof Input.TextArea>[0];
3
-
4
- export interface FeTextAreaProps extends TextAreaProps {}
2
+
3
+
4
+ type TextAreaProps = Parameters<typeof Input.TextArea>[0];
5
+
6
+ export interface FeTextAreaProps extends TextAreaProps {}
@@ -1,3 +1,5 @@
1
1
  import { TimePickerProps } from 'antd';
2
- export interface FeTimePickerProps extends TimePickerProps {
3
- }
2
+
3
+
4
+ export interface FeTimePickerProps extends TimePickerProps {
5
+ }
@@ -2,84 +2,86 @@ import { UploadFile } from 'antd';
2
2
  import { UploadChangeParam } from 'antd/es/upload';
3
3
  import { FeUploadAtomicProps } from '../fe-upload-atomic/upload-atomic.d';
4
4
  import { AcceptType } from './upload.constant';
5
- export type TCropConfig = {
6
- width?: number;
7
- height?: number;
8
- roate?: boolean;
9
- };
10
-
11
- export interface IFeUploadProps extends Omit<FeUploadAtomicProps, 'accept' | 'onChange' | 'customRequest'> {
12
- /**
13
- * @name 自定义样式类型
14
- * @params render 手动画children样式
15
- * @params default 方形+加号上传框 - 默认样式
16
- * @params card 卡片样式,可拖动上传,身份证场景
17
- * @params btn 单个按钮样式,文件列表场景
18
- */
19
- customType?: 'render' | 'default' | 'card' | 'btn' | 'drag';
20
- /**
21
- * @name 拖拽框/上传按钮内文案
22
- */
23
- title?: string | string[];
24
- /**
25
- * @name 上传的fileList
26
- *
27
- * 当maxCount === 1时,value可为string类型
28
- */
29
- value?: string | UploadFile[];
30
- /**
31
- * @name 底部提示
32
- */
33
- tips?: string;
34
- /**
35
- * @name 可上传文件大小,单位:B,默认20M(1024*1024*20)
36
- */
37
- fileSize?: number;
38
- /**
39
- * @name 上传图片是否支持裁剪
40
- * @param isOpen 打开、关闭
41
- */
42
- isCropImage?: boolean;
43
- /**
44
- * @name 图片裁剪参数设置
45
- */
46
- cropCofig?: cropConfig;
47
- /**
48
- * @name 上传的文件类型限制
49
- */
50
- accept?: AcceptType | AcceptType[];
51
- /**
52
- * @name 自定义accept格式,枚举accept不满足需求时使用,customAccept优先级大于accept
53
- * @description 可以是预定义的类型(如IMAGE, PDF)或自定义MIME类型字符串(如'image/jpeg,image/png')
54
- */
55
- customAccept?: string;
56
- /**
57
- * @name 上传文件限制类型格式,用于提示
58
- * @description 会自动拼接为`上传文件类型只能为${acceptDesc}格式`
59
- */
60
- acceptDesc?: string;
61
- /**
62
- * @name 是否手动处理类型校验
63
- * @description 默认会根据accept或customAccept自动校验,当isManualValieType为true时,需要手动处理类型校验
64
- */
65
- isManualValieType?: boolean;
66
- /**
67
- * @name 是否手动处理预览
68
- * @description 默认会根据fileList自动处理预览,当isManualPreview为true时,需要手动处理预览
69
- */
70
- isManualPreview?: boolean;
71
- /**
72
- * @name 是否在上传失败时删除文件
73
- */
74
- isRemoveOnError?: boolean;
75
- /**
76
- * @name 自定义上传回调
77
- */
78
- customRequest?: (file: File) => Promise<any>;
79
- /**
80
- * @name onchange事件
81
- * @param fileList fileList列表
82
- * @param files antd返回的上传进度和list
83
- */
84
- onChange?: (fileList: UploadFile[], files: UploadChangeParam<UploadFile>) => void;
85
- }
5
+
6
+
7
+ export type TCropConfig = {
8
+ width?: number;
9
+ height?: number;
10
+ roate?: boolean;
11
+ };
12
+
13
+ export interface IFeUploadProps extends Omit<FeUploadAtomicProps, 'accept' | 'onChange' | 'customRequest'> {
14
+ /**
15
+ * @name 自定义样式类型
16
+ * @params render 手动画children样式
17
+ * @params default 方形+加号上传框 - 默认样式
18
+ * @params card 卡片样式,可拖动上传,身份证场景
19
+ * @params btn 单个按钮样式,文件列表场景
20
+ */
21
+ customType?: 'render' | 'default' | 'card' | 'btn' | 'drag';
22
+ /**
23
+ * @name 拖拽框/上传按钮内文案
24
+ */
25
+ title?: string | string[];
26
+ /**
27
+ * @name 上传的fileList
28
+ *
29
+ * 当maxCount === 1时,value可为string类型
30
+ */
31
+ value?: string | UploadFile[];
32
+ /**
33
+ * @name 底部提示
34
+ */
35
+ tips?: string;
36
+ /**
37
+ * @name 可上传文件大小,单位:B,默认20M(1024*1024*20)
38
+ */
39
+ fileSize?: number;
40
+ /**
41
+ * @name 上传图片是否支持裁剪
42
+ * @param isOpen 打开、关闭
43
+ */
44
+ isCropImage?: boolean;
45
+ /**
46
+ * @name 图片裁剪参数设置
47
+ */
48
+ cropCofig?: cropConfig;
49
+ /**
50
+ * @name 上传的文件类型限制
51
+ */
52
+ accept?: AcceptType | AcceptType[];
53
+ /**
54
+ * @name 自定义accept格式,枚举accept不满足需求时使用,customAccept优先级大于accept
55
+ * @description 可以是预定义的类型(如IMAGE, PDF)或自定义MIME类型字符串(如'image/jpeg,image/png')
56
+ */
57
+ customAccept?: string;
58
+ /**
59
+ * @name 上传文件限制类型格式,用于提示
60
+ * @description 会自动拼接为`上传文件类型只能为${acceptDesc}格式`
61
+ */
62
+ acceptDesc?: string;
63
+ /**
64
+ * @name 是否手动处理类型校验
65
+ * @description 默认会根据accept或customAccept自动校验,当isManualValieType为true时,需要手动处理类型校验
66
+ */
67
+ isManualValieType?: boolean;
68
+ /**
69
+ * @name 是否手动处理预览
70
+ * @description 默认会根据fileList自动处理预览,当isManualPreview为true时,需要手动处理预览
71
+ */
72
+ isManualPreview?: boolean;
73
+ /**
74
+ * @name 是否在上传失败时删除文件
75
+ */
76
+ isRemoveOnError?: boolean;
77
+ /**
78
+ * @name 自定义上传回调
79
+ */
80
+ customRequest?: (file: File) => Promise<any>;
81
+ /**
82
+ * @name onchange事件
83
+ * @param fileList fileList列表
84
+ * @param files antd返回的上传进度和list
85
+ */
86
+ onChange?: (fileList: UploadFile[], files: UploadChangeParam<UploadFile>) => void;
87
+ }
@@ -1,2 +1,4 @@
1
1
  import { UploadProps } from 'antd';
2
- export interface FeUploadAtomicProps extends UploadProps {}
2
+
3
+
4
+ export interface FeUploadAtomicProps extends UploadProps {}
@@ -1,151 +1,153 @@
1
1
  import { DescriptionsProps, ImageProps } from 'antd';
2
2
  import { default as React } from 'react';
3
- /**
4
- * @name 渲染类型
5
- * @default default
6
- * @options default:纯文本静态展示
7
- * tag:枚举tag展示,支持多个tag
8
- *
9
- */
10
- export type TRenderType = 'default' | 'tag' | 'link' | 'image';
11
-
12
- export interface IDescriptionsItem<DataType extends Record<string, any>> {
13
- /**
14
- * @name 标题
15
- */
16
- label: string | React.ReactNode;
17
- /**
18
- * @name 与实体映射的key
19
- */
20
- dataIndex: keyof DataType;
21
- /**
22
- * @name render 自定义渲染
23
- */
24
- render?: React.ReactNode | ((value: string, data: DataType) => React.ReactNode);
25
- /**
26
- * @name 确定这个列的唯一值,一般用于 dataIndex 重复的情况
27
- */
28
- key?: React.Key;
29
- /**
30
- * @name 描述列表栅格占位
31
- * @default 1
32
- */
33
- colSpan?: number;
34
- /**
35
- * @name 内容
36
- */
37
- /**
38
- * @name 是否开启ellipsis
39
- */
40
- ellipsis?: boolean | { showTitle: boolean };
41
- /**
42
- * @name 渲染类型
43
- */
44
- renderType?: TRenderType;
45
- /**
46
- * @name 是否隐藏
47
- */
48
- hidden?: boolean;
49
- /**
50
- * @name 默认渲染器参数
51
- */
52
- defaultRenderParams?: {
53
- /**
54
- * @name 过滤器
55
- */
56
- filter?: any;
57
- /**
58
- * @name 过滤器参数
59
- */
60
- dictfilterParams?: {
61
- dictList: Array<{ dataIndex: string; label: string }>;
62
- };
63
- };
64
- /**
65
- * @name tag渲染器参数
66
- */
67
- tagRenderParams?: {
68
- /**
69
- * @name 过滤器
70
- */
71
- filter?: any;
72
- /**
73
- * @name 过滤器参数
74
- */
75
- dictfilterParams?: {
76
- dictList: Array<{ dataIndex: string; label: string }>;
77
- };
78
- /**
79
- * @name 分割符
80
- * @default |
81
- */
82
- separator?: string;
83
- /**
84
- * @name 颜色类型枚举
85
- */
86
- themeEnums?: Record<string, 'processing' | 'success' | 'error' | 'default'>;
87
- };
88
- /**
89
- * @name link渲染器参数
90
- */
91
- linkRenderParams?: {
92
- /*
93
- * 标签
94
- */
95
- label?: string;
96
- /**
97
- * @name 点击事件
98
- */
99
- onClick?: (value: any) => void;
100
- };
101
- /**
102
- * @name image渲染器参数
103
- */
104
- imageRenderParams?: ImageProps;
105
- }
106
-
107
- export interface IDescriptionsParams<DataType> {
108
- /**
109
- * @name 描述列表项
110
- */
111
- descriptionsItems: IDescriptionsItem<DataType>[];
112
- /**
113
- * @name 描述列表数据
114
- */
115
- descriptionsData: DataType<string, any>;
116
- /**
117
- * @name 是否显示边框
118
- * @default true
119
- */
120
- bordered?: boolean;
121
- /**
122
- * @name 描述列表样式
123
- */
124
- styles?: DescriptionsProps['styles'];
125
- /**
126
- * @name 描述列表列数
127
- * @default 3
128
- */
129
- column?: number;
130
- /**
131
- * @name 描述列表宽度
132
- * @description 描述列表宽度统一设置仅增对bordered 为 true 有效
133
- * @default 100%
134
- */
135
- descriptionsWidth?: string;
136
- /**
137
- * @name 描述列表大小
138
- * @default small
139
- */
140
- size?: DescriptionsProps['size'];
141
- /**
142
- * @name 描述列表唯一标识
143
- */
144
- rawKeyRef?: React.MutableRefObject<string>;
145
- /**
146
- * @name 样式名
147
- */
148
- className?: string;
149
- }
150
-
151
- export interface IUseDescriptions extends DescriptionsProps { }
3
+
4
+
5
+ /**
6
+ * @name 渲染类型
7
+ * @default default
8
+ * @options default:纯文本静态展示
9
+ * tag:枚举tag展示,支持多个tag
10
+ *
11
+ */
12
+ export type TRenderType = 'default' | 'tag' | 'link' | 'image';
13
+
14
+ export interface IDescriptionsItem<DataType extends Record<string, any>> {
15
+ /**
16
+ * @name 标题
17
+ */
18
+ label: string | React.ReactNode;
19
+ /**
20
+ * @name 与实体映射的key
21
+ */
22
+ dataIndex: keyof DataType;
23
+ /**
24
+ * @name render 自定义渲染
25
+ */
26
+ render?: React.ReactNode | ((value: string, data: DataType) => React.ReactNode);
27
+ /**
28
+ * @name 确定这个列的唯一值,一般用于 dataIndex 重复的情况
29
+ */
30
+ key?: React.Key;
31
+ /**
32
+ * @name 描述列表栅格占位
33
+ * @default 1
34
+ */
35
+ colSpan?: number;
36
+ /**
37
+ * @name 内容
38
+ */
39
+ /**
40
+ * @name 是否开启ellipsis
41
+ */
42
+ ellipsis?: boolean | { showTitle: boolean };
43
+ /**
44
+ * @name 渲染类型
45
+ */
46
+ renderType?: TRenderType;
47
+ /**
48
+ * @name 是否隐藏
49
+ */
50
+ hidden?: boolean;
51
+ /**
52
+ * @name 默认渲染器参数
53
+ */
54
+ defaultRenderParams?: {
55
+ /**
56
+ * @name 过滤器
57
+ */
58
+ filter?: any;
59
+ /**
60
+ * @name 过滤器参数
61
+ */
62
+ dictfilterParams?: {
63
+ dictList: Array<{ dataIndex: string; label: string }>;
64
+ };
65
+ };
66
+ /**
67
+ * @name tag渲染器参数
68
+ */
69
+ tagRenderParams?: {
70
+ /**
71
+ * @name 过滤器
72
+ */
73
+ filter?: any;
74
+ /**
75
+ * @name 过滤器参数
76
+ */
77
+ dictfilterParams?: {
78
+ dictList: Array<{ dataIndex: string; label: string }>;
79
+ };
80
+ /**
81
+ * @name 分割符
82
+ * @default |
83
+ */
84
+ separator?: string;
85
+ /**
86
+ * @name 颜色类型枚举
87
+ */
88
+ themeEnums?: Record<string, 'processing' | 'success' | 'error' | 'default'>;
89
+ };
90
+ /**
91
+ * @name link渲染器参数
92
+ */
93
+ linkRenderParams?: {
94
+ /*
95
+ * 标签
96
+ */
97
+ label?: string;
98
+ /**
99
+ * @name 点击事件
100
+ */
101
+ onClick?: (value: any) => void;
102
+ };
103
+ /**
104
+ * @name image渲染器参数
105
+ */
106
+ imageRenderParams?: ImageProps;
107
+ }
108
+
109
+ export interface IDescriptionsParams<DataType> {
110
+ /**
111
+ * @name 描述列表项
112
+ */
113
+ descriptionsItems: IDescriptionsItem<DataType>[];
114
+ /**
115
+ * @name 描述列表数据
116
+ */
117
+ descriptionsData: DataType<string, any>;
118
+ /**
119
+ * @name 是否显示边框
120
+ * @default true
121
+ */
122
+ bordered?: boolean;
123
+ /**
124
+ * @name 描述列表样式
125
+ */
126
+ styles?: DescriptionsProps['styles'];
127
+ /**
128
+ * @name 描述列表列数
129
+ * @default 3
130
+ */
131
+ column?: number;
132
+ /**
133
+ * @name 描述列表宽度
134
+ * @description 描述列表宽度统一设置仅增对bordered 为 true 有效
135
+ * @default 100%
136
+ */
137
+ descriptionsWidth?: string;
138
+ /**
139
+ * @name 描述列表大小
140
+ * @default small
141
+ */
142
+ size?: DescriptionsProps['size'];
143
+ /**
144
+ * @name 描述列表唯一标识
145
+ */
146
+ rawKeyRef?: React.MutableRefObject<string>;
147
+ /**
148
+ * @name 样式名
149
+ */
150
+ className?: string;
151
+ }
152
+
153
+ export interface IUseDescriptions extends DescriptionsProps { }
@@ -1,14 +1,16 @@
1
1
  import { FormInstance } from 'antd';
2
2
  import { default as React } from 'react';
3
3
  import { FeFormProps } from '../../fe-form/fe-form/form.d';
4
- export interface IFormParams<DataType = any>
5
- extends FeFormProps<DataType> {
6
- setFormData: (data: Partial<DataType> | DataType) => void;
7
- key?: string;
8
- }
9
-
10
- export interface IFormProps<DataType> {
11
- formProps: FeFormProps<DataType>;
12
- formRef: React.RefObject<FormInstance>;
13
- validate: (key?: keyof DataType) => Promise<any> | undefined;
14
- }
4
+
5
+
6
+ export interface IFormParams<DataType = any>
7
+ extends FeFormProps<DataType> {
8
+ setFormData: (data: Partial<DataType> | DataType) => void;
9
+ key?: string;
10
+ }
11
+
12
+ export interface IFormProps<DataType> {
13
+ formProps: FeFormProps<DataType>;
14
+ formRef: React.RefObject<FormInstance>;
15
+ validate: (key?: keyof DataType) => Promise<any> | undefined;
16
+ }
@@ -1,10 +1,10 @@
1
- export interface IPermissionStore {
2
- /**
3
- * @name 按钮权限字符串
4
- */
5
- btnPermissionList: string[];
6
- /**
7
- * @name 判断是否有权限
8
- */
9
- hasPermission: (permission: string | string[]) => boolean;
10
- }
1
+ export interface IPermissionStore {
2
+ /**
3
+ * @name 按钮权限字符串
4
+ */
5
+ btnPermissionList: string[];
6
+ /**
7
+ * @name 判断是否有权限
8
+ */
9
+ hasPermission: (permission: string | string[]) => boolean;
10
+ }
@@ -21,7 +21,8 @@ export declare function getPath(name: string): string;
21
21
  export declare function createLazyComponent(name: string, modules: TModule): import('react').LazyExoticComponent<ComponentType<any>> | import('react').LazyExoticComponent<() => import('react').DetailedReactHTMLElement<import('react').HTMLAttributes<HTMLElement>, HTMLElement>>;
22
22
  /** 路由节点类型 */
23
23
  type RouteNode = RouteObject & {
24
- parentId: string;
24
+ parentId: number;
25
+ dbId: number;
25
26
  children?: RouteNode[];
26
27
  };
27
28
  /** 菜单项类型(用于 antd Menu 组件) */