@robot-admin/naive-ui-components 0.11.8 → 0.13.0

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 (310) hide show
  1. package/CHANGELOG.md +26 -0
  2. package/README.md +172 -29
  3. package/README_EN.md +171 -28
  4. package/SECURITY.md +1 -0
  5. package/dist/C_ActionBar.cjs +1 -1
  6. package/dist/C_ActionBar.css +67 -67
  7. package/dist/C_ActionBar.d.cts +2 -2
  8. package/dist/C_ActionBar.d.ts +2 -2
  9. package/dist/C_ActionBar.js +1 -1
  10. package/dist/C_ActionBar2.cjs +1 -1
  11. package/dist/C_ActionBar2.js +1 -1
  12. package/dist/C_AntV.css +70 -70
  13. package/dist/C_AntV2.cjs +3 -3
  14. package/dist/C_AntV2.js +3 -3
  15. package/dist/C_AudioPlayer.css +81 -66
  16. package/dist/C_AudioPlayer.d.cts +1 -1
  17. package/dist/C_AudioPlayer.d.ts +1 -1
  18. package/dist/C_AudioPlayer2.cjs +1 -1
  19. package/dist/C_AudioPlayer2.js +1 -1
  20. package/dist/C_AvatarGroup.css +40 -25
  21. package/dist/C_AvatarGroup.d.cts +1 -1
  22. package/dist/C_AvatarGroup.d.ts +1 -1
  23. package/dist/C_AvatarGroup2.cjs +1 -1
  24. package/dist/C_AvatarGroup2.js +1 -1
  25. package/dist/C_Barcode.css +6 -6
  26. package/dist/C_Barcode.d.cts +1 -1
  27. package/dist/C_Barcode.d.ts +1 -1
  28. package/dist/C_Barcode2.cjs +1 -1
  29. package/dist/C_Barcode2.js +1 -1
  30. package/dist/C_Breadcrumb.css +14 -14
  31. package/dist/C_Breadcrumb.d.cts +1 -1
  32. package/dist/C_Breadcrumb.d.ts +1 -1
  33. package/dist/C_Breadcrumb2.cjs +1 -1
  34. package/dist/C_Breadcrumb2.js +1 -1
  35. package/dist/C_Captcha.cjs +1 -1
  36. package/dist/C_Captcha.css +193 -51
  37. package/dist/C_Captcha.d.cts +2 -3
  38. package/dist/C_Captcha.d.ts +2 -3
  39. package/dist/C_Captcha.js +1 -1
  40. package/dist/C_Captcha2.cjs +1 -1
  41. package/dist/C_Captcha2.js +1 -1
  42. package/dist/C_Cascade.css +2 -2
  43. package/dist/C_Cascade.d.cts +1 -1
  44. package/dist/C_Cascade.d.ts +1 -1
  45. package/dist/C_Cascade2.cjs +1 -1
  46. package/dist/C_Cascade2.js +1 -1
  47. package/dist/C_Chat.css +96 -78
  48. package/dist/C_Chat.d.cts +1 -1
  49. package/dist/C_Chat.d.ts +1 -1
  50. package/dist/C_Chat2.cjs +1 -1
  51. package/dist/C_Chat2.js +1 -1
  52. package/dist/C_City.css +52 -28
  53. package/dist/C_City.d.cts +1 -1
  54. package/dist/C_City.d.ts +1 -1
  55. package/dist/C_City2.cjs +1 -1
  56. package/dist/C_City2.js +1 -1
  57. package/dist/C_Code.css +48 -42
  58. package/dist/C_Code.d.cts +1 -1
  59. package/dist/C_Code.d.ts +1 -1
  60. package/dist/C_Code2.cjs +1 -1
  61. package/dist/C_Code2.js +1 -1
  62. package/dist/C_CollapsePanel.css +14 -14
  63. package/dist/C_CollapsePanel2.cjs +1 -1
  64. package/dist/C_CollapsePanel2.js +1 -1
  65. package/dist/C_ContextMenu.css +14 -14
  66. package/dist/C_ContextMenu.d.cts +1 -1
  67. package/dist/C_ContextMenu.d.ts +1 -1
  68. package/dist/C_ContextMenu2.cjs +1 -1
  69. package/dist/C_ContextMenu2.js +1 -1
  70. package/dist/C_Cron.css +94 -55
  71. package/dist/C_Cron2.cjs +1 -1
  72. package/dist/C_Cron2.js +1 -1
  73. package/dist/C_Date.d.cts +1 -1
  74. package/dist/C_Date.d.ts +1 -1
  75. package/dist/C_Date2.cjs +1 -1
  76. package/dist/C_Date2.js +1 -1
  77. package/dist/C_Draggable.css +48 -48
  78. package/dist/C_Draggable2.cjs +1 -1
  79. package/dist/C_Draggable2.js +1 -1
  80. package/dist/C_Editor.css +13 -14
  81. package/dist/C_Editor.d.cts +1 -1
  82. package/dist/C_Editor.d.ts +1 -1
  83. package/dist/C_Editor2.cjs +1 -1
  84. package/dist/C_Editor2.js +1 -1
  85. package/dist/C_FilePreview.css +18 -18
  86. package/dist/C_FilePreview2.cjs +1 -1
  87. package/dist/C_FilePreview2.js +1 -1
  88. package/dist/C_Form.base.css +36 -36
  89. package/dist/C_Form.css +49 -50
  90. package/dist/C_Form2.cjs +1 -1
  91. package/dist/C_Form2.js +1 -1
  92. package/dist/C_FormModal.cjs +1 -0
  93. package/dist/C_FormModal.css +41 -0
  94. package/dist/C_FormModal.d.cts +2 -0
  95. package/dist/C_FormModal.d.ts +3 -0
  96. package/dist/C_FormModal.js +1 -0
  97. package/dist/C_FormModal2.cjs +1 -0
  98. package/dist/C_FormModal2.js +1 -0
  99. package/dist/C_FormSearch.css +45 -45
  100. package/dist/C_FormSearch2.cjs +1 -1
  101. package/dist/C_FormSearch2.js +1 -1
  102. package/dist/C_FormulaEditor.css +94 -55
  103. package/dist/C_FormulaEditor2.cjs +2 -2
  104. package/dist/C_FormulaEditor2.js +2 -2
  105. package/dist/C_FullCalendar.css +8 -1
  106. package/dist/C_FullCalendar2.cjs +1 -1
  107. package/dist/C_FullCalendar2.js +1 -1
  108. package/dist/C_GlobalSearch2.cjs +1 -1
  109. package/dist/C_GlobalSearch2.js +1 -1
  110. package/dist/C_Guide.css +14 -14
  111. package/dist/C_Guide2.cjs +1 -1
  112. package/dist/C_Guide2.js +1 -1
  113. package/dist/C_Icon.css +14 -14
  114. package/dist/C_Icon2.cjs +1 -1
  115. package/dist/C_Icon2.js +1 -1
  116. package/dist/C_ImageCropper.css +22 -22
  117. package/dist/C_ImageCropper2.cjs +1 -1
  118. package/dist/C_ImageCropper2.js +1 -1
  119. package/dist/C_Language.css +14 -14
  120. package/dist/C_Language2.cjs +1 -1
  121. package/dist/C_Language2.js +1 -1
  122. package/dist/C_Login.css +232 -149
  123. package/dist/C_Login2.cjs +1 -1
  124. package/dist/C_Login2.js +1 -1
  125. package/dist/C_Map.css +3 -3
  126. package/dist/C_Map2.cjs +1 -1
  127. package/dist/C_Map2.js +1 -1
  128. package/dist/C_Markdown.css +35 -35
  129. package/dist/C_Markdown2.cjs +1 -1
  130. package/dist/C_Markdown2.js +1 -1
  131. package/dist/C_Menu.d.cts +1 -1
  132. package/dist/C_Menu2.cjs +1 -1
  133. package/dist/C_Menu2.js +1 -1
  134. package/dist/C_NotificationCenter.css +30 -30
  135. package/dist/C_NotificationCenter2.cjs +1 -1
  136. package/dist/C_NotificationCenter2.js +1 -1
  137. package/dist/C_OrgChart.css +4 -0
  138. package/dist/C_OrgChart2.cjs +1 -1
  139. package/dist/C_OrgChart2.js +1 -1
  140. package/dist/C_Progress2.cjs +1 -1
  141. package/dist/C_Progress2.js +1 -1
  142. package/dist/C_QRCode.css +8 -8
  143. package/dist/C_QRCode2.cjs +1 -1
  144. package/dist/C_QRCode2.js +1 -1
  145. package/dist/C_Signature.css +14 -14
  146. package/dist/C_Signature2.cjs +1 -1
  147. package/dist/C_Signature2.js +1 -1
  148. package/dist/C_Skeleton2.cjs +1 -1
  149. package/dist/C_Skeleton2.js +1 -1
  150. package/dist/C_SplitPane.css +39 -39
  151. package/dist/C_SplitPane2.cjs +1 -1
  152. package/dist/C_SplitPane2.js +1 -1
  153. package/dist/C_Steps.css +48 -38
  154. package/dist/C_Steps2.cjs +1 -1
  155. package/dist/C_Steps2.js +1 -1
  156. package/dist/C_Table.base.css +160 -160
  157. package/dist/C_Table.cjs +1 -1
  158. package/dist/C_Table.css +173 -174
  159. package/dist/C_Table.d.ts +4 -3
  160. package/dist/C_Table.js +1 -1
  161. package/dist/C_Tabs.cjs +1 -0
  162. package/dist/C_Tabs.css +1 -0
  163. package/dist/C_Tabs.d.cts +2 -0
  164. package/dist/C_Tabs.d.ts +2 -0
  165. package/dist/C_Tabs.js +1 -0
  166. package/dist/C_TagsView.css +52 -52
  167. package/dist/C_TagsView2.cjs +1 -1
  168. package/dist/C_TagsView2.js +1 -1
  169. package/dist/C_Theme.css +14 -14
  170. package/dist/C_Theme2.cjs +1 -1
  171. package/dist/C_Theme2.js +1 -1
  172. package/dist/C_Time.css +4 -4
  173. package/dist/C_Time2.cjs +1 -1
  174. package/dist/C_Time2.js +1 -1
  175. package/dist/C_Timeline.css +76 -58
  176. package/dist/C_Timeline2.cjs +1 -1
  177. package/dist/C_Timeline2.js +1 -1
  178. package/dist/C_Transfer.css +51 -51
  179. package/dist/C_Transfer2.cjs +1 -1
  180. package/dist/C_Transfer2.js +1 -1
  181. package/dist/C_Tree.css +35 -32
  182. package/dist/C_Tree2.cjs +1 -1
  183. package/dist/C_Tree2.js +1 -1
  184. package/dist/C_Upload.css +53 -50
  185. package/dist/C_Upload2.cjs +1 -1
  186. package/dist/C_Upload2.js +1 -1
  187. package/dist/C_VideoPlayer.css +17 -13
  188. package/dist/C_VideoPlayer2.cjs +2 -2
  189. package/dist/C_VideoPlayer2.js +2 -2
  190. package/dist/C_VtableGantt.css +19 -19
  191. package/dist/C_VtableGantt2.cjs +1 -1
  192. package/dist/C_VtableGantt2.js +1 -1
  193. package/dist/C_WaterFall.css +19 -15
  194. package/dist/C_WaterFall2.cjs +1 -1
  195. package/dist/C_WaterFall2.js +1 -1
  196. package/dist/C_WorkFlow.css +123 -123
  197. package/dist/C_WorkFlow2.cjs +1 -1
  198. package/dist/C_WorkFlow2.js +1 -1
  199. package/dist/constants.d.cts +2 -2
  200. package/dist/constants.d.ts +2 -2
  201. package/dist/constants2.d.cts +3 -3
  202. package/dist/constants2.d.ts +3 -3
  203. package/dist/constants3.d.cts +8 -4
  204. package/dist/constants3.d.ts +8 -4
  205. package/dist/constants4.d.cts +6 -6
  206. package/dist/constants4.d.ts +6 -6
  207. package/dist/constants5.d.cts +2 -2
  208. package/dist/constants5.d.ts +2 -2
  209. package/dist/data.d.cts +108 -0
  210. package/dist/data.d.ts +108 -0
  211. package/dist/data2.cjs +1 -0
  212. package/dist/data2.js +1 -0
  213. package/dist/index.cjs +1 -1
  214. package/dist/index.d.cts +49 -49
  215. package/dist/index.d.ts +51 -49
  216. package/dist/index.js +1 -1
  217. package/dist/index.vue.d.cts +74 -69
  218. package/dist/index.vue.d.ts +74 -69
  219. package/dist/index10.vue.d.cts +80 -39
  220. package/dist/index10.vue.d.ts +68 -77
  221. package/dist/index11.vue.d.cts +68 -77
  222. package/dist/index11.vue.d.ts +54 -69
  223. package/dist/index12.vue.d.cts +54 -69
  224. package/dist/index12.vue.d.ts +52 -58
  225. package/dist/index13.vue.d.cts +52 -58
  226. package/dist/index13.vue.d.ts +1 -1
  227. package/dist/index14.vue.d.cts +1 -1
  228. package/dist/index14.vue.d.ts +14 -47
  229. package/dist/index15.vue.d.cts +14 -47
  230. package/dist/index16.vue.d.ts +15 -12
  231. package/dist/index17.vue.d.cts +15 -12
  232. package/dist/index17.vue.d.ts +4 -4
  233. package/dist/index18.vue.d.cts +4 -4
  234. package/dist/index18.vue.d.ts +2 -2
  235. package/dist/index19.vue.d.cts +1 -1
  236. package/dist/index19.vue.d.ts +1 -1
  237. package/dist/index2.vue.d.cts +70 -65
  238. package/dist/index2.vue.d.ts +70 -65
  239. package/dist/index20.vue.d.cts +1 -1
  240. package/dist/index20.vue.d.ts +1 -1
  241. package/dist/index24.vue.d.cts +3 -3
  242. package/dist/index24.vue.d.ts +3 -3
  243. package/dist/index25.vue.d.cts +1 -1
  244. package/dist/index25.vue.d.ts +1 -1
  245. package/dist/index26.vue.d.cts +5 -5
  246. package/dist/index26.vue.d.ts +5 -5
  247. package/dist/index27.vue.d.cts +1 -1
  248. package/dist/index27.vue.d.ts +1 -1
  249. package/dist/index3.vue.d.cts +30 -80
  250. package/dist/index3.vue.d.ts +30 -80
  251. package/dist/index4.vue.d.cts +130 -30
  252. package/dist/index4.vue.d.ts +22 -30
  253. package/dist/index5.vue.d.cts +18 -126
  254. package/dist/index5.vue.d.ts +22 -19
  255. package/dist/index6.vue.d.cts +22 -19
  256. package/dist/index6.vue.d.ts +117 -22
  257. package/dist/index7.vue.d.cts +117 -22
  258. package/dist/index7.vue.d.ts +17 -110
  259. package/dist/index8.vue.d.cts +17 -110
  260. package/dist/index8.vue.d.ts +37 -24
  261. package/dist/index9.vue.d.cts +37 -24
  262. package/dist/index9.vue.d.ts +80 -39
  263. package/dist/mapUtils.d.cts +2 -2
  264. package/dist/mapUtils.d.ts +2 -2
  265. package/dist/presets.d.cts +96 -0
  266. package/dist/presets.d.ts +96 -0
  267. package/dist/resolver.cjs +1 -1
  268. package/dist/resolver.d.cts +1 -1
  269. package/dist/resolver.d.ts +1 -1
  270. package/dist/resolver.js +1 -1
  271. package/dist/style.css +1735 -1400
  272. package/dist/useCalendarEvents.d.cts +23 -18
  273. package/dist/useCalendarEvents.d.ts +23 -18
  274. package/dist/useCollapsePanel.d.cts +4 -3
  275. package/dist/useCollapsePanel.d.ts +4 -3
  276. package/dist/useCropperCore.d.cts +32 -17
  277. package/dist/useCropperCore.d.ts +32 -17
  278. package/dist/useDraggableLayout.d.cts +2 -2
  279. package/dist/useDraggableLayout.d.ts +2 -2
  280. package/dist/useDynamicFormState.d.cts +7 -2
  281. package/dist/useDynamicFormState.d.ts +7 -2
  282. package/dist/useEdgeInteraction.d.cts +20 -19
  283. package/dist/useEdgeInteraction.d.ts +20 -19
  284. package/dist/useFullscreen.d.cts +6 -6
  285. package/dist/useFullscreen.d.ts +6 -6
  286. package/dist/useInfiniteScroll.d.cts +1 -1
  287. package/dist/useInfiniteScroll.d.ts +1 -1
  288. package/dist/useQRCode.d.cts +5 -4
  289. package/dist/useQRCode.d.ts +5 -4
  290. package/dist/useSearchState.d.cts +9 -9
  291. package/dist/useSearchState.d.ts +9 -9
  292. package/dist/useSignatureHistory.d.cts +18 -10
  293. package/dist/useSignatureHistory.d.ts +18 -10
  294. package/dist/useSplitResize.d.cts +7 -7
  295. package/dist/useSplitResize.d.ts +7 -7
  296. package/dist/useTableQuery.cjs +3 -3
  297. package/dist/useTableQuery.d.cts +12 -5
  298. package/dist/useTableQuery.d.ts +12 -5
  299. package/dist/useTableQuery.js +3 -3
  300. package/dist/useTimeSelection.d.cts +6 -3
  301. package/dist/useTimeSelection.d.ts +6 -3
  302. package/dist/useTreeOperations.d.cts +8 -8
  303. package/dist/useTreeOperations.d.ts +8 -8
  304. package/dist/useWorkflowValidation.d.cts +6 -4
  305. package/dist/useWorkflowValidation.d.ts +6 -4
  306. package/dist/verification.d.cts +71 -6
  307. package/dist/verification.d.ts +71 -6
  308. package/package.json +5 -3
  309. package/dist/types.d.ts +0 -58
  310. package/dist/types2.d.cts +0 -58
