@robot-admin/naive-ui-components 0.10.0 → 0.10.2
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.
- package/CHANGELOG.md +12 -0
- package/README.md +3 -2
- package/dist/{C_AudioPlayer-ldTy9Y34.css.map → C_AudioPlayer-Cj4lUdZo.css.map} +1 -1
- package/dist/{C_AvatarGroup-SIzxuuZr.css.map → C_AvatarGroup-D3PwsKME.css.map} +1 -1
- package/dist/{C_Breadcrumb-Bqqrl8nX.css.map → C_Breadcrumb-DOcLt9uX.css.map} +1 -1
- package/dist/C_Breadcrumb.d.cts +3 -2
- package/dist/C_Breadcrumb.d.ts +2 -2
- package/dist/C_Captcha.d.cts +1 -1
- package/dist/C_Cascade.d.cts +1 -1
- package/dist/{C_Chat-CF1SU7mc.css.map → C_Chat-DwatUQqu.css.map} +1 -1
- package/dist/C_Chat.css +1 -1
- package/dist/C_Chat.d.cts +1 -1
- package/dist/C_City.d.cts +1 -1
- package/dist/C_Code.d.cts +1 -1
- package/dist/{C_ContextMenu-Bn_uhJSo.css.map → C_ContextMenu-CD0iaSju.css.map} +1 -1
- package/dist/C_ContextMenu.css +1 -1
- package/dist/C_ContextMenu.d.cts +1 -1
- package/dist/C_Date.d.cts +1 -1
- package/dist/C_Editor.d.cts +1 -1
- package/dist/C_Guide.d.cts +1 -1
- package/dist/C_Icon.d.cts +1 -1
- package/dist/C_Language.d.cts +1 -1
- package/dist/{C_Login-B3qYkLrN.css.map → C_Login-BrQBs_m4.css.map} +1 -1
- package/dist/C_Login.css +1 -1
- package/dist/C_Login.d.cts +1 -1
- package/dist/C_Markdown.d.cts +1 -1
- package/dist/C_Menu.cjs +1 -1
- package/dist/C_Menu.d.cts +3 -2
- package/dist/C_Menu.d.ts +2 -2
- package/dist/C_Menu.js +1 -1
- package/dist/C_Menu.js.map +1 -1
- package/dist/C_Menu2.js +1 -1
- package/dist/C_Menu2.js.map +1 -1
- package/dist/{C_OrgChart-ChZu346B.css.map → C_OrgChart-BXEp4i4w.css.map} +1 -1
- package/dist/C_OrgChart.css +1 -1
- package/dist/{C_Skeleton-BNPbaut7.css.map → C_Skeleton-BJoFYwrF.css.map} +1 -1
- package/dist/C_Skeleton.css +1 -1
- package/dist/{C_TagsView-BN8vMRsY.css.map → C_TagsView-DtGtYhBH.css.map} +1 -1
- package/dist/C_TagsView.css +1 -1
- package/dist/C_TagsView.d.cts +2 -1
- package/dist/C_TagsView.d.ts +2 -2
- package/dist/{C_Timeline-4rk0Dzgn.css.map → C_Timeline-irQcO-b7.css.map} +1 -1
- package/dist/C_Timeline.css +1 -1
- package/dist/{C_Transfer-B-vjvhjI.css.map → C_Transfer-11y3k-WD.css.map} +1 -1
- package/dist/C_Transfer.css +1 -1
- package/dist/constants.d.ts +2 -2
- package/dist/constants2.d.ts +3 -3
- package/dist/constants3.d.ts +2 -2
- package/dist/constants4.d.ts +5 -5
- package/dist/constants5.d.ts +2 -2
- package/dist/data.d.ts +2 -2
- package/dist/index.cjs +1 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +16 -16
- package/dist/index.d.ts +154 -108
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/index.vue.d.ts +1 -1
- package/dist/index10.vue.d.ts +3 -3
- package/dist/index11.vue.d.ts +3 -3
- package/dist/index12.vue.d.ts +2 -2
- package/dist/index13.vue.d.ts +3 -3
- package/dist/index14.vue.d.ts +3 -3
- package/dist/index15.vue.d.ts +7 -7
- package/dist/index17.vue.d.ts +1 -1
- package/dist/index18.vue.d.ts +2 -2
- package/dist/index19.vue.d.ts +2 -2
- package/dist/index2.d.ts +120 -0
- package/dist/index2.vue.d.ts +2 -2
- package/dist/index21.vue.d.ts +3 -3
- package/dist/index22.vue.d.ts +1 -1
- package/dist/index23.vue.d.ts +1 -1
- package/dist/index24.vue.d.ts +1 -1
- package/dist/index26.vue.d.ts +3 -3
- package/dist/index27.vue.d.ts +3 -3
- package/dist/index28.vue.d.ts +3 -3
- package/dist/index3.vue.d.ts +2 -2
- package/dist/index4.vue.d.ts +5 -5
- package/dist/index5.vue.d.ts +1 -1
- package/dist/index6.vue.d.ts +2 -2
- package/dist/index8.vue.d.ts +1 -1
- package/dist/style.css +17 -17
- package/dist/{menuAdapter.d.ts → types.d.ts} +2 -61
- package/dist/useCalendarEvents.d.ts +1 -1
- package/dist/useCropperCore.d.ts +7 -7
- package/dist/useDraggableLayout.d.ts +6 -6
- package/dist/useDynamicFormState.d.ts +2 -2
- package/dist/useEdgeInteraction.d.ts +2 -2
- package/dist/useFullscreen.d.ts +2 -2
- package/dist/useInfiniteScroll.d.ts +3 -3
- package/dist/useModalEdit.d.ts +2 -2
- package/dist/useQRCode.d.ts +5 -5
- package/dist/useSearchState.d.ts +2 -2
- package/dist/useSignatureHistory.d.ts +4 -4
- package/dist/useSplitResize.d.ts +2 -2
- package/dist/useTimeSelection.d.ts +2 -2
- package/dist/useTreeOperations.d.ts +7 -7
- package/dist/useWorkflowValidation.d.ts +3 -3
- package/package.json +3 -2
- package/dist/_shared.cjs +0 -1
- package/dist/_shared.d.cts +0 -2
- package/dist/_shared.d.ts +0 -2
- package/dist/_shared.js +0 -1
- package/dist/menuAdapter.js +0 -2
- package/dist/menuAdapter.js.map +0 -1
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { VNode } from "vue";
|
|
2
|
-
import { MenuOption } from "naive-ui/es";
|
|
3
2
|
|
|
4
3
|
//#region src/components/_shared/types.d.ts
|
|
5
4
|
/**
|
|
@@ -105,63 +104,5 @@ interface BreadcrumbItem {
|
|
|
105
104
|
children?: BreadcrumbItem[];
|
|
106
105
|
}
|
|
107
106
|
//#endregion
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
* 菜单适配器配置
|
|
111
|
-
*/
|
|
112
|
-
interface MenuAdapterConfig {
|
|
113
|
-
/**
|
|
114
|
-
* 标签文本格式化函数(用于 i18n)
|
|
115
|
-
* 默认:原样返回 title
|
|
116
|
-
*/
|
|
117
|
-
labelFormatter?: (title: string) => string;
|
|
118
|
-
/**
|
|
119
|
-
* 获取菜单项的唯一 key
|
|
120
|
-
* 默认:`normalizePath(route.path)`
|
|
121
|
-
*/
|
|
122
|
-
getKey?: (route: RouteItem) => string;
|
|
123
|
-
/**
|
|
124
|
-
* 获取显示文本
|
|
125
|
-
* 默认:`route.meta?.title || route.name || ''`
|
|
126
|
-
*/
|
|
127
|
-
getLabel?: (route: RouteItem) => string;
|
|
128
|
-
/**
|
|
129
|
-
* 路由过滤器 — return false 排除该项
|
|
130
|
-
* 默认:排除 `meta.hidden === true`
|
|
131
|
-
*/
|
|
132
|
-
filter?: (route: RouteItem) => boolean;
|
|
133
|
-
/**
|
|
134
|
-
* 自定义图标渲染
|
|
135
|
-
* 默认:字符串 → Iconify Icon;函数 → 直接调用
|
|
136
|
-
*/
|
|
137
|
-
renderIcon?: (icon: string | (() => VNode) | undefined) => (() => VNode) | undefined;
|
|
138
|
-
/**
|
|
139
|
-
* 是否递归处理 children
|
|
140
|
-
* 默认:true
|
|
141
|
-
*/
|
|
142
|
-
recursive?: boolean;
|
|
143
|
-
}
|
|
144
|
-
/**
|
|
145
|
-
* 将路由数据转换为 NMenu 的 MenuOption[]
|
|
146
|
-
*
|
|
147
|
-
* 支持的输入格式:
|
|
148
|
-
* 1. **Vue Router RouteRecordRaw** — 直接传 `router.getRoutes()` 或手写路由表
|
|
149
|
-
* 2. **后端 JSON 路由表** — `{ path, meta: { title, icon }, children }`
|
|
150
|
-
* 3. **自定义格式** — 通过 config 完全自定义 key/label/icon 的取值逻辑
|
|
151
|
-
*
|
|
152
|
-
* @param routes 路由数据数组
|
|
153
|
-
* @param config 适配器配置
|
|
154
|
-
* @returns NMenu 可直接使用的 MenuOption[]
|
|
155
|
-
*/
|
|
156
|
-
declare function createMenuOptions(routes: RouteItem[], config?: MenuAdapterConfig): MenuOption[];
|
|
157
|
-
/**
|
|
158
|
-
* 将路由树扁平化为一维数组(常用于搜索、快捷导航)
|
|
159
|
-
*
|
|
160
|
-
* @param routes 路由数据数组
|
|
161
|
-
* @param filter 过滤器(默认排除 hidden)
|
|
162
|
-
* @returns 扁平化后的路由数组
|
|
163
|
-
*/
|
|
164
|
-
declare function flattenRoutes(routes: RouteItem[], filter?: (route: RouteItem) => boolean): RouteItem[];
|
|
165
|
-
//#endregion
|
|
166
|
-
export { RouteItem as a, BreadcrumbItem as i, createMenuOptions as n, RouteMeta as o, flattenRoutes as r, TagItem as s, MenuAdapterConfig as t };
|
|
167
|
-
//# sourceMappingURL=menuAdapter.d.ts.map
|
|
107
|
+
export { TagItem as i, RouteItem as n, RouteMeta as r, BreadcrumbItem as t };
|
|
108
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -66,8 +66,8 @@ declare const __VLS_export: vue.DefineComponent<CalendarProps, CalendarExpose, {
|
|
|
66
66
|
}) => any) | undefined;
|
|
67
67
|
"onEvent-dropped"?: ((event: Partial<CalendarEvent>) => any) | undefined;
|
|
68
68
|
}>, {
|
|
69
|
-
initialView: CalendarViewType;
|
|
70
69
|
editable: boolean;
|
|
70
|
+
initialView: CalendarViewType;
|
|
71
71
|
events: CalendarEvent[];
|
|
72
72
|
showAddDialog: boolean;
|
|
73
73
|
showEditDialog: boolean;
|
package/dist/useCropperCore.d.ts
CHANGED
|
@@ -51,24 +51,24 @@ interface ImageCropperEmits {
|
|
|
51
51
|
//#endregion
|
|
52
52
|
//#region src/components/C_ImageCropper/index.vue.d.ts
|
|
53
53
|
declare const __VLS_export: vue.DefineComponent<ImageCropperProps, ImageCropperExpose, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
|
|
54
|
+
cancel: () => any;
|
|
54
55
|
error: (error: Event) => any;
|
|
55
56
|
ready: () => any;
|
|
56
|
-
cancel: () => any;
|
|
57
|
-
confirm: (result: any) => any;
|
|
58
57
|
crop: (result: any) => any;
|
|
58
|
+
confirm: (result: any) => any;
|
|
59
59
|
}, string, vue.PublicProps, Readonly<ImageCropperProps> & Readonly<{
|
|
60
|
+
onCancel?: (() => any) | undefined;
|
|
60
61
|
onError?: ((error: Event) => any) | undefined;
|
|
61
62
|
onReady?: (() => any) | undefined;
|
|
62
|
-
onCancel?: (() => any) | undefined;
|
|
63
|
-
onConfirm?: ((result: any) => any) | undefined;
|
|
64
63
|
onCrop?: ((result: any) => any) | undefined;
|
|
64
|
+
onConfirm?: ((result: any) => any) | undefined;
|
|
65
65
|
}>, {
|
|
66
|
-
height: string | number;
|
|
67
66
|
disabled: boolean;
|
|
68
|
-
aspectRatio: number;
|
|
69
|
-
showToolbar: boolean;
|
|
70
67
|
showPreview: boolean;
|
|
68
|
+
height: string | number;
|
|
69
|
+
showToolbar: boolean;
|
|
71
70
|
src: string;
|
|
71
|
+
aspectRatio: number;
|
|
72
72
|
outputFormat: CropOutputFormat;
|
|
73
73
|
outputQuality: number;
|
|
74
74
|
maxOutputWidth: number;
|
|
@@ -117,12 +117,15 @@ declare const __VLS_base: vue.DefineComponent<DraggableProps, {
|
|
|
117
117
|
"onList-change"?: ((list: DraggableItem[]) => any) | undefined;
|
|
118
118
|
}>, {
|
|
119
119
|
sort: boolean;
|
|
120
|
-
|
|
120
|
+
animation: number;
|
|
121
121
|
modelValue: DraggableItem[];
|
|
122
122
|
disabled: boolean;
|
|
123
|
-
|
|
124
|
-
|
|
123
|
+
direction: "vertical" | "horizontal";
|
|
124
|
+
layout: LayoutMode;
|
|
125
125
|
itemClass: string;
|
|
126
|
+
delay: number;
|
|
127
|
+
gap: string | number;
|
|
128
|
+
emptyText: string;
|
|
126
129
|
group: string | GroupOptions;
|
|
127
130
|
handle: string;
|
|
128
131
|
showHandle: boolean;
|
|
@@ -132,13 +135,10 @@ declare const __VLS_base: vue.DefineComponent<DraggableProps, {
|
|
|
132
135
|
wrapperClass: string;
|
|
133
136
|
listClass: string;
|
|
134
137
|
showEmptyState: boolean;
|
|
135
|
-
emptyText: string;
|
|
136
138
|
swapThreshold: number;
|
|
137
139
|
invertSwap: boolean;
|
|
138
|
-
layout: LayoutMode;
|
|
139
140
|
gridColumns: number;
|
|
140
141
|
gridRows: number;
|
|
141
|
-
gap: string | number;
|
|
142
142
|
flexWrap: boolean;
|
|
143
143
|
justifyContent: JustifyContent;
|
|
144
144
|
alignItems: AlignItems;
|
|
@@ -491,13 +491,13 @@ declare const __VLS_base: vue.DefineComponent<CFormProps, {
|
|
|
491
491
|
}, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
|
|
492
492
|
"update:modelValue": (model: Record<string, any>) => any;
|
|
493
493
|
submit: (payload: SubmitEventPayload) => any;
|
|
494
|
-
"validate-error": (errors: unknown) => any;
|
|
495
494
|
"validate-success": (model: Record<string, any>) => any;
|
|
495
|
+
"validate-error": (errors: unknown) => any;
|
|
496
496
|
}, string, vue.PublicProps, Readonly<CFormProps> & Readonly<{
|
|
497
497
|
"onUpdate:modelValue"?: ((model: Record<string, any>) => any) | undefined;
|
|
498
498
|
onSubmit?: ((payload: SubmitEventPayload) => any) | undefined;
|
|
499
|
-
"onValidate-error"?: ((errors: unknown) => any) | undefined;
|
|
500
499
|
"onValidate-success"?: ((model: Record<string, any>) => any) | undefined;
|
|
500
|
+
"onValidate-error"?: ((errors: unknown) => any) | undefined;
|
|
501
501
|
}>, {
|
|
502
502
|
config: FormConfig;
|
|
503
503
|
}, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
|
|
@@ -259,11 +259,11 @@ declare const __VLS_export: vue.DefineComponent<Props, {
|
|
|
259
259
|
onReady?: ((graph: any) => any) | undefined;
|
|
260
260
|
"onData-change"?: ((data: DiagramData) => any) | undefined;
|
|
261
261
|
}>, {
|
|
262
|
-
height: string | number;
|
|
263
|
-
theme: "light" | "dark";
|
|
264
262
|
width: string | number;
|
|
263
|
+
height: string | number;
|
|
265
264
|
readonly: boolean;
|
|
266
265
|
showToolbar: boolean;
|
|
266
|
+
theme: "light" | "dark";
|
|
267
267
|
}, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
|
|
268
268
|
declare const _default: typeof __VLS_export;
|
|
269
269
|
//#endregion
|
package/dist/useFullscreen.d.ts
CHANGED
|
@@ -9,11 +9,11 @@ type __VLS_Props = {
|
|
|
9
9
|
autoPreview?: boolean;
|
|
10
10
|
};
|
|
11
11
|
declare const __VLS_export: vue.DefineComponent<__VLS_Props, {}, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
|
|
12
|
-
download: (file: string | File) => any;
|
|
13
12
|
preview: (file: string | File) => any;
|
|
13
|
+
download: (file: string | File) => any;
|
|
14
14
|
}, string, vue.PublicProps, Readonly<__VLS_Props> & Readonly<{
|
|
15
|
-
onDownload?: ((file: string | File) => any) | undefined;
|
|
16
15
|
onPreview?: ((file: string | File) => any) | undefined;
|
|
16
|
+
onDownload?: ((file: string | File) => any) | undefined;
|
|
17
17
|
}>, {
|
|
18
18
|
fileName: string;
|
|
19
19
|
autoPreview: boolean;
|
|
@@ -79,18 +79,18 @@ type __VLS_Slots = {} & {
|
|
|
79
79
|
footer?: (props: typeof __VLS_5) => any;
|
|
80
80
|
};
|
|
81
81
|
declare const __VLS_base: vue.DefineComponent<WaterFallProps, WaterFallExpose, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
|
|
82
|
-
"load-more": () => any;
|
|
83
82
|
"item-click": (item: WaterFallItem, index: number) => any;
|
|
83
|
+
"load-more": () => any;
|
|
84
84
|
"image-loaded": (item: WaterFallItem) => any;
|
|
85
85
|
"image-error": (item: WaterFallItem) => any;
|
|
86
86
|
}, string, vue.PublicProps, Readonly<WaterFallProps> & Readonly<{
|
|
87
|
-
"onLoad-more"?: (() => any) | undefined;
|
|
88
87
|
"onItem-click"?: ((item: WaterFallItem, index: number) => any) | undefined;
|
|
88
|
+
"onLoad-more"?: (() => any) | undefined;
|
|
89
89
|
"onImage-loaded"?: ((item: WaterFallItem) => any) | undefined;
|
|
90
90
|
"onImage-error"?: ((item: WaterFallItem) => any) | undefined;
|
|
91
91
|
}>, {
|
|
92
|
-
loading: boolean;
|
|
93
92
|
columns: number;
|
|
93
|
+
loading: boolean;
|
|
94
94
|
gap: number;
|
|
95
95
|
lazy: boolean;
|
|
96
96
|
infinite: boolean;
|
package/dist/useModalEdit.d.ts
CHANGED
|
@@ -885,6 +885,7 @@ declare const __VLS_base: vue.DefineComponent<__VLS_Props, {
|
|
|
885
885
|
} | undefined;
|
|
886
886
|
}, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
|
|
887
887
|
save: (rowData: DataRecord, rowIndex: number, columnKey?: string | undefined) => any;
|
|
888
|
+
cancel: (rowData: DataRecord, rowIndex: number) => any;
|
|
888
889
|
"pagination-change": (...args: unknown[]) => any;
|
|
889
890
|
"row-delete": (...args: unknown[]) => any;
|
|
890
891
|
"expand-change": (expandedKeys: DataTableRowKey$1[], row?: DataRecord | undefined, expanded?: boolean | undefined) => any;
|
|
@@ -892,7 +893,6 @@ declare const __VLS_base: vue.DefineComponent<__VLS_Props, {
|
|
|
892
893
|
"child-selection-change": (parentKey: DataTableRowKey$1, childKeys: DataTableRowKey$1[], childRows: any[]) => any;
|
|
893
894
|
"parent-child-link-change": (parentKey: DataTableRowKey$1, shouldSelect: boolean) => any;
|
|
894
895
|
"update:data": (data: DataRecord[]) => any;
|
|
895
|
-
cancel: (rowData: DataRecord, rowIndex: number) => any;
|
|
896
896
|
"row-add": (newRow: DataRecord) => any;
|
|
897
897
|
"row-copy": (originalRow: DataRecord, newRow: DataRecord) => any;
|
|
898
898
|
"row-move": (row: DataRecord, fromIndex: number, toIndex: number) => any;
|
|
@@ -901,6 +901,7 @@ declare const __VLS_base: vue.DefineComponent<__VLS_Props, {
|
|
|
901
901
|
"column-change": (columns: TableColumn[]) => any;
|
|
902
902
|
}, string, vue.PublicProps, Readonly<__VLS_Props> & Readonly<{
|
|
903
903
|
onSave?: ((rowData: DataRecord, rowIndex: number, columnKey?: string | undefined) => any) | undefined;
|
|
904
|
+
onCancel?: ((rowData: DataRecord, rowIndex: number) => any) | undefined;
|
|
904
905
|
"onPagination-change"?: ((...args: unknown[]) => any) | undefined;
|
|
905
906
|
"onRow-delete"?: ((...args: unknown[]) => any) | undefined;
|
|
906
907
|
"onExpand-change"?: ((expandedKeys: DataTableRowKey$1[], row?: DataRecord | undefined, expanded?: boolean | undefined) => any) | undefined;
|
|
@@ -908,7 +909,6 @@ declare const __VLS_base: vue.DefineComponent<__VLS_Props, {
|
|
|
908
909
|
"onChild-selection-change"?: ((parentKey: DataTableRowKey$1, childKeys: DataTableRowKey$1[], childRows: any[]) => any) | undefined;
|
|
909
910
|
"onParent-child-link-change"?: ((parentKey: DataTableRowKey$1, shouldSelect: boolean) => any) | undefined;
|
|
910
911
|
"onUpdate:data"?: ((data: DataRecord[]) => any) | undefined;
|
|
911
|
-
onCancel?: ((rowData: DataRecord, rowIndex: number) => any) | undefined;
|
|
912
912
|
"onRow-add"?: ((newRow: DataRecord) => any) | undefined;
|
|
913
913
|
"onRow-copy"?: ((originalRow: DataRecord, newRow: DataRecord) => any) | undefined;
|
|
914
914
|
"onRow-move"?: ((row: DataRecord, fromIndex: number, toIndex: number) => any) | undefined;
|
package/dist/useQRCode.d.ts
CHANGED
|
@@ -50,16 +50,16 @@ declare const __VLS_export: vue.DefineComponent<Props, QRCodeExpose, {}, {}, {},
|
|
|
50
50
|
}, string, vue.PublicProps, Readonly<Props> & Readonly<{
|
|
51
51
|
onError?: ((error: Error) => any) | undefined;
|
|
52
52
|
}>, {
|
|
53
|
+
mode: RenderMode;
|
|
53
54
|
size: number;
|
|
54
55
|
color: string;
|
|
56
|
+
label: string;
|
|
57
|
+
showBorder: boolean;
|
|
58
|
+
margin: number;
|
|
59
|
+
showLabel: boolean;
|
|
55
60
|
bgColor: string;
|
|
56
61
|
errorCorrectionLevel: ErrorCorrectionLevel;
|
|
57
|
-
margin: number;
|
|
58
|
-
mode: RenderMode;
|
|
59
62
|
logo: LogoOptions;
|
|
60
|
-
showBorder: boolean;
|
|
61
|
-
label: string;
|
|
62
|
-
showLabel: boolean;
|
|
63
63
|
}, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
|
|
64
64
|
declare const _default: typeof __VLS_export;
|
|
65
65
|
//#endregion
|
package/dist/useSearchState.d.ts
CHANGED
|
@@ -55,12 +55,12 @@ declare const __VLS_export: vue.DefineComponent<Props, {
|
|
|
55
55
|
cleanFn: () => void;
|
|
56
56
|
changeFoldState: () => void;
|
|
57
57
|
}, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
|
|
58
|
-
search: (params: SearchFormParams) => any;
|
|
59
58
|
reset: () => any;
|
|
59
|
+
search: (params: SearchFormParams) => any;
|
|
60
60
|
"change-params": (params: SearchFormParams) => any;
|
|
61
61
|
}, string, vue.PublicProps, Readonly<Props> & Readonly<{
|
|
62
|
-
onSearch?: ((params: SearchFormParams) => any) | undefined;
|
|
63
62
|
onReset?: (() => any) | undefined;
|
|
63
|
+
onSearch?: ((params: SearchFormParams) => any) | undefined;
|
|
64
64
|
"onChange-params"?: ((params: SearchFormParams) => any) | undefined;
|
|
65
65
|
}>, {
|
|
66
66
|
size: "small" | "medium" | "large";
|
|
@@ -91,25 +91,25 @@ interface SignatureEmits {
|
|
|
91
91
|
//#endregion
|
|
92
92
|
//#region src/components/C_Signature/index.vue.d.ts
|
|
93
93
|
declare const __VLS_export: vue.DefineComponent<SignatureProps, SignatureExpose, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
|
|
94
|
-
change: (data: SignatureStroke[]) => any;
|
|
95
94
|
clear: () => any;
|
|
95
|
+
change: (data: SignatureStroke[]) => any;
|
|
96
96
|
"start-draw": () => any;
|
|
97
97
|
drawing: (point: SignaturePoint) => any;
|
|
98
98
|
"end-draw": (stroke: SignatureStroke) => any;
|
|
99
99
|
undo: () => any;
|
|
100
100
|
redo: () => any;
|
|
101
101
|
}, string, vue.PublicProps, Readonly<SignatureProps> & Readonly<{
|
|
102
|
-
onChange?: ((data: SignatureStroke[]) => any) | undefined;
|
|
103
102
|
onClear?: (() => any) | undefined;
|
|
103
|
+
onChange?: ((data: SignatureStroke[]) => any) | undefined;
|
|
104
104
|
"onStart-draw"?: (() => any) | undefined;
|
|
105
105
|
onDrawing?: ((point: SignaturePoint) => any) | undefined;
|
|
106
106
|
"onEnd-draw"?: ((stroke: SignatureStroke) => any) | undefined;
|
|
107
107
|
onUndo?: (() => any) | undefined;
|
|
108
108
|
onRedo?: (() => any) | undefined;
|
|
109
109
|
}>, {
|
|
110
|
-
height: number | string;
|
|
111
|
-
disabled: boolean;
|
|
112
110
|
width: number | string;
|
|
111
|
+
disabled: boolean;
|
|
112
|
+
height: number | string;
|
|
113
113
|
readonly: boolean;
|
|
114
114
|
showToolbar: boolean;
|
|
115
115
|
maxHistory: number;
|
package/dist/useSplitResize.d.ts
CHANGED
|
@@ -78,15 +78,15 @@ declare const __VLS_base: vue.DefineComponent<Props, SplitPaneExpose, {}, {}, {}
|
|
|
78
78
|
"onDrag-start"?: ((size: number) => any) | undefined;
|
|
79
79
|
"onDrag-end"?: ((size: number) => any) | undefined;
|
|
80
80
|
}>, {
|
|
81
|
-
direction: SplitDirection;
|
|
82
81
|
disabled: boolean;
|
|
82
|
+
step: number;
|
|
83
|
+
direction: SplitDirection;
|
|
83
84
|
defaultSize: number;
|
|
84
85
|
minSize: number;
|
|
85
86
|
maxSize: number;
|
|
86
87
|
collapsible: boolean;
|
|
87
88
|
showCollapseButton: boolean;
|
|
88
89
|
gutterSize: number;
|
|
89
|
-
step: number;
|
|
90
90
|
}, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
|
|
91
91
|
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
92
92
|
declare const _default: typeof __VLS_export;
|
|
@@ -49,10 +49,10 @@ declare const __VLS_export: vue.DefineComponent<TimeProps, TimeExpose, {}, {}, {
|
|
|
49
49
|
"onChange-end"?: ((time: number | null) => any) | undefined;
|
|
50
50
|
}>, {
|
|
51
51
|
mode: TimeMode;
|
|
52
|
-
placeholder: string;
|
|
53
|
-
format: string;
|
|
54
52
|
startPlaceholder: string;
|
|
55
53
|
endPlaceholder: string;
|
|
54
|
+
placeholder: string;
|
|
55
|
+
format: string;
|
|
56
56
|
useHours: boolean;
|
|
57
57
|
useMinutes: boolean;
|
|
58
58
|
useSeconds: boolean;
|
|
@@ -90,29 +90,28 @@ type __VLS_Slots = {} & {
|
|
|
90
90
|
'toolbar-actions'?: (props: typeof __VLS_13) => any;
|
|
91
91
|
};
|
|
92
92
|
declare const __VLS_base: vue.DefineComponent<TreeProps, TreeExpose, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
|
|
93
|
-
refresh: () => any;
|
|
94
93
|
add: (parentNode?: TreeNodeData | undefined) => any;
|
|
94
|
+
refresh: () => any;
|
|
95
95
|
"node-select": (node: TreeNodeData | null, selectedKeys: (string | number)[]) => any;
|
|
96
96
|
"node-action": (action: string, node: TreeNodeData) => any;
|
|
97
97
|
"node-drop": (info: DropInfo) => any;
|
|
98
98
|
}, string, vue.PublicProps, Readonly<TreeProps> & Readonly<{
|
|
99
|
-
onRefresh?: (() => any) | undefined;
|
|
100
99
|
onAdd?: ((parentNode?: TreeNodeData | undefined) => any) | undefined;
|
|
100
|
+
onRefresh?: (() => any) | undefined;
|
|
101
101
|
"onNode-select"?: ((node: TreeNodeData | null, selectedKeys: (string | number)[]) => any) | undefined;
|
|
102
102
|
"onNode-action"?: ((action: string, node: TreeNodeData) => any) | undefined;
|
|
103
103
|
"onNode-drop"?: ((info: DropInfo) => any) | undefined;
|
|
104
104
|
}>, {
|
|
105
105
|
mode: TreeMode;
|
|
106
|
-
|
|
106
|
+
showToolbar: boolean;
|
|
107
107
|
labelField: string;
|
|
108
|
-
keyField: string;
|
|
109
108
|
childrenField: string;
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
defaultExpandAll: boolean;
|
|
109
|
+
actions: ActionConfig[];
|
|
110
|
+
keyField: string;
|
|
113
111
|
searchPattern: string;
|
|
114
112
|
searchable: boolean;
|
|
115
113
|
searchPlaceholder: string;
|
|
114
|
+
draggable: boolean;
|
|
116
115
|
showLine: boolean;
|
|
117
116
|
addable: boolean;
|
|
118
117
|
addText: string;
|
|
@@ -120,6 +119,7 @@ declare const __VLS_base: vue.DefineComponent<TreeProps, TreeExpose, {}, {}, {},
|
|
|
120
119
|
iconField: string;
|
|
121
120
|
iconConfig: IconConfig;
|
|
122
121
|
statusConfigs: StatusConfig[];
|
|
122
|
+
defaultExpandAll: boolean;
|
|
123
123
|
defaultExpandedKeys: (string | number)[];
|
|
124
124
|
defaultSelectedKeys: (string | number)[];
|
|
125
125
|
}, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
|
|
@@ -240,19 +240,19 @@ declare const __VLS_export: vue.DefineComponent<WorkflowProps, {
|
|
|
240
240
|
"update:modelValue": (value: WorkflowData) => any;
|
|
241
241
|
change: (value: WorkflowData) => any;
|
|
242
242
|
save: (data: WorkflowData) => any;
|
|
243
|
+
"validate-error": (errors: ValidationError[]) => any;
|
|
243
244
|
"node-click": (node: WorkflowNode) => any;
|
|
244
245
|
"edge-click": (edge: WorkflowEdge) => any;
|
|
245
|
-
"validate-error": (errors: ValidationError[]) => any;
|
|
246
246
|
}, string, vue.PublicProps, Readonly<WorkflowProps> & Readonly<{
|
|
247
247
|
"onUpdate:modelValue"?: ((value: WorkflowData) => any) | undefined;
|
|
248
248
|
onChange?: ((value: WorkflowData) => any) | undefined;
|
|
249
249
|
onSave?: ((data: WorkflowData) => any) | undefined;
|
|
250
|
+
"onValidate-error"?: ((errors: ValidationError[]) => any) | undefined;
|
|
250
251
|
"onNode-click"?: ((node: WorkflowNode) => any) | undefined;
|
|
251
252
|
"onEdge-click"?: ((edge: WorkflowEdge) => any) | undefined;
|
|
252
|
-
"onValidate-error"?: ((errors: ValidationError[]) => any) | undefined;
|
|
253
253
|
}>, {
|
|
254
|
-
theme: "light" | "dark";
|
|
255
254
|
readonly: boolean;
|
|
255
|
+
theme: "light" | "dark";
|
|
256
256
|
users: User[];
|
|
257
257
|
roles: Role[];
|
|
258
258
|
departments: Department[];
|
package/package.json
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"publishConfig": {
|
|
4
4
|
"access": "public"
|
|
5
5
|
},
|
|
6
|
-
"version": "0.10.
|
|
6
|
+
"version": "0.10.2",
|
|
7
7
|
"description": "基于 Naive UI 的 Vue 3 组件库",
|
|
8
8
|
"type": "module",
|
|
9
9
|
"main": "dist/index.cjs",
|
|
@@ -79,6 +79,7 @@
|
|
|
79
79
|
"format": "prettier --write src/"
|
|
80
80
|
},
|
|
81
81
|
"peerDependencies": {
|
|
82
|
+
"@robot-admin/form-validate": ">=2.0.0 <4.0.0",
|
|
82
83
|
"vue": "^3.5.0",
|
|
83
84
|
"naive-ui": "^2.35.0",
|
|
84
85
|
"vue-router": "^4.0.0"
|
|
@@ -96,7 +97,6 @@
|
|
|
96
97
|
"@fullcalendar/vue3": "^6.1.0",
|
|
97
98
|
"@iconify/vue": "^5.0.0",
|
|
98
99
|
"@kangc/v-md-editor": "^2.3.0",
|
|
99
|
-
"@robot-admin/form-validate": "latest",
|
|
100
100
|
"@tato30/vue-pdf": "^1.11.0",
|
|
101
101
|
"@visactor/vtable": "^1.0.0",
|
|
102
102
|
"@visactor/vtable-gantt": "^1.0.0",
|
|
@@ -125,6 +125,7 @@
|
|
|
125
125
|
"@commitlint/cli": "^20.4.2",
|
|
126
126
|
"@commitlint/config-conventional": "^20.4.2",
|
|
127
127
|
"@robot-admin/git-standards": "1.0.3",
|
|
128
|
+
"@robot-admin/form-validate": "2.0.0",
|
|
128
129
|
"@types/node": "^24.2.1",
|
|
129
130
|
"@types/sortablejs": "^1.15.9",
|
|
130
131
|
"@typescript-eslint/eslint-plugin": "^8.56.1",
|
package/dist/_shared.cjs
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require(`./menuAdapter.js`);exports.createMenuOptions=e.t,exports.flattenRoutes=e.n;
|
package/dist/_shared.d.cts
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import { a as RouteItem, i as BreadcrumbItem, n as createMenuOptions, o as RouteMeta, r as flattenRoutes, s as TagItem, t as MenuAdapterConfig } from "./menuAdapter.js";
|
|
2
|
-
export { type BreadcrumbItem, type MenuAdapterConfig, type RouteItem, type RouteMeta, type TagItem, createMenuOptions, flattenRoutes };
|
package/dist/_shared.d.ts
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import { a as RouteItem, i as BreadcrumbItem, n as createMenuOptions, o as RouteMeta, r as flattenRoutes, s as TagItem, t as MenuAdapterConfig } from "./menuAdapter.js";
|
|
2
|
-
export { type BreadcrumbItem, type MenuAdapterConfig, type RouteItem, type RouteMeta, type TagItem, createMenuOptions, flattenRoutes };
|
package/dist/_shared.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{n as e,t}from"./menuAdapter.js";export{t as createMenuOptions,e as flattenRoutes};
|
package/dist/menuAdapter.js
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{h as e}from"vue";import{Icon as t}from"@iconify/vue";const n=e=>e.startsWith(`/`)?e:`/${e}`,r=e=>e.path?n(e.path):``,i=e=>e.meta?.title||e.name||``,a=e=>!e.meta?.hidden,o=n=>{if(n){if(typeof n==`string`)return()=>e(`span`,{class:`n-icon`,style:`display: inline-flex; align-items: center;`},[e(t,{icon:n})]);if(typeof n==`function`)return n}};function s(e,t={}){let{labelFormatter:n=e=>e,getKey:s=r,getLabel:c=i,filter:l=a,renderIcon:u=o,recursive:d=!0}=t,f=e=>e.filter(l).map(e=>{let t=e.meta?.icon||e.icon,r=d&&e.children?.length?f(e.children):void 0;return{key:s(e),label:n(c(e)),disabled:e.disabled||!1,icon:u(t),...e.type&&{type:e.type},...r?.length&&{children:r}}});return f(e)}function c(e,t=a){let n=[],r=e=>{for(let i of e)t(i)&&n.push(i),i.children?.length&&r(i.children)};return r(e),n}export{c as n,s as t};
|
|
2
|
-
//# sourceMappingURL=menuAdapter.js.map
|
package/dist/menuAdapter.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"menuAdapter.js","names":[],"sources":["../src/components/_shared/menuAdapter.ts"],"sourcesContent":["/**\n * 菜单适配器 — 将路由数据转换为 NMenu 的 MenuOption[]\n *\n * 设计理念:\n * - 开箱即用:`createMenuOptions(routes)` 零配置即可生成菜单\n * - 完全可控:通过 `MenuAdapterConfig` 定制每一步转换逻辑\n * - i18n 解耦:`labelFormatter` 回调注入翻译函数,不绑定任何 i18n 方案\n *\n * @example 基础用法\n * ```ts\n * import { createMenuOptions } from '@robot-admin/naive-ui-components'\n *\n * const menuOptions = createMenuOptions(routes)\n * ```\n *\n * @example 带 i18n + 过滤\n * ```ts\n * const menuOptions = createMenuOptions(routes, {\n * labelFormatter: t, // vue-i18n 的 t 函数\n * filter: route => !route.meta?.hidden,\n * })\n * ```\n *\n * @example 自定义 key 取值\n * ```ts\n * const menuOptions = createMenuOptions(routes, {\n * getKey: route => route.name || route.path,\n * })\n * ```\n */\n\nimport { h, type VNode } from 'vue'\nimport { Icon } from '@iconify/vue'\nimport type { MenuOption } from 'naive-ui/es'\nimport type { RouteItem } from './types'\n\n/**\n * 菜单适配器配置\n */\nexport interface MenuAdapterConfig {\n /**\n * 标签文本格式化函数(用于 i18n)\n * 默认:原样返回 title\n */\n labelFormatter?: (title: string) => string\n\n /**\n * 获取菜单项的唯一 key\n * 默认:`normalizePath(route.path)`\n */\n getKey?: (route: RouteItem) => string\n\n /**\n * 获取显示文本\n * 默认:`route.meta?.title || route.name || ''`\n */\n getLabel?: (route: RouteItem) => string\n\n /**\n * 路由过滤器 — return false 排除该项\n * 默认:排除 `meta.hidden === true`\n */\n filter?: (route: RouteItem) => boolean\n\n /**\n * 自定义图标渲染\n * 默认:字符串 → Iconify Icon;函数 → 直接调用\n */\n renderIcon?: (\n icon: string | (() => VNode) | undefined\n ) => (() => VNode) | undefined\n\n /**\n * 是否递归处理 children\n * 默认:true\n */\n recursive?: boolean\n}\n\n// ====== 内置默认值 ======\n\nconst normalizePath = (path: string): string =>\n path.startsWith('/') ? path : `/${path}`\n\nconst defaultGetKey = (route: RouteItem): string =>\n route.path ? normalizePath(route.path) : ''\n\nconst defaultGetLabel = (route: RouteItem): string =>\n route.meta?.title || route.name || ''\n\nconst defaultFilter = (route: RouteItem): boolean => !route.meta?.hidden\n\nconst defaultRenderIcon = (\n icon: string | (() => VNode) | undefined\n): (() => VNode) | undefined => {\n if (!icon) return undefined\n if (typeof icon === 'string') {\n return () =>\n h(\n 'span',\n {\n class: 'n-icon',\n style: 'display: inline-flex; align-items: center;',\n },\n [h(Icon, { icon })]\n )\n }\n if (typeof icon === 'function') return icon\n return undefined\n}\n\n/**\n * 将路由数据转换为 NMenu 的 MenuOption[]\n *\n * 支持的输入格式:\n * 1. **Vue Router RouteRecordRaw** — 直接传 `router.getRoutes()` 或手写路由表\n * 2. **后端 JSON 路由表** — `{ path, meta: { title, icon }, children }`\n * 3. **自定义格式** — 通过 config 完全自定义 key/label/icon 的取值逻辑\n *\n * @param routes 路由数据数组\n * @param config 适配器配置\n * @returns NMenu 可直接使用的 MenuOption[]\n */\nexport function createMenuOptions(\n routes: RouteItem[],\n config: MenuAdapterConfig = {}\n): MenuOption[] {\n const {\n labelFormatter = (s: string) => s,\n getKey = defaultGetKey,\n getLabel = defaultGetLabel,\n filter = defaultFilter,\n renderIcon = defaultRenderIcon,\n recursive = true,\n } = config\n\n const convert = (items: RouteItem[]): MenuOption[] => {\n return items.filter(filter).map(item => {\n const icon = item.meta?.icon || (item as any).icon\n const children =\n recursive && item.children?.length ? convert(item.children) : undefined\n\n return {\n key: getKey(item),\n label: labelFormatter(getLabel(item)),\n disabled: item.disabled || false,\n icon: renderIcon(icon),\n ...(item.type && { type: item.type }),\n ...(children?.length && { children }),\n }\n }) as MenuOption[]\n }\n\n return convert(routes)\n}\n\n/**\n * 将路由树扁平化为一维数组(常用于搜索、快捷导航)\n *\n * @param routes 路由数据数组\n * @param filter 过滤器(默认排除 hidden)\n * @returns 扁平化后的路由数组\n */\nexport function flattenRoutes(\n routes: RouteItem[],\n filter: (route: RouteItem) => boolean = defaultFilter\n): RouteItem[] {\n const result: RouteItem[] = []\n const walk = (items: RouteItem[]) => {\n for (const item of items) {\n if (filter(item)) {\n result.push(item)\n }\n if (item.children?.length) {\n walk(item.children)\n }\n }\n }\n walk(routes)\n return result\n}\n"],"mappings":"4DAiFA,MAAM,EAAiB,GACrB,EAAK,WAAW,IAAI,CAAG,EAAO,IAAI,IAE9B,EAAiB,GACrB,EAAM,KAAO,EAAc,EAAM,KAAK,CAAG,GAErC,EAAmB,GACvB,EAAM,MAAM,OAAS,EAAM,MAAQ,GAE/B,EAAiB,GAA8B,CAAC,EAAM,MAAM,OAE5D,EACJ,GAC8B,CACzB,KACL,IAAI,OAAO,GAAS,SAClB,UACE,EACE,OACA,CACE,MAAO,SACP,MAAO,6CACR,CACD,CAAC,EAAE,EAAM,CAAE,OAAM,CAAC,CAAC,CACpB,CAEL,GAAI,OAAO,GAAS,WAAY,OAAO,IAgBzC,SAAgB,EACd,EACA,EAA4B,EAAE,CAChB,CACd,GAAM,CACJ,iBAAkB,GAAc,EAChC,SAAS,EACT,WAAW,EACX,SAAS,EACT,aAAa,EACb,YAAY,IACV,EAEE,EAAW,GACR,EAAM,OAAO,EAAO,CAAC,IAAI,GAAQ,CACtC,IAAM,EAAO,EAAK,MAAM,MAAS,EAAa,KACxC,EACJ,GAAa,EAAK,UAAU,OAAS,EAAQ,EAAK,SAAS,CAAG,IAAA,GAEhE,MAAO,CACL,IAAK,EAAO,EAAK,CACjB,MAAO,EAAe,EAAS,EAAK,CAAC,CACrC,SAAU,EAAK,UAAY,GAC3B,KAAM,EAAW,EAAK,CACtB,GAAI,EAAK,MAAQ,CAAE,KAAM,EAAK,KAAM,CACpC,GAAI,GAAU,QAAU,CAAE,WAAU,CACrC,EACD,CAGJ,OAAO,EAAQ,EAAO,CAUxB,SAAgB,EACd,EACA,EAAwC,EAC3B,CACb,IAAM,EAAsB,EAAE,CACxB,EAAQ,GAAuB,CACnC,IAAK,IAAM,KAAQ,EACb,EAAO,EAAK,EACd,EAAO,KAAK,EAAK,CAEf,EAAK,UAAU,QACjB,EAAK,EAAK,SAAS,EAKzB,OADA,EAAK,EAAO,CACL"}
|