@@ -1,87 +1,37 @@
1
1
  import * as vue from "vue";
2
2
 
3
- //#region src/components/C_AvatarGroup/types.d.ts
4
- /**
5
- * @Description: 头像组组件类型定义
6
- * Copyright (c) 2026 by CHENY, All Rights Reserved 😎.
7
- */
8
- /** 单个头像数据 */
9
- interface AvatarItem {
10
- /** 唯一标识 */
11
- id: string | number;
12
- /** 头像图片 URL */
13
- src?: string;
14
- /** 姓名(用于首字母 fallback 和 tooltip) */
15
- name: string;
16
- /** 悬浮提示(默认取 name) */
17
- tooltip?: string;
18
- /** 在线状态 */
19
- status?: 'online' | 'offline' | 'busy' | 'away';
20
- /** 额外数据 */
21
- extra?: Record<string, unknown>;
3
+ //#region src/components/C_Barcode/index.vue.d.ts
4
+ interface Props {
5
+ value: string;
6
+ format?: 'CODE128' | 'CODE39' | 'EAN13' | 'EAN8' | 'UPC' | 'ITF14' | 'MSI' | 'pharmacode';
7
+ width?: number;
8
+ height?: number;
9
+ showText?: boolean;
10
+ fontSize?: number;
11
+ textPosition?: 'bottom' | 'top';
12
+ lineColor?: string;
13
+ background?: string;
14
+ showBorder?: boolean;
15
+ label?: string;
16
+ showLabel?: boolean;
22
17
  }
23
- /** 组件 Props */
24
- interface AvatarGroupProps {
25
- /** 头像数据列表 */
26
- items: AvatarItem[];
27
- /** 最多显示数量(超出 +N) */
28
- max?: number;
29
- /** 头像尺寸 (px) */
30
- size?: number;
31
- /** 头像间重叠偏移量 (px),负值表示堆叠 */
32
- overlap?: number;
33
- /** 形状 */
34
- shape?: 'circle' | 'square';
35
- /** 是否显示状态指示点 */
36
- showStatus?: boolean;
37
- /** 是否显示悬浮提示 */
38
- showTooltip?: boolean;
39
- /** 是否可点击 */
40
- clickable?: boolean;
41
- /** +N 溢出按钮是否可点击 */
42
- overflowClickable?: boolean;
43
- /** 堆叠方向 */
44
- direction?: 'ltr' | 'rtl';
45
- }
46
- /** 默认 Props */
47
- declare const DEFAULT_AVATAR_GROUP_PROPS: Partial<AvatarGroupProps>;
48
- /** 状态颜色映射 */
49
- declare const STATUS_COLOR_MAP: Record<string, string>;
50
- /** 从名字中提取首字母 */
51
- declare function getInitials(name: string): string;
52
- /** 根据名字生成稳定的背景色 */
53
- declare function nameToColor(name: string): string;
54
- //#endregion
55
- //#region src/components/C_AvatarGroup/index.vue.d.ts
56
- type __VLS_Props = {
57
- items: AvatarGroupProps['items'];
58
- max?: number;
59
- size?: number;
60
- overlap?: number;
61
- shape?: AvatarGroupProps['shape'];
62
- showStatus?: boolean;
63
- showTooltip?: boolean;
64
- clickable?: boolean;
65
- overflowClickable?: boolean;
66
- direction?: AvatarGroupProps['direction'];
67
- };
68
- declare const __VLS_export: vue.DefineComponent<__VLS_Props, {}, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
69
- itemClick: (item: AvatarItem) => any;
70
- overflowClick: (hiddenItems: AvatarItem[]) => any;
71
- }, string, vue.PublicProps, Readonly<__VLS_Props> & Readonly<{
72
- onItemClick?: ((item: AvatarItem) => any) | undefined;
73
- onOverflowClick?: ((hiddenItems: AvatarItem[]) => any) | undefined;
18
+ declare const __VLS_export: vue.DefineComponent<Props, {}, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
19
+ error: (error: Error) => any;
20
+ }, string, vue.PublicProps, Readonly<Props> & Readonly<{
21
+ onError?: ((error: Error) => any) | undefined;
74
22
  }>, {
75
- size: number;
76
- overlap: number;
77
- max: number;
78
- shape: "circle" | "square";
79
- showStatus: boolean;
80
- showTooltip: boolean;
81
- clickable: boolean;
82
- overflowClickable: boolean;
83
- direction: "ltr" | "rtl";
23
+ width: number;
24
+ height: number;
25
+ label: string;
26
+ format: "CODE128" | "CODE39" | "EAN13" | "EAN8" | "UPC" | "ITF14" | "MSI" | "pharmacode";
27
+ showText: boolean;
28
+ fontSize: number;
29
+ textPosition: "bottom" | "top";
30
+ lineColor: string;
31
+ background: string;
32
+ showBorder: boolean;
33
+ showLabel: boolean;
84
34
  }, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
85
35
  declare const _default: typeof __VLS_export;
86
36
  //#endregion
87
- export { STATUS_COLOR_MAP as a, DEFAULT_AVATAR_GROUP_PROPS as i, AvatarGroupProps as n, getInitials as o, AvatarItem as r, nameToColor as s, _default as t };
37
+ export { _default as t };
@@ -1,37 +1,137 @@
1
+ import { n as RouteItem } from "./types.cjs";
1
2
  import * as vue from "vue";
3
+ import { Ref, VNode } from "vue";
4
+ import * as naive_ui0 from "naive-ui";
5
+ import { DropdownProps, MenuInst, MenuOption } from "naive-ui";
6
+ import * as naive_ui_es_menu_src_interface0 from "naive-ui/es/menu/src/interface";
2
7
 
3
- //#region src/components/C_Barcode/index.vue.d.ts
4
- interface Props {
5
- value: string;
6
- format?: "CODE128" | "CODE39" | "EAN13" | "EAN8" | "UPC" | "ITF14" | "MSI" | "pharmacode";
7
- width?: number;
8
- height?: number;
9
- showText?: boolean;
10
- fontSize?: number;
11
- textPosition?: "bottom" | "top";
12
- lineColor?: string;
13
- background?: string;
14
- showBorder?: boolean;
15
- label?: string;
16
- showLabel?: boolean;
8
+ //#region src/components/_shared/menuAdapter.d.ts
9
+ /**
10
+ * 菜单适配器配置
11
+ */
12
+ interface MenuAdapterConfig {
13
+ /**
14
+ * 标签文本格式化函数(用于 i18n)
15
+ * 默认:原样返回 title
16
+ */
17
+ labelFormatter?: (title: string) => string;
18
+ /**
19
+ * 获取菜单项的唯一 key
20
+ * 默认:`normalizePath(route.path)`
21
+ */
22
+ getKey?: (route: RouteItem) => string;
23
+ /**
24
+ * 获取显示文本
25
+ * 默认:`route.meta?.title || route.name || ''`
26
+ */
27
+ getLabel?: (route: RouteItem) => string;
28
+ /**
29
+ * 路由过滤器 — return false 排除该项
30
+ * 默认:排除 `meta.hidden === true`
31
+ */
32
+ filter?: (route: RouteItem) => boolean;
33
+ /**
34
+ * 自定义图标渲染
35
+ * 默认:字符串 → Iconify Icon;函数 → 直接调用
36
+ */
37
+ renderIcon?: (icon: string | (() => VNode) | undefined) => (() => VNode) | undefined;
38
+ /**
39
+ * 是否递归处理 children
40
+ * 默认:true
41
+ */
42
+ recursive?: boolean;
17
43
  }
18
- declare const __VLS_export: vue.DefineComponent<Props, {}, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
19
- error: (error: Error) => any;
20
- }, string, vue.PublicProps, Readonly<Props> & Readonly<{
21
- onError?: ((error: Error) => any) | undefined;
44
+ /**
45
+ * 将路由数据转换为 NMenu 的 MenuOption[]
46
+ *
47
+ * 支持的输入格式:
48
+ * 1. **Vue Router RouteRecordRaw** — 直接传 `router.getRoutes()` 或手写路由表
49
+ * 2. **后端 JSON 路由表** — `{ path, meta: { title, icon }, children }`
50
+ * 3. **自定义格式** — 通过 config 完全自定义 key/label/icon 的取值逻辑
51
+ *
52
+ * @param routes 路由数据数组
53
+ * @param config 适配器配置
54
+ * @returns NMenu 可直接使用的 MenuOption[]
55
+ */
56
+ declare function createMenuOptions(routes: RouteItem[], config?: MenuAdapterConfig): MenuOption[];
57
+ /**
58
+ * 将路由树扁平化为一维数组(常用于搜索、快捷导航)
59
+ *
60
+ * @param routes 路由数据数组
61
+ * @param filter 过滤器(默认排除 hidden)
62
+ * @returns 扁平化后的路由数组
63
+ */
64
+ declare function flattenRoutes(routes: RouteItem[], filter?: (route: RouteItem) => boolean): RouteItem[];
65
+ //#endregion
66
+ //#region src/components/C_Menu/types.d.ts
67
+ type MenuValue = string | null;
68
+ interface MenuProps {
69
+ options?: MenuOption[];
70
+ routes?: RouteItem[];
71
+ adapterConfig?: MenuAdapterConfig;
72
+ labelFormatter?: (label: string) => string;
73
+ /** @deprecated Use modelValue. */
74
+ value?: MenuValue;
75
+ modelValue?: MenuValue;
76
+ expandedKeys?: string[];
77
+ defaultExpandedKeys?: string[];
78
+ mode?: 'vertical' | 'horizontal';
79
+ collapsed?: boolean;
80
+ collapsedWidth?: number;
81
+ collapsedIconSize?: number;
82
+ inverted?: boolean;
83
+ themeOverrides?: Record<string, any>;
84
+ indent?: number;
85
+ rootIndent?: number;
86
+ dropdownProps?: DropdownProps;
87
+ }
88
+ interface MenuEmits {
89
+ select: [key: string];
90
+ /** 鼠标或键盘聚焦叶子项时触发,可用于无副作用的路由预取。 */
91
+ intent: [key: string];
92
+ 'update:modelValue': [key: MenuValue];
93
+ /** @deprecated Use update:modelValue. */
94
+ 'update:value': [key: MenuValue];
95
+ 'update:expandedKeys': [keys: string[]];
96
+ }
97
+ interface MenuExpose {
98
+ showOption: (key: string) => void;
99
+ menuRef: Ref<MenuInst | null>;
100
+ }
101
+ //#endregion
102
+ //#region src/components/C_Menu/index.vue.d.ts
103
+ declare const __VLS_export: vue.DefineComponent<MenuProps, {
104
+ showOption: (key: string) => void | undefined;
105
+ menuRef: vue.Ref<{
106
+ showOption: (key?: naive_ui_es_menu_src_interface0.Key) => void;
107
+ deriveResponsiveState: () => void;
108
+ } | null, MenuInst | {
109
+ showOption: (key?: naive_ui_es_menu_src_interface0.Key) => void;
110
+ deriveResponsiveState: () => void;
111
+ } | null>;
112
+ }, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
113
+ "update:modelValue": (key: MenuValue) => any;
114
+ select: (key: string) => any;
115
+ intent: (key: string) => any;
116
+ "update:value": (key: MenuValue) => any;
117
+ "update:expandedKeys": (keys: string[]) => any;
118
+ }, string, vue.PublicProps, Readonly<MenuProps> & Readonly<{
119
+ "onUpdate:modelValue"?: ((key: MenuValue) => any) | undefined;
120
+ onSelect?: ((key: string) => any) | undefined;
121
+ onIntent?: ((key: string) => any) | undefined;
122
+ "onUpdate:value"?: ((key: MenuValue) => any) | undefined;
123
+ "onUpdate:expandedKeys"?: ((keys: string[]) => any) | undefined;
22
124
  }>, {
23
- format: "CODE128" | "CODE39" | "EAN13" | "EAN8" | "UPC" | "ITF14" | "MSI" | "pharmacode";
24
- width: number;
25
- height: number;
26
- showText: boolean;
27
- fontSize: number;
28
- textPosition: "bottom" | "top";
29
- lineColor: string;
30
- background: string;
31
- showBorder: boolean;
32
- label: string;
33
- showLabel: boolean;
125
+ mode: "vertical" | "horizontal";
126
+ defaultExpandedKeys: string[];
127
+ collapsed: boolean;
128
+ collapsedWidth: number;
129
+ collapsedIconSize: number;
130
+ inverted: boolean;
131
+ indent: number;
132
+ rootIndent: number;
133
+ dropdownProps: naive_ui0.DropdownProps;
34
134
  }, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
35
135
  declare const _default: typeof __VLS_export;
36
136
  //#endregion
37
- export { _default as t };
137
+ export { MenuValue as a, flattenRoutes as c, MenuProps as i, MenuEmits as n, MenuAdapterConfig as o, MenuExpose as r, createMenuOptions as s, _default as t };
@@ -1,36 +1,28 @@
1
+ import { i as BreadcrumbItem } from "./public.js";
1
2
  import * as vue from "vue";
2
3
 
3
- //#region src/components/C_Barcode/index.vue.d.ts
4
- interface Props {
5
- value: string;
6
- format?: "CODE128" | "CODE39" | "EAN13" | "EAN8" | "UPC" | "ITF14" | "MSI" | "pharmacode";
7
- width?: number;
8
- height?: number;
9
- showText?: boolean;
10
- fontSize?: number;
11
- textPosition?: "bottom" | "top";
12
- lineColor?: string;
13
- background?: string;
14
- showBorder?: boolean;
15
- label?: string;
16
- showLabel?: boolean;
17
- }
18
- declare const __VLS_export: vue.DefineComponent<Props, {}, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
19
- error: (error: Error) => any;
20
- }, string, vue.PublicProps, Readonly<Props> & Readonly<{
21
- onError?: ((error: Error) => any) | undefined;
4
+ //#region src/components/C_Breadcrumb/index.vue.d.ts
5
+ type __VLS_Props = {
6
+ /**
7
+ * 手动传入面包屑数据
8
+ * 不传时自动从 `route.matched` 生成(零配置)
9
+ */
10
+ items?: BreadcrumbItem[]; /** 是否显示图标 */
11
+ showIcon?: boolean; /** 图标大小 (px),默认 16 */
12
+ iconSize?: number;
13
+ /**
14
+ * 标签文本格式化函数(用于 i18n)
15
+ * 仅在自动模式下生效
16
+ */
17
+ labelFormatter?: (label: string) => string;
18
+ };
19
+ declare const __VLS_export: vue.DefineComponent<__VLS_Props, {}, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
20
+ select: (path: string) => any;
21
+ }, string, vue.PublicProps, Readonly<__VLS_Props> & Readonly<{
22
+ onSelect?: ((path: string) => any) | undefined;
22
23
  }>, {
23
- format: "CODE128" | "CODE39" | "EAN13" | "EAN8" | "UPC" | "ITF14" | "MSI" | "pharmacode";
24
- width: number;
25
- height: number;
26
- showText: boolean;
27
- fontSize: number;
28
- textPosition: "bottom" | "top";
29
- lineColor: string;
30
- background: string;
31
- showBorder: boolean;
32
- label: string;
33
- showLabel: boolean;
24
+ showIcon: boolean;
25
+ iconSize: number;
34
26
  }, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
35
27
  declare const _default: typeof __VLS_export;
36
28
  //#endregion
@@ -1,137 +1,29 @@
1
- import { n as RouteItem } from "./types.cjs";
1
+ import { t as BreadcrumbItem } from "./types.cjs";
2
2
  import * as vue from "vue";
3
- import { Ref, VNode } from "vue";
4
- import * as naive_ui0 from "naive-ui";
5
- import { DropdownProps, MenuInst, MenuOption } from "naive-ui";
6
- import * as naive_ui_es_menu_src_interface0 from "naive-ui/es/menu/src/interface";
7
3
 
8
- //#region src/components/_shared/menuAdapter.d.ts
9
- /**
10
- * 菜单适配器配置
11
- */
12
- interface MenuAdapterConfig {
4
+ //#region src/components/C_Breadcrumb/index.vue.d.ts
5
+ type __VLS_Props = {
13
6
  /**
14
- * 标签文本格式化函数(用于 i18n)
15
- * 默认:原样返回 title
16
- */
17
- labelFormatter?: (title: string) => string;
18
- /**
19
- * 获取菜单项的唯一 key
20
- * 默认:`normalizePath(route.path)`
21
- */
22
- getKey?: (route: RouteItem) => string;
23
- /**
24
- * 获取显示文本
25
- * 默认:`route.meta?.title || route.name || ''`
26
- */
27
- getLabel?: (route: RouteItem) => string;
28
- /**
29
- * 路由过滤器 — return false 排除该项
30
- * 默认:排除 `meta.hidden === true`
31
- */
32
- filter?: (route: RouteItem) => boolean;
33
- /**
34
- * 自定义图标渲染
35
- * 默认:字符串 → Iconify Icon;函数 → 直接调用
7
+ * 手动传入面包屑数据
8
+ * 不传时自动从 `route.matched` 生成(零配置)
36
9
  */
37
- renderIcon?: (icon: string | (() => VNode) | undefined) => (() => VNode) | undefined;
10
+ items?: BreadcrumbItem[]; /** 是否显示图标 */
11
+ showIcon?: boolean; /** 图标大小 (px),默认 16 */
12
+ iconSize?: number;
38
13
  /**
39
- * 是否递归处理 children
40
- * 默认:true
14
+ * 标签文本格式化函数(用于 i18n)
15
+ * 仅在自动模式下生效
41
16
  */
42
- recursive?: boolean;
43
- }
44
- /**
45
- * 将路由数据转换为 NMenu 的 MenuOption[]
46
- *
47
- * 支持的输入格式:
48
- * 1. **Vue Router RouteRecordRaw** — 直接传 `router.getRoutes()` 或手写路由表
49
- * 2. **后端 JSON 路由表** — `{ path, meta: { title, icon }, children }`
50
- * 3. **自定义格式** — 通过 config 完全自定义 key/label/icon 的取值逻辑
51
- *
52
- * @param routes 路由数据数组
53
- * @param config 适配器配置
54
- * @returns NMenu 可直接使用的 MenuOption[]
55
- */
56
- declare function createMenuOptions(routes: RouteItem[], config?: MenuAdapterConfig): MenuOption[];
57
- /**
58
- * 将路由树扁平化为一维数组(常用于搜索、快捷导航)
59
- *
60
- * @param routes 路由数据数组
61
- * @param filter 过滤器(默认排除 hidden)
62
- * @returns 扁平化后的路由数组
63
- */
64
- declare function flattenRoutes(routes: RouteItem[], filter?: (route: RouteItem) => boolean): RouteItem[];
65
- //#endregion
66
- //#region src/components/C_Menu/types.d.ts
67
- type MenuValue = string | null;
68
- interface MenuProps {
69
- options?: MenuOption[];
70
- routes?: RouteItem[];
71
- adapterConfig?: MenuAdapterConfig;
72
17
  labelFormatter?: (label: string) => string;
73
- /** @deprecated Use modelValue. */
74
- value?: MenuValue;
75
- modelValue?: MenuValue;
76
- expandedKeys?: string[];
77
- defaultExpandedKeys?: string[];
78
- mode?: 'vertical' | 'horizontal';
79
- collapsed?: boolean;
80
- collapsedWidth?: number;
81
- collapsedIconSize?: number;
82
- inverted?: boolean;
83
- themeOverrides?: Record<string, any>;
84
- indent?: number;
85
- rootIndent?: number;
86
- dropdownProps?: DropdownProps;
87
- }
88
- interface MenuEmits {
89
- select: [key: string];
90
- /** 鼠标或键盘聚焦叶子项时触发,可用于无副作用的路由预取。 */
91
- intent: [key: string];
92
- 'update:modelValue': [key: MenuValue];
93
- /** @deprecated Use update:modelValue. */
94
- 'update:value': [key: MenuValue];
95
- 'update:expandedKeys': [keys: string[]];
96
- }
97
- interface MenuExpose {
98
- showOption: (key: string) => void;
99
- menuRef: Ref<MenuInst | null>;
100
- }
101
- //#endregion
102
- //#region src/components/C_Menu/index.vue.d.ts
103
- declare const __VLS_export: vue.DefineComponent<MenuProps, {
104
- showOption: (key: string) => void | undefined;
105
- menuRef: vue.Ref<{
106
- showOption: (key?: naive_ui_es_menu_src_interface0.Key) => void;
107
- deriveResponsiveState: () => void;
108
- } | null, MenuInst | {
109
- showOption: (key?: naive_ui_es_menu_src_interface0.Key) => void;
110
- deriveResponsiveState: () => void;
111
- } | null>;
112
- }, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
113
- select: (key: string) => any;
114
- "update:modelValue": (key: MenuValue) => any;
115
- intent: (key: string) => any;
116
- "update:value": (key: MenuValue) => any;
117
- "update:expandedKeys": (keys: string[]) => any;
118
- }, string, vue.PublicProps, Readonly<MenuProps> & Readonly<{
119
- onSelect?: ((key: string) => any) | undefined;
120
- "onUpdate:modelValue"?: ((key: MenuValue) => any) | undefined;
121
- onIntent?: ((key: string) => any) | undefined;
122
- "onUpdate:value"?: ((key: MenuValue) => any) | undefined;
123
- "onUpdate:expandedKeys"?: ((keys: string[]) => any) | undefined;
18
+ };
19
+ declare const __VLS_export: vue.DefineComponent<__VLS_Props, {}, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
20
+ select: (path: string) => any;
21
+ }, string, vue.PublicProps, Readonly<__VLS_Props> & Readonly<{
22
+ onSelect?: ((path: string) => any) | undefined;
124
23
  }>, {
125
- mode: "vertical" | "horizontal";
126
- defaultExpandedKeys: string[];
127
- collapsed: boolean;
128
- collapsedWidth: number;
129
- collapsedIconSize: number;
130
- inverted: boolean;
131
- indent: number;
132
- rootIndent: number;
133
- dropdownProps: naive_ui0.DropdownProps;
24
+ showIcon: boolean;
25
+ iconSize: number;
134
26
  }, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
135
27
  declare const _default: typeof __VLS_export;
136
28
  //#endregion
137
- export { MenuValue as a, flattenRoutes as c, MenuProps as i, MenuEmits as n, MenuAdapterConfig as o, MenuExpose as r, createMenuOptions as s, _default as t };
29
+ export { _default as t };
@@ -1,29 +1,32 @@
1
- import { i as BreadcrumbItem } from "./public.js";
2
1
  import * as vue from "vue";
3
2
 
4
- //#region src/components/C_Breadcrumb/index.vue.d.ts
3
+ //#region src/components/C_Cascade/types.d.ts
4
+ interface CascadeItem {
5
+ label: string;
6
+ value: string | number;
7
+ children?: CascadeItem[];
8
+ }
9
+ interface CascadeValue {
10
+ primary?: Pick<CascadeItem, 'label' | 'value'> | null;
11
+ secondary?: Pick<CascadeItem, 'label' | 'value'> | null;
12
+ tertiary?: Pick<CascadeItem, 'label' | 'value'> | null;
13
+ }
14
+ //#endregion
15
+ //#region src/components/C_Cascade/index.vue.d.ts
5
16
  type __VLS_Props = {
6
- /**
7
- * 手动传入面包屑数据
8
- * 不传时自动从 `route.matched` 生成(零配置)
9
- */
10
- items?: BreadcrumbItem[]; /** 是否显示图标 */
11
- showIcon?: boolean; /** 图标大小 (px),默认 16 */
12
- iconSize?: number;
13
- /**
14
- * 标签文本格式化函数(用于 i18n)
15
- * 仅在自动模式下生效
16
- */
17
- labelFormatter?: (label: string) => string;
17
+ data: CascadeItem[];
18
+ placeholders?: string[];
19
+ modelValue?: CascadeValue;
18
20
  };
19
21
  declare const __VLS_export: vue.DefineComponent<__VLS_Props, {}, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
20
- select: (path: string) => any;
22
+ "update:modelValue": (value: CascadeValue) => any;
23
+ change: (value: CascadeValue) => any;
21
24
  }, string, vue.PublicProps, Readonly<__VLS_Props> & Readonly<{
22
- onSelect?: ((path: string) => any) | undefined;
25
+ "onUpdate:modelValue"?: ((value: CascadeValue) => any) | undefined;
26
+ onChange?: ((value: CascadeValue) => any) | undefined;
23
27
  }>, {
24
- showIcon: boolean;
25
- iconSize: number;
28
+ placeholders: string[];
26
29
  }, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
27
30
  declare const _default: typeof __VLS_export;
28
31
  //#endregion
29
- export { _default as t };
32
+ export { CascadeItem as n, CascadeValue as r, _default as t };
@@ -1,29 +1,32 @@
1
- import { t as BreadcrumbItem } from "./types.cjs";
2
1
  import * as vue from "vue";
3
2
 
4
- //#region src/components/C_Breadcrumb/index.vue.d.ts
3
+ //#region src/components/C_Cascade/types.d.ts
4
+ interface CascadeItem {
5
+ label: string;
6
+ value: string | number;
7
+ children?: CascadeItem[];
8
+ }
9
+ interface CascadeValue {
10
+ primary?: Pick<CascadeItem, 'label' | 'value'> | null;
11
+ secondary?: Pick<CascadeItem, 'label' | 'value'> | null;
12
+ tertiary?: Pick<CascadeItem, 'label' | 'value'> | null;
13
+ }
14
+ //#endregion
15
+ //#region src/components/C_Cascade/index.vue.d.ts
5
16
  type __VLS_Props = {
6
- /**
7
- * 手动传入面包屑数据
8
- * 不传时自动从 `route.matched` 生成(零配置)
9
- */
10
- items?: BreadcrumbItem[]; /** 是否显示图标 */
11
- showIcon?: boolean; /** 图标大小 (px),默认 16 */
12
- iconSize?: number;
13
- /**
14
- * 标签文本格式化函数(用于 i18n)
15
- * 仅在自动模式下生效
16
- */
17
- labelFormatter?: (label: string) => string;
17
+ data: CascadeItem[];
18
+ placeholders?: string[];
19
+ modelValue?: CascadeValue;
18
20
  };
19
21
  declare const __VLS_export: vue.DefineComponent<__VLS_Props, {}, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
20
- select: (path: string) => any;
22
+ "update:modelValue": (value: CascadeValue) => any;
23
+ change: (value: CascadeValue) => any;
21
24
  }, string, vue.PublicProps, Readonly<__VLS_Props> & Readonly<{
22
- onSelect?: ((path: string) => any) | undefined;
25
+ "onUpdate:modelValue"?: ((value: CascadeValue) => any) | undefined;
26
+ onChange?: ((value: CascadeValue) => any) | undefined;
23
27
  }>, {
24
- showIcon: boolean;
25
- iconSize: number;
28
+ placeholders: string[];
26
29
  }, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
27
30
  declare const _default: typeof __VLS_export;
28
31
  //#endregion
29
- export { _default as t };
32
+ export { CascadeItem as n, CascadeValue as r, _default as t };