@robot-admin/naive-ui-components 0.14.3 → 0.15.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 (257) hide show
  1. package/CHANGELOG.md +24 -0
  2. package/README.md +130 -741
  3. package/README_EN.md +137 -678
  4. package/dist/C_ActionBar.css +57 -58
  5. package/dist/C_ActionBar2.cjs +1 -1
  6. package/dist/C_ActionBar2.js +1 -1
  7. package/dist/C_AntV.css +232 -238
  8. package/dist/C_AntV2.cjs +2 -2
  9. package/dist/C_AntV2.js +2 -2
  10. package/dist/C_AudioPlayer.css +9 -9
  11. package/dist/C_AvatarGroup.css +5 -6
  12. package/dist/C_Barcode.css +1 -1
  13. package/dist/C_Breadcrumb.css +15 -18
  14. package/dist/C_Breadcrumb2.cjs +1 -1
  15. package/dist/C_Breadcrumb2.js +1 -1
  16. package/dist/C_Captcha.css +46 -49
  17. package/dist/C_Captcha2.cjs +1 -1
  18. package/dist/C_Captcha2.js +1 -1
  19. package/dist/C_Cascade.css +5 -6
  20. package/dist/C_Chat.css +8 -8
  21. package/dist/C_City.css +2 -2
  22. package/dist/C_Code.css +9 -9
  23. package/dist/C_CollapsePanel.css +9 -9
  24. package/dist/C_ContextMenu.css +31 -31
  25. package/dist/C_Cron.css +271 -274
  26. package/dist/C_Date.css +1 -1
  27. package/dist/C_Draggable.css +10 -11
  28. package/dist/C_Editor.css +2 -2
  29. package/dist/C_FilePreview.css +423 -423
  30. package/dist/C_Form.base.css +608 -602
  31. package/dist/C_Form.cjs +1 -1
  32. package/dist/C_Form.css +610 -604
  33. package/dist/C_Form.d.cts +2 -2
  34. package/dist/C_Form.d.ts +2 -2
  35. package/dist/C_Form.js +1 -1
  36. package/dist/C_FormModal.cjs +1 -1
  37. package/dist/C_FormModal.css +12 -17
  38. package/dist/C_FormModal.js +1 -1
  39. package/dist/C_FormModal2.cjs +1 -1
  40. package/dist/C_FormModal2.js +1 -1
  41. package/dist/C_FormSearch.css +53 -55
  42. package/dist/C_FormSearch2.cjs +1 -1
  43. package/dist/C_FormSearch2.js +1 -1
  44. package/dist/C_FormulaEditor.css +204 -205
  45. package/dist/C_FullCalendar.css +13 -15
  46. package/dist/C_FullCalendar2.cjs +1 -1
  47. package/dist/C_FullCalendar2.js +1 -1
  48. package/dist/C_GlobalSearch.css +11 -12
  49. package/dist/C_Guide.css +10 -10
  50. package/dist/C_Icon.css +7 -8
  51. package/dist/C_ImageCropper.css +69 -69
  52. package/dist/C_Language.css +8 -8
  53. package/dist/C_Loading.css +22 -25
  54. package/dist/C_Loading2.cjs +1 -1
  55. package/dist/C_Loading2.js +1 -1
  56. package/dist/C_Login.css +130 -135
  57. package/dist/C_Login2.cjs +1 -1
  58. package/dist/C_Login2.js +1 -1
  59. package/dist/C_Map.css +22 -23
  60. package/dist/C_Markdown.css +6 -7
  61. package/dist/C_Menu.css +2 -5
  62. package/dist/C_Menu2.cjs +1 -1
  63. package/dist/C_Menu2.js +1 -1
  64. package/dist/C_NotificationCenter.css +252 -253
  65. package/dist/C_OrgChart.css +8 -8
  66. package/dist/C_PageLoading.css +34 -39
  67. package/dist/C_QRCode.css +5 -6
  68. package/dist/C_Signature.css +5 -6
  69. package/dist/C_Skeleton.css +2 -2
  70. package/dist/C_SplitPane.css +2 -2
  71. package/dist/C_Steps.css +5 -6
  72. package/dist/C_Table.base.css +1090 -879
  73. package/dist/C_Table.cjs +1 -1
  74. package/dist/C_Table.css +1096 -885
  75. package/dist/C_Table.d.cts +1 -1
  76. package/dist/C_Table.d.ts +1 -1
  77. package/dist/C_Table.js +1 -1
  78. package/dist/C_Tabs.css +5 -6
  79. package/dist/C_TagsView.css +60 -63
  80. package/dist/C_TagsView2.cjs +1 -1
  81. package/dist/C_TagsView2.js +1 -1
  82. package/dist/C_Theme.css +7 -8
  83. package/dist/C_Time.css +1 -1
  84. package/dist/C_Timeline.css +8 -8
  85. package/dist/C_Transfer.css +10 -11
  86. package/dist/C_Tree.css +16 -17
  87. package/dist/C_Upload.css +156 -157
  88. package/dist/C_VideoPlayer.css +267 -267
  89. package/dist/C_VtableGantt.css +2 -2
  90. package/dist/C_WaterFall.css +2 -2
  91. package/dist/C_WorkFlow.css +466 -470
  92. package/dist/C_WorkFlow2.cjs +1 -1
  93. package/dist/C_WorkFlow2.js +1 -1
  94. package/dist/Card.cjs +1 -0
  95. package/dist/Card.js +1 -0
  96. package/dist/Custom.cjs +1 -0
  97. package/dist/Custom.js +1 -0
  98. package/dist/Dynamic.cjs +1 -0
  99. package/dist/Dynamic.js +1 -0
  100. package/dist/Steps.cjs +1 -0
  101. package/dist/Steps.js +1 -0
  102. package/dist/Tabs.cjs +1 -0
  103. package/dist/Tabs.js +1 -0
  104. package/dist/cascader.cjs +1 -0
  105. package/dist/cascader.js +1 -0
  106. package/dist/color-picker.cjs +1 -0
  107. package/dist/color-picker.js +1 -0
  108. package/dist/constants.d.cts +1 -1
  109. package/dist/constants.d.ts +1 -1
  110. package/dist/constants3.d.cts +2 -2
  111. package/dist/constants3.d.ts +2 -2
  112. package/dist/constants4.d.cts +4 -4
  113. package/dist/constants4.d.ts +4 -4
  114. package/dist/constants5.d.cts +2 -2
  115. package/dist/constants5.d.ts +2 -2
  116. package/dist/context.cjs +1 -0
  117. package/dist/context.js +1 -0
  118. package/dist/contracts.d.cts +24 -0
  119. package/dist/contracts.d.ts +24 -0
  120. package/dist/createPageLoading.cjs +1 -1
  121. package/dist/createPageLoading.js +1 -1
  122. package/dist/data.cjs +1 -1
  123. package/dist/data.d.cts +4 -4
  124. package/dist/data.d.ts +4 -4
  125. package/dist/data.js +1 -1
  126. package/dist/date-picker.cjs +1 -0
  127. package/dist/date-picker.js +1 -0
  128. package/dist/feedback.cjs +1 -0
  129. package/dist/feedback.js +1 -0
  130. package/dist/helpers.cjs +1 -1
  131. package/dist/helpers.js +1 -1
  132. package/dist/index.cjs +1 -1
  133. package/dist/index.d.cts +6 -4
  134. package/dist/index.d.ts +6 -4
  135. package/dist/index.js +1 -1
  136. package/dist/index.vue.d.cts +4 -4
  137. package/dist/index.vue.d.ts +4 -4
  138. package/dist/index10.vue.d.cts +3 -3
  139. package/dist/index10.vue.d.ts +3 -3
  140. package/dist/index11.vue.d.cts +3 -3
  141. package/dist/index11.vue.d.ts +2 -2
  142. package/dist/index12.vue.d.cts +2 -2
  143. package/dist/index12.vue.d.ts +1 -1
  144. package/dist/index13.vue.d.cts +1 -1
  145. package/dist/index13.vue.d.ts +2 -2
  146. package/dist/index14.vue.d.cts +2 -2
  147. package/dist/index14.vue.d.ts +7 -7
  148. package/dist/index15.vue.d.cts +7 -7
  149. package/dist/index16.vue.d.ts +1 -1
  150. package/dist/index17.vue.d.cts +1 -1
  151. package/dist/index17.vue.d.ts +2 -2
  152. package/dist/index18.vue.d.cts +2 -2
  153. package/dist/index18.vue.d.ts +2 -2
  154. package/dist/index19.vue.d.cts +2 -2
  155. package/dist/index19.vue.d.ts +1 -8
  156. package/dist/index2.vue.d.cts +1 -1
  157. package/dist/index2.vue.d.ts +1 -1
  158. package/dist/index20.vue.d.cts +1 -1
  159. package/dist/index20.vue.d.ts +1 -1
  160. package/dist/index21.vue.d.cts +2 -2
  161. package/dist/index21.vue.d.ts +2 -2
  162. package/dist/index22.vue.d.cts +3 -3
  163. package/dist/index22.vue.d.ts +3 -3
  164. package/dist/index23.vue.d.cts +1 -1
  165. package/dist/index23.vue.d.ts +1 -1
  166. package/dist/index25.vue.d.cts +4 -4
  167. package/dist/index25.vue.d.ts +4 -4
  168. package/dist/index26.vue.d.cts +1 -1
  169. package/dist/index26.vue.d.ts +1 -1
  170. package/dist/index27.vue.d.cts +3 -3
  171. package/dist/index27.vue.d.ts +3 -3
  172. package/dist/index3.vue.d.cts +4 -4
  173. package/dist/index3.vue.d.ts +4 -4
  174. package/dist/index4.vue.d.cts +1 -8
  175. package/dist/index6.vue.d.ts +2 -2
  176. package/dist/index7.vue.d.cts +2 -2
  177. package/dist/index8.vue.d.ts +3 -3
  178. package/dist/index9.vue.d.cts +3 -3
  179. package/dist/index9.vue.d.ts +3 -3
  180. package/dist/mapUtils.d.cts +2 -2
  181. package/dist/mapUtils.d.ts +2 -2
  182. package/dist/presets.d.cts +8 -2
  183. package/dist/presets.d.ts +8 -2
  184. package/dist/rate.cjs +1 -0
  185. package/dist/rate.js +1 -0
  186. package/dist/slider.cjs +1 -0
  187. package/dist/slider.js +1 -0
  188. package/dist/style.css +10671 -10704
  189. package/dist/time-picker.cjs +1 -0
  190. package/dist/time-picker.js +1 -0
  191. package/dist/upload.cjs +1 -0
  192. package/dist/upload.js +1 -0
  193. package/dist/useActionTask.cjs +1 -0
  194. package/dist/useActionTask.js +1 -0
  195. package/dist/useCalendarEvents.d.cts +1 -1
  196. package/dist/useCalendarEvents.d.ts +1 -1
  197. package/dist/useCollapsePanel.d.cts +6 -6
  198. package/dist/useCollapsePanel.d.ts +6 -6
  199. package/dist/useComponentLocale.cjs +1 -0
  200. package/dist/useComponentLocale.js +1 -0
  201. package/dist/useCropperCore.d.cts +4 -4
  202. package/dist/useCropperCore.d.ts +4 -4
  203. package/dist/useDraggableLayout.d.cts +8 -8
  204. package/dist/useDraggableLayout.d.ts +8 -8
  205. package/dist/useDynamicFormState.cjs +1 -0
  206. package/dist/useDynamicFormState.d.cts +62 -38
  207. package/dist/useDynamicFormState.d.ts +62 -38
  208. package/dist/useDynamicFormState.js +1 -0
  209. package/dist/useEdgeInteraction.d.cts +2 -2
  210. package/dist/useEdgeInteraction.d.ts +2 -2
  211. package/dist/useFullscreen.d.cts +2 -2
  212. package/dist/useFullscreen.d.ts +2 -2
  213. package/dist/useInfiniteScroll.d.cts +1 -1
  214. package/dist/useInfiniteScroll.d.ts +1 -1
  215. package/dist/useQRCode.d.cts +3 -3
  216. package/dist/useQRCode.d.ts +3 -3
  217. package/dist/useSearchState.d.cts +16 -726
  218. package/dist/useSearchState.d.ts +16 -835
  219. package/dist/useSignatureHistory.d.cts +2 -2
  220. package/dist/useSignatureHistory.d.ts +2 -2
  221. package/dist/useSplitResize.d.cts +9 -9
  222. package/dist/useSplitResize.d.ts +9 -9
  223. package/dist/useTableQuery.cjs +3 -3
  224. package/dist/useTableQuery.d.cts +66 -33
  225. package/dist/useTableQuery.d.ts +66 -33
  226. package/dist/useTableQuery.js +3 -3
  227. package/dist/useTimeSelection.d.cts +2 -2
  228. package/dist/useTimeSelection.d.ts +2 -2
  229. package/dist/useTreeOperations.d.cts +4 -4
  230. package/dist/useTreeOperations.d.ts +4 -4
  231. package/dist/useWorkflowValidation.d.cts +3 -3
  232. package/dist/useWorkflowValidation.d.ts +3 -3
  233. package/dist/verification.d.cts +2 -2
  234. package/dist/verification.d.ts +2 -2
  235. package/docs/architecture.en.md +83 -0
  236. package/docs/architecture.md +83 -0
  237. package/docs/assets/README.md +47 -0
  238. package/docs/assets/naive-ui-components-banner.png +0 -0
  239. package/docs/assets/naive-ui-components-banner.svg +69 -0
  240. package/docs/assets/naive-ui-components-logo.png +0 -0
  241. package/docs/assets/naive-ui-components-logo.svg +22 -0
  242. package/docs/components.en.md +118 -0
  243. package/docs/components.md +118 -0
  244. package/docs/engineering.en.md +132 -0
  245. package/docs/engineering.md +133 -0
  246. package/docs/guides/usage.en.md +638 -0
  247. package/docs/guides/usage.md +699 -0
  248. package/docs/performance-0.15.0.md +20 -0
  249. package/docs/security-scan-2026-10-06.md +11 -0
  250. package/docs/security-scan-2026-10-18.md +16 -0
  251. package/package.json +29 -11
  252. package/dist/C_Form2.cjs +0 -1
  253. package/dist/C_Form2.js +0 -1
  254. package/dist/config.cjs +0 -1
  255. package/dist/config.d.cts +0 -33
  256. package/dist/config.d.ts +0 -33
  257. package/dist/config.js +0 -1
@@ -117,8 +117,8 @@ declare const __VLS_export: vue.DefineComponent<CronProps, CronExpose, {}, {}, {
117
117
  "onValidation-change"?: ((result: CronValidation) => any) | undefined;
118
118
  }>, {
119
119
  disabled: boolean;
120
- showPreview: boolean;
121
120
  showTemplates: boolean;
121
+ showPreview: boolean;
122
122
  showSecond: boolean;
123
123
  }, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
124
124
  declare const _default: typeof __VLS_export;
@@ -117,8 +117,8 @@ declare const __VLS_export: vue.DefineComponent<CronProps, CronExpose, {}, {}, {
117
117
  "onValidation-change"?: ((result: CronValidation) => any) | undefined;
118
118
  }>, {
119
119
  disabled: boolean;
120
- showPreview: boolean;
121
120
  showTemplates: boolean;
121
+ showPreview: boolean;
122
122
  showSecond: boolean;
123
123
  }, {}, {}, {}, string, vue.ComponentProvideOptions, false, {}, any>;
124
124
  declare const _default: typeof __VLS_export;
@@ -154,18 +154,18 @@ interface NotificationCenterExpose {
154
154
  //#endregion
155
155
  //#region src/components/C_NotificationCenter/index.vue.d.ts
156
156
  declare const __VLS_export: vue.DefineComponent<NotificationCenterProps, NotificationCenterExpose, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
157
+ read: (ids: string[]) => any;
157
158
  delete: (ids: string[]) => any;
158
159
  itemClick: (message: NotificationMessage) => any;
159
- read: (ids: string[]) => any;
160
160
  allRead: (category?: NotificationCategory | undefined) => any;
161
161
  unreadChange: (count: number) => any;
162
162
  wsStatusChange: (status: WSConnectionStatus) => any;
163
163
  newMessage: (message: NotificationMessage) => any;
164
164
  navigate: (url: string) => any;
165
165
  }, string, vue.PublicProps, Readonly<NotificationCenterProps> & Readonly<{
166
+ onRead?: ((ids: string[]) => any) | undefined;
166
167
  onDelete?: ((ids: string[]) => any) | undefined;
167
168
  onItemClick?: ((message: NotificationMessage) => any) | undefined;
168
- onRead?: ((ids: string[]) => any) | undefined;
169
169
  onAllRead?: ((category?: NotificationCategory | undefined) => any) | undefined;
170
170
  onUnreadChange?: ((count: number) => any) | undefined;
171
171
  onWsStatusChange?: ((status: WSConnectionStatus) => any) | undefined;
@@ -154,18 +154,18 @@ interface NotificationCenterExpose {
154
154
  //#endregion
155
155
  //#region src/components/C_NotificationCenter/index.vue.d.ts
156
156
  declare const __VLS_export: vue.DefineComponent<NotificationCenterProps, NotificationCenterExpose, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
157
+ read: (ids: string[]) => any;
157
158
  delete: (ids: string[]) => any;
158
159
  itemClick: (message: NotificationMessage) => any;
159
- read: (ids: string[]) => any;
160
160
  allRead: (category?: NotificationCategory | undefined) => any;
161
161
  unreadChange: (count: number) => any;
162
162
  wsStatusChange: (status: WSConnectionStatus) => any;
163
163
  newMessage: (message: NotificationMessage) => any;
164
164
  navigate: (url: string) => any;
165
165
  }, string, vue.PublicProps, Readonly<NotificationCenterProps> & Readonly<{
166
+ onRead?: ((ids: string[]) => any) | undefined;
166
167
  onDelete?: ((ids: string[]) => any) | undefined;
167
168
  onItemClick?: ((message: NotificationMessage) => any) | undefined;
168
- onRead?: ((ids: string[]) => any) | undefined;
169
169
  onAllRead?: ((category?: NotificationCategory | undefined) => any) | undefined;
170
170
  onUnreadChange?: ((count: number) => any) | undefined;
171
171
  onWsStatusChange?: ((status: WSConnectionStatus) => any) | undefined;
@@ -198,29 +198,29 @@ type __VLS_Slots = {} & {
198
198
  declare const __VLS_base: vue.DefineComponent<UploadProps, UploadExpose, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
199
199
  change: (fileList: UploadFileItem[]) => any;
200
200
  error: (file: UploadFileItem, error: Error) => any;
201
- progress: (file: UploadFileItem, percent: number) => any;
202
201
  success: (file: UploadFileItem, response: unknown) => any;
202
+ progress: (file: UploadFileItem, percent: number) => any;
203
203
  remove: (file: UploadFileItem) => any;
204
204
  finish: (fileList: UploadFileItem[]) => any;
205
205
  exceed: (files: File[], fileList: UploadFileItem[]) => any;
206
206
  }, string, vue.PublicProps, Readonly<UploadProps> & Readonly<{
207
207
  onChange?: ((fileList: UploadFileItem[]) => any) | undefined;
208
208
  onError?: ((file: UploadFileItem, error: Error) => any) | undefined;
209
- onProgress?: ((file: UploadFileItem, percent: number) => any) | undefined;
210
209
  onSuccess?: ((file: UploadFileItem, response: unknown) => any) | undefined;
210
+ onProgress?: ((file: UploadFileItem, percent: number) => any) | undefined;
211
211
  onRemove?: ((file: UploadFileItem) => any) | undefined;
212
212
  onFinish?: ((fileList: UploadFileItem[]) => any) | undefined;
213
213
  onExceed?: ((files: File[], fileList: UploadFileItem[]) => any) | undefined;
214
214
  }>, {
215
- data: Record<string, unknown>;
216
215
  disabled: boolean;
217
216
  draggable: boolean;
217
+ maxSize: number;
218
+ data: Record<string, unknown>;
218
219
  action: string;
219
220
  headers: Record<string, string>;
220
221
  multiple: boolean;
221
222
  directory: boolean;
222
223
  accept: string;
223
- maxSize: number;
224
224
  maxCount: number;
225
225
  pasteable: boolean;
226
226
  chunked: boolean;
@@ -198,29 +198,29 @@ type __VLS_Slots = {} & {
198
198
  declare const __VLS_base: vue.DefineComponent<UploadProps, UploadExpose, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
199
199
  change: (fileList: UploadFileItem[]) => any;
200
200
  error: (file: UploadFileItem, error: Error) => any;
201
- progress: (file: UploadFileItem, percent: number) => any;
202
201
  success: (file: UploadFileItem, response: unknown) => any;
202
+ progress: (file: UploadFileItem, percent: number) => any;
203
203
  remove: (file: UploadFileItem) => any;
204
204
  finish: (fileList: UploadFileItem[]) => any;
205
205
  exceed: (files: File[], fileList: UploadFileItem[]) => any;
206
206
  }, string, vue.PublicProps, Readonly<UploadProps> & Readonly<{
207
207
  onChange?: ((fileList: UploadFileItem[]) => any) | undefined;
208
208
  onError?: ((file: UploadFileItem, error: Error) => any) | undefined;
209
- onProgress?: ((file: UploadFileItem, percent: number) => any) | undefined;
210
209
  onSuccess?: ((file: UploadFileItem, response: unknown) => any) | undefined;
210
+ onProgress?: ((file: UploadFileItem, percent: number) => any) | undefined;
211
211
  onRemove?: ((file: UploadFileItem) => any) | undefined;
212
212
  onFinish?: ((fileList: UploadFileItem[]) => any) | undefined;
213
213
  onExceed?: ((files: File[], fileList: UploadFileItem[]) => any) | undefined;
214
214
  }>, {
215
- data: Record<string, unknown>;
216
215
  disabled: boolean;
217
216
  draggable: boolean;
217
+ maxSize: number;
218
+ data: Record<string, unknown>;
218
219
  action: string;
219
220
  headers: Record<string, string>;
220
221
  multiple: boolean;
221
222
  directory: boolean;
222
223
  accept: string;
223
- maxSize: number;
224
224
  maxCount: number;
225
225
  pasteable: boolean;
226
226
  chunked: boolean;
@@ -259,10 +259,10 @@ type PlayerInstance = InstanceType<typeof xgplayer.default>;
259
259
  //#region src/components/C_VideoPlayer/index.vue.d.ts
260
260
  declare const __VLS_export: vue.DefineComponent<VideoPlayerProps, VideoPlayerExpose, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
261
261
  error: (error: Error) => any;
262
- ended: () => any;
263
262
  ready: () => any;
264
263
  stateChange: (state: PlayerState) => any;
265
264
  timeUpdate: (currentTime: number, duration: number) => any;
265
+ ended: () => any;
266
266
  qualityChange: (quality: QualityLevel) => any;
267
267
  rateChange: (rate: number) => any;
268
268
  fullscreenChange: (isFullscreen: boolean) => any;
@@ -272,10 +272,10 @@ declare const __VLS_export: vue.DefineComponent<VideoPlayerProps, VideoPlayerExp
272
272
  progressUpdate: (data: ProgressData) => any;
273
273
  }, string, vue.PublicProps, Readonly<VideoPlayerProps> & Readonly<{
274
274
  onError?: ((error: Error) => any) | undefined;
275
- onEnded?: (() => any) | undefined;
276
275
  onReady?: (() => any) | undefined;
277
276
  onStateChange?: ((state: PlayerState) => any) | undefined;
278
277
  onTimeUpdate?: ((currentTime: number, duration: number) => any) | undefined;
278
+ onEnded?: (() => any) | undefined;
279
279
  onQualityChange?: ((quality: QualityLevel) => any) | undefined;
280
280
  onRateChange?: ((rate: number) => any) | undefined;
281
281
  onFullscreenChange?: ((isFullscreen: boolean) => any) | undefined;
@@ -259,10 +259,10 @@ type PlayerInstance = InstanceType<typeof xgplayer.default>;
259
259
  //#region src/components/C_VideoPlayer/index.vue.d.ts
260
260
  declare const __VLS_export: vue.DefineComponent<VideoPlayerProps, VideoPlayerExpose, {}, {}, {}, vue.ComponentOptionsMixin, vue.ComponentOptionsMixin, {
261
261
  error: (error: Error) => any;
262
- ended: () => any;
263
262
  ready: () => any;
264
263
  stateChange: (state: PlayerState) => any;
265
264
  timeUpdate: (currentTime: number, duration: number) => any;
265
+ ended: () => any;
266
266
  qualityChange: (quality: QualityLevel) => any;
267
267
  rateChange: (rate: number) => any;
268
268
  fullscreenChange: (isFullscreen: boolean) => any;
@@ -272,10 +272,10 @@ declare const __VLS_export: vue.DefineComponent<VideoPlayerProps, VideoPlayerExp
272
272
  progressUpdate: (data: ProgressData) => any;
273
273
  }, string, vue.PublicProps, Readonly<VideoPlayerProps> & Readonly<{
274
274
  onError?: ((error: Error) => any) | undefined;
275
- onEnded?: (() => any) | undefined;
276
275
  onReady?: (() => any) | undefined;
277
276
  onStateChange?: ((state: PlayerState) => any) | undefined;
278
277
  onTimeUpdate?: ((currentTime: number, duration: number) => any) | undefined;
278
+ onEnded?: (() => any) | undefined;
279
279
  onQualityChange?: ((quality: QualityLevel) => any) | undefined;
280
280
  onRateChange?: ((rate: number) => any) | undefined;
281
281
  onFullscreenChange?: ((isFullscreen: boolean) => any) | undefined;
@@ -0,0 +1 @@
1
+ const e=Symbol(`robot-component-feedback`),t=Symbol(`robot-component-locale`);Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return t}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return e}});
@@ -0,0 +1 @@
1
+ const e=Symbol(`robot-component-feedback`),t=Symbol(`robot-component-locale`);export{t as n,e as t};
@@ -0,0 +1,24 @@
1
+ //#region src/core/contracts.d.ts
2
+ /** UI-independent feedback and locale protocols. No framework runtime is imported here. */
3
+ interface ConfirmOptions {
4
+ title: string;
5
+ content: string;
6
+ positiveText?: string;
7
+ negativeText?: string;
8
+ type?: 'warning' | 'error' | 'info' | 'success';
9
+ }
10
+ interface ComponentFeedback {
11
+ success?: (message: string) => void;
12
+ error?: (message: string, cause?: unknown) => void;
13
+ warning?: (message: string) => void;
14
+ info?: (message: string) => void;
15
+ confirm?: (options: ConfirmOptions) => boolean | Promise<boolean>;
16
+ }
17
+ type ComponentLocaleName = 'zh-CN' | 'en-US';
18
+ interface ComponentLocale {
19
+ locale?: ComponentLocaleName;
20
+ messages?: Record<string, string>;
21
+ t?: (key: string, params?: Record<string, string | number>) => string;
22
+ }
23
+ //#endregion
24
+ export { ConfirmOptions as i, ComponentLocale as n, ComponentLocaleName as r, ComponentFeedback as t };
@@ -0,0 +1,24 @@
1
+ //#region src/core/contracts.d.ts
2
+ /** UI-independent feedback and locale protocols. No framework runtime is imported here. */
3
+ interface ConfirmOptions {
4
+ title: string;
5
+ content: string;
6
+ positiveText?: string;
7
+ negativeText?: string;
8
+ type?: 'warning' | 'error' | 'info' | 'success';
9
+ }
10
+ interface ComponentFeedback {
11
+ success?: (message: string) => void;
12
+ error?: (message: string, cause?: unknown) => void;
13
+ warning?: (message: string) => void;
14
+ info?: (message: string) => void;
15
+ confirm?: (options: ConfirmOptions) => boolean | Promise<boolean>;
16
+ }
17
+ type ComponentLocaleName = 'zh-CN' | 'en-US';
18
+ interface ComponentLocale {
19
+ locale?: ComponentLocaleName;
20
+ messages?: Record<string, string>;
21
+ t?: (key: string, params?: Record<string, string | number>) => string;
22
+ }
23
+ //#endregion
24
+ export { ConfirmOptions as i, ComponentLocale as n, ComponentLocaleName as r, ComponentFeedback as t };
@@ -1 +1 @@
1
- require(`./chunk.cjs`);const e=require(`./config.cjs`),t=require(`./export-helper.cjs`);let n=require(`vue`),r=require(`naive-ui`);const i={class:`c-page-loading__card`,role:`status`,"aria-live":`polite`,"aria-atomic":`true`},a={class:`c-page-loading__label`},o={key:0,class:`c-page-loading__description`},s=(0,n.defineComponent)({name:`C_PageLoading`,__name:`index`,props:{show:{type:Boolean},label:{},description:{},color:{}},setup(t){let s=(0,r.useThemeVars)(),{t:c}=e.i();return(e,r)=>((0,n.openBlock)(),(0,n.createBlock)(n.Teleport,{to:`body`},[(0,n.createVNode)(n.Transition,{name:`c-page-loading-fade`},{default:(0,n.withCtx)(()=>[t.show?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{key:0,class:`c-page-loading`,style:(0,n.normalizeStyle)({"--c-page-loading-surface":(0,n.unref)(s).cardColor,"--c-page-loading-body":(0,n.unref)(s).bodyColor,"--c-page-loading-border":(0,n.unref)(s).dividerColor,"--c-page-loading-text":(0,n.unref)(s).textColor1,"--c-page-loading-muted":(0,n.unref)(s).textColor3,color:t.color||(0,n.unref)(s).primaryColor})},[(0,n.createElementVNode)(`div`,i,[r[0]||=(0,n.createElementVNode)(`svg`,{class:`c-page-loading__glyph`,viewBox:`0 0 80 80`,fill:`none`,"aria-hidden":`true`,focusable:`false`},[(0,n.createElementVNode)(`circle`,{cx:`40`,cy:`40`,r:`35`,stroke:`currentColor`,"stroke-opacity":`.08`}),(0,n.createElementVNode)(`circle`,{class:`c-page-loading__outer`,cx:`40`,cy:`40`,r:`35`,stroke:`currentColor`,"stroke-opacity":`.38`,"stroke-width":`2`,"stroke-dasharray":`64 156`,"stroke-linecap":`round`}),(0,n.createElementVNode)(`circle`,{class:`c-page-loading__inner`,cx:`40`,cy:`40`,r:`24`,stroke:`currentColor`,"stroke-opacity":`.24`,"stroke-width":`1.5`,"stroke-dasharray":`34 117`,"stroke-linecap":`round`}),(0,n.createElementVNode)(`circle`,{class:`c-page-loading__pulse`,cx:`40`,cy:`40`,r:`17`,fill:`currentColor`,"fill-opacity":`.06`}),(0,n.createElementVNode)(`path`,{class:`c-page-loading__wave`,d:`M11 40 Q20.5 27 30 40 Q39.5 53 49 40 Q58.5 27 68 40`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`}),(0,n.createElementVNode)(`circle`,{cx:`40`,cy:`40`,r:`3`,fill:`currentColor`})],-1),(0,n.createElementVNode)(`span`,a,(0,n.toDisplayString)(t.label||(0,n.unref)(c)(`common.loading`)),1),t.description?((0,n.openBlock)(),(0,n.createElementBlock)(`span`,o,(0,n.toDisplayString)(t.description),1)):(0,n.createCommentVNode)(`v-if`,!0),r[1]||=(0,n.createElementVNode)(`span`,{class:`c-page-loading__track`,"aria-hidden":`true`},null,-1)])],4)):(0,n.createCommentVNode)(`v-if`,!0)]),_:1})]))}});var c=t.t(s,[[`__scopeId`,`data-v-aec6cc81`]]);function l(e={}){let t=(0,n.ref)(!1),r=e.delay??160,i=Number.isFinite(r)?Math.max(0,r):160,a=0,o,s=()=>{o!==void 0&&clearTimeout(o),o=void 0};return{visible:(0,n.readonly)(t),start:()=>{s();let e=++a;return t.value||(o=setTimeout(()=>{o=void 0,e===a&&(t.value=!0)},i)),e},finish:e=>{e===a&&(s(),t.value=!1)},reset:()=>{a++,s(),t.value=!1}}}Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return c}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return l}});
1
+ require(`./chunk.cjs`);const e=require(`./useComponentLocale.cjs`),t=require(`./export-helper.cjs`);let n=require(`vue`),r=require(`naive-ui`);const i={class:`c-page-loading__card`,role:`status`,"aria-live":`polite`,"aria-atomic":`true`},a={class:`c-page-loading__label`},o={key:0,class:`c-page-loading__description`},s=(0,n.defineComponent)({name:`C_PageLoading`,__name:`index`,props:{show:{type:Boolean},label:{},description:{},color:{}},setup(t){let s=(0,r.useThemeVars)(),{t:c}=e.t();return(e,r)=>((0,n.openBlock)(),(0,n.createBlock)(n.Teleport,{to:`body`},[(0,n.createVNode)(n.Transition,{name:`c-page-loading-fade`},{default:(0,n.withCtx)(()=>[t.show?((0,n.openBlock)(),(0,n.createElementBlock)(`div`,{key:0,class:`c-page-loading`,style:(0,n.normalizeStyle)({"--c-page-loading-surface":(0,n.unref)(s).cardColor,"--c-page-loading-body":(0,n.unref)(s).bodyColor,"--c-page-loading-border":(0,n.unref)(s).dividerColor,"--c-page-loading-text":(0,n.unref)(s).textColor1,"--c-page-loading-muted":(0,n.unref)(s).textColor3,color:t.color||(0,n.unref)(s).primaryColor})},[(0,n.createElementVNode)(`div`,i,[r[0]||=(0,n.createElementVNode)(`svg`,{class:`c-page-loading__glyph`,viewBox:`0 0 80 80`,fill:`none`,"aria-hidden":`true`,focusable:`false`},[(0,n.createElementVNode)(`circle`,{cx:`40`,cy:`40`,r:`35`,stroke:`currentColor`,"stroke-opacity":`.08`}),(0,n.createElementVNode)(`circle`,{class:`c-page-loading__outer`,cx:`40`,cy:`40`,r:`35`,stroke:`currentColor`,"stroke-opacity":`.38`,"stroke-width":`2`,"stroke-dasharray":`64 156`,"stroke-linecap":`round`}),(0,n.createElementVNode)(`circle`,{class:`c-page-loading__inner`,cx:`40`,cy:`40`,r:`24`,stroke:`currentColor`,"stroke-opacity":`.24`,"stroke-width":`1.5`,"stroke-dasharray":`34 117`,"stroke-linecap":`round`}),(0,n.createElementVNode)(`circle`,{class:`c-page-loading__pulse`,cx:`40`,cy:`40`,r:`17`,fill:`currentColor`,"fill-opacity":`.06`}),(0,n.createElementVNode)(`path`,{class:`c-page-loading__wave`,d:`M11 40 Q20.5 27 30 40 Q39.5 53 49 40 Q58.5 27 68 40`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`}),(0,n.createElementVNode)(`circle`,{cx:`40`,cy:`40`,r:`3`,fill:`currentColor`})],-1),(0,n.createElementVNode)(`span`,a,(0,n.toDisplayString)(t.label||(0,n.unref)(c)(`common.loading`)),1),t.description?((0,n.openBlock)(),(0,n.createElementBlock)(`span`,o,(0,n.toDisplayString)(t.description),1)):(0,n.createCommentVNode)(`v-if`,!0),r[1]||=(0,n.createElementVNode)(`span`,{class:`c-page-loading__track`,"aria-hidden":`true`},null,-1)])],4)):(0,n.createCommentVNode)(`v-if`,!0)]),_:1})]))}});var c=t.t(s,[[`__scopeId`,`data-v-ddb14af3`]]);function l(e={}){let t=(0,n.ref)(!1),r=e.delay??160,i=Number.isFinite(r)?Math.max(0,r):160,a=0,o,s=()=>{o!==void 0&&clearTimeout(o),o=void 0};return{visible:(0,n.readonly)(t),start:()=>{s();let e=++a;return t.value||(o=setTimeout(()=>{o=void 0,e===a&&(t.value=!0)},i)),e},finish:e=>{e===a&&(s(),t.value=!1)},reset:()=>{a++,s(),t.value=!1}}}Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return c}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return l}});
@@ -1 +1 @@
1
- import{i as e}from"./config.js";import{t}from"./export-helper.js";import{Teleport as n,Transition as r,createBlock as i,createCommentVNode as a,createElementBlock as o,createElementVNode as s,createVNode as c,defineComponent as l,normalizeStyle as u,openBlock as d,readonly as f,ref as p,toDisplayString as m,unref as h,withCtx as g}from"vue";import{useThemeVars as _}from"naive-ui";const v={class:`c-page-loading__card`,role:`status`,"aria-live":`polite`,"aria-atomic":`true`},y={class:`c-page-loading__label`},b={key:0,class:`c-page-loading__description`};var x=t(l({name:`C_PageLoading`,__name:`index`,props:{show:{type:Boolean},label:{},description:{},color:{}},setup(t){let l=_(),{t:f}=e();return(e,p)=>(d(),i(n,{to:`body`},[c(r,{name:`c-page-loading-fade`},{default:g(()=>[t.show?(d(),o(`div`,{key:0,class:`c-page-loading`,style:u({"--c-page-loading-surface":h(l).cardColor,"--c-page-loading-body":h(l).bodyColor,"--c-page-loading-border":h(l).dividerColor,"--c-page-loading-text":h(l).textColor1,"--c-page-loading-muted":h(l).textColor3,color:t.color||h(l).primaryColor})},[s(`div`,v,[p[0]||=s(`svg`,{class:`c-page-loading__glyph`,viewBox:`0 0 80 80`,fill:`none`,"aria-hidden":`true`,focusable:`false`},[s(`circle`,{cx:`40`,cy:`40`,r:`35`,stroke:`currentColor`,"stroke-opacity":`.08`}),s(`circle`,{class:`c-page-loading__outer`,cx:`40`,cy:`40`,r:`35`,stroke:`currentColor`,"stroke-opacity":`.38`,"stroke-width":`2`,"stroke-dasharray":`64 156`,"stroke-linecap":`round`}),s(`circle`,{class:`c-page-loading__inner`,cx:`40`,cy:`40`,r:`24`,stroke:`currentColor`,"stroke-opacity":`.24`,"stroke-width":`1.5`,"stroke-dasharray":`34 117`,"stroke-linecap":`round`}),s(`circle`,{class:`c-page-loading__pulse`,cx:`40`,cy:`40`,r:`17`,fill:`currentColor`,"fill-opacity":`.06`}),s(`path`,{class:`c-page-loading__wave`,d:`M11 40 Q20.5 27 30 40 Q39.5 53 49 40 Q58.5 27 68 40`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`}),s(`circle`,{cx:`40`,cy:`40`,r:`3`,fill:`currentColor`})],-1),s(`span`,y,m(t.label||h(f)(`common.loading`)),1),t.description?(d(),o(`span`,b,m(t.description),1)):a(`v-if`,!0),p[1]||=s(`span`,{class:`c-page-loading__track`,"aria-hidden":`true`},null,-1)])],4)):a(`v-if`,!0)]),_:1})]))}}),[[`__scopeId`,`data-v-aec6cc81`]]);function S(e={}){let t=p(!1),n=e.delay??160,r=Number.isFinite(n)?Math.max(0,n):160,i=0,a,o=()=>{a!==void 0&&clearTimeout(a),a=void 0};return{visible:f(t),start:()=>{o();let e=++i;return t.value||(a=setTimeout(()=>{a=void 0,e===i&&(t.value=!0)},r)),e},finish:e=>{e===i&&(o(),t.value=!1)},reset:()=>{i++,o(),t.value=!1}}}export{x as n,S as t};
1
+ import{t as e}from"./useComponentLocale.js";import{t}from"./export-helper.js";import{Teleport as n,Transition as r,createBlock as i,createCommentVNode as a,createElementBlock as o,createElementVNode as s,createVNode as c,defineComponent as l,normalizeStyle as u,openBlock as d,readonly as f,ref as p,toDisplayString as m,unref as h,withCtx as g}from"vue";import{useThemeVars as _}from"naive-ui";const v={class:`c-page-loading__card`,role:`status`,"aria-live":`polite`,"aria-atomic":`true`},y={class:`c-page-loading__label`},b={key:0,class:`c-page-loading__description`};var x=t(l({name:`C_PageLoading`,__name:`index`,props:{show:{type:Boolean},label:{},description:{},color:{}},setup(t){let l=_(),{t:f}=e();return(e,p)=>(d(),i(n,{to:`body`},[c(r,{name:`c-page-loading-fade`},{default:g(()=>[t.show?(d(),o(`div`,{key:0,class:`c-page-loading`,style:u({"--c-page-loading-surface":h(l).cardColor,"--c-page-loading-body":h(l).bodyColor,"--c-page-loading-border":h(l).dividerColor,"--c-page-loading-text":h(l).textColor1,"--c-page-loading-muted":h(l).textColor3,color:t.color||h(l).primaryColor})},[s(`div`,v,[p[0]||=s(`svg`,{class:`c-page-loading__glyph`,viewBox:`0 0 80 80`,fill:`none`,"aria-hidden":`true`,focusable:`false`},[s(`circle`,{cx:`40`,cy:`40`,r:`35`,stroke:`currentColor`,"stroke-opacity":`.08`}),s(`circle`,{class:`c-page-loading__outer`,cx:`40`,cy:`40`,r:`35`,stroke:`currentColor`,"stroke-opacity":`.38`,"stroke-width":`2`,"stroke-dasharray":`64 156`,"stroke-linecap":`round`}),s(`circle`,{class:`c-page-loading__inner`,cx:`40`,cy:`40`,r:`24`,stroke:`currentColor`,"stroke-opacity":`.24`,"stroke-width":`1.5`,"stroke-dasharray":`34 117`,"stroke-linecap":`round`}),s(`circle`,{class:`c-page-loading__pulse`,cx:`40`,cy:`40`,r:`17`,fill:`currentColor`,"fill-opacity":`.06`}),s(`path`,{class:`c-page-loading__wave`,d:`M11 40 Q20.5 27 30 40 Q39.5 53 49 40 Q58.5 27 68 40`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`}),s(`circle`,{cx:`40`,cy:`40`,r:`3`,fill:`currentColor`})],-1),s(`span`,y,m(t.label||h(f)(`common.loading`)),1),t.description?(d(),o(`span`,b,m(t.description),1)):a(`v-if`,!0),p[1]||=s(`span`,{class:`c-page-loading__track`,"aria-hidden":`true`},null,-1)])],4)):a(`v-if`,!0)]),_:1})]))}}),[[`__scopeId`,`data-v-ddb14af3`]]);function S(e={}){let t=p(!1),n=e.delay??160,r=Number.isFinite(n)?Math.max(0,n):160,i=0,a,o=()=>{a!==void 0&&clearTimeout(a),a=void 0};return{visible:f(t),start:()=>{o();let e=++i;return t.value||(a=setTimeout(()=>{a=void 0,e===i&&(t.value=!0)},r)),e},finish:e=>{e===i&&(o(),t.value=!1)},reset:()=>{i++,o(),t.value=!1}}}export{x as n,S as t};
package/dist/data.cjs CHANGED
@@ -1 +1 @@
1
- require(`./chunk.cjs`);let e=require(`vue`);const t=new Set([`__proto__`,`prototype`,`constructor`]);function n(e){let n=e.replace(/\[([^\]]+)\]/g,`.$1`).split(`.`).map(e=>e.trim().replace(/^['"]|['"]$/g,``)).filter(Boolean);if(n.length===0)throw TypeError(`Data path cannot be empty`);if(n.some(e=>t.has(e)))throw TypeError(`Unsafe data path: ${e}`);return n}function r(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return!0;let r=e;for(let e of n(t)){if(typeof r!=`object`||!r||!Object.prototype.hasOwnProperty.call(r,e))return!1;r=r[e]}return!0}function i(e,t){return Object.prototype.hasOwnProperty.call(e,t)?e[t]:n(t).reduce((e,t)=>{if(!(typeof e!=`object`||!e))return e[t]},e)}function a(e,t,r){if(Object.prototype.hasOwnProperty.call(e,t)){e[t]=r;return}let i=n(t),a=e;i.forEach((e,t)=>{if(t===i.length-1){a[e]=r;return}let n=a[e];(typeof n!=`object`||!n)&&(a[e]=/^\d+$/.test(i[t+1])?[]:{}),a=a[e]})}function o(e,t){if(Object.prototype.hasOwnProperty.call(e,t)){delete e[t];return}let r=n(t),i=r.pop();if(!i)return;let a=r.reduce((e,t)=>{if(!(typeof e!=`object`||!e))return e[t]},e);a&&typeof a==`object`&&delete a[i]}function s(t){return(0,e.isProxy)(t)?(0,e.toRaw)(t):t}function c(e,t){let n=s(e);if(typeof n!=`object`||!n)return n;if(t.has(n))return t.get(n);if(n instanceof Date)return new Date(n.getTime());if(n instanceof RegExp)return new RegExp(n);if(n instanceof ArrayBuffer)return n.slice(0);if(Array.isArray(n)){let e=[];return t.set(n,e),n.forEach(n=>e.push(c(n,t))),e}if(n instanceof Map){let e=new Map;return t.set(n,e),n.forEach((n,r)=>{e.set(c(r,t),c(n,t))}),e}if(n instanceof Set){let e=new Set;return t.set(n,e),n.forEach(n=>e.add(c(n,t))),e}let r=Object.getPrototypeOf(n);if(r!==Object.prototype&&r!==null)return n;let i={};return t.set(n,i),Reflect.ownKeys(n).forEach(e=>{typeof e==`string`&&(i[e]=c(n[e],t))}),i}function l(e){let t=s(e);if(typeof structuredClone==`function`)try{return structuredClone(t)}catch{}return c(t,new WeakMap)}function u(e,t,n){if(n.get(e)===t)return!0;if(n.set(e,t),e instanceof Date||t instanceof Date)return e instanceof Date&&t instanceof Date&&e.getTime()===t.getTime();if(e instanceof RegExp||t instanceof RegExp)return e instanceof RegExp&&t instanceof RegExp&&e.source===t.source&&e.flags===t.flags;if(Array.isArray(e)||Array.isArray(t))return Array.isArray(e)&&Array.isArray(t)&&e.length===t.length&&e.every((e,r)=>d(e,t[r],n));if(e instanceof Map||t instanceof Map)return!(e instanceof Map)||!(t instanceof Map)||e.size!==t.size?!1:[...e.entries()].every(([e,r])=>t.has(e)?d(r,t.get(e),n):!1);if(e instanceof Set||t instanceof Set)return!(e instanceof Set)||!(t instanceof Set)||e.size!==t.size?!1:[...e].every(e=>t.has(e));let r=Object.keys(e),i=Object.keys(t);return r.length===i.length?r.every(r=>Object.prototype.hasOwnProperty.call(t,r)&&d(e[r],t[r],n)):!1}function d(e,t,n){let r=s(e),i=s(t);return Object.is(r,i)?!0:r===null||i===null||typeof r!=`object`||typeof i!=`object`?!1:u(r,i,n)}function f(e,t){return d(e,t,new WeakMap)}function p(e,t){let n=l(t);Object.keys(e).forEach(t=>{Object.prototype.hasOwnProperty.call(n,t)||delete e[t]}),Object.assign(e,n)}Object.defineProperty(exports,`a`,{enumerable:!0,get:function(){return f}}),Object.defineProperty(exports,`i`,{enumerable:!0,get:function(){return r}}),Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return o}}),Object.defineProperty(exports,`o`,{enumerable:!0,get:function(){return p}}),Object.defineProperty(exports,`r`,{enumerable:!0,get:function(){return i}}),Object.defineProperty(exports,`s`,{enumerable:!0,get:function(){return a}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return l}});
1
+ require(`./chunk.cjs`);let e=require(`vue`);const t=new Set([`__proto__`,`prototype`,`constructor`]);function n(e){let n=e.replace(/\[([^\]]+)\]/g,`.$1`).split(`.`).map(e=>e.trim().replace(/^['"]|['"]$/g,``)).filter(Boolean);if(n.length===0)throw TypeError(`Data path cannot be empty`);if(n.some(e=>t.has(e)))throw TypeError(`Unsafe data path: ${e}`);return n}function r(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return!0;let r=e;for(let e of n(t)){if(typeof r!=`object`||!r||!Object.prototype.hasOwnProperty.call(r,e))return!1;r=r[e]}return!0}function i(e,t){return Object.prototype.hasOwnProperty.call(e,t)?e[t]:n(t).reduce((e,t)=>{if(!(typeof e!=`object`||!e))return e[t]},e)}function a(e,t,r){if(Object.prototype.hasOwnProperty.call(e,t)){e[t]=r;return}let i=n(t),a=e;i.forEach((e,t)=>{if(t===i.length-1){a[e]=r;return}let n=a[e];(typeof n!=`object`||!n)&&(a[e]=/^\d+$/.test(i[t+1])?[]:{}),a=a[e]})}function o(e,t){if(Object.prototype.hasOwnProperty.call(e,t)){delete e[t];return}let r=n(t),i=r.pop();if(!i)return;let a=r.reduce((e,t)=>{if(!(typeof e!=`object`||!e))return e[t]},e);a&&typeof a==`object`&&delete a[i]}function s(t){return(0,e.isProxy)(t)?(0,e.toRaw)(t):t}function c(e,t){let n=s(e);if(typeof n!=`object`||!n)return n;if(t.has(n))return t.get(n);if(n instanceof Date)return new Date(n.getTime());if(n instanceof RegExp)return new RegExp(n);if(n instanceof ArrayBuffer)return n.slice(0);if(Array.isArray(n)){let e=[];return t.set(n,e),n.forEach(n=>e.push(c(n,t))),e}if(n instanceof Map){let e=new Map;return t.set(n,e),n.forEach((n,r)=>{e.set(c(r,t),c(n,t))}),e}if(n instanceof Set){let e=new Set;return t.set(n,e),n.forEach(n=>e.add(c(n,t))),e}let r=Object.getPrototypeOf(n);if(r!==Object.prototype&&r!==null)return n;let i={};return t.set(n,i),Reflect.ownKeys(n).forEach(e=>{typeof e==`string`&&(i[e]=c(n[e],t))}),i}function l(e){let t=s(e);if(typeof structuredClone==`function`)try{return structuredClone(t)}catch{}return c(t,new WeakMap)}function u(e,t,n){if(n.get(e)===t)return!0;if(n.set(e,t),e instanceof Date||t instanceof Date)return e instanceof Date&&t instanceof Date&&e.getTime()===t.getTime();if(e instanceof RegExp||t instanceof RegExp)return e instanceof RegExp&&t instanceof RegExp&&e.source===t.source&&e.flags===t.flags;if(Array.isArray(e)||Array.isArray(t))return Array.isArray(e)&&Array.isArray(t)&&e.length===t.length&&e.every((e,r)=>d(e,t[r],n));if(e instanceof Map||t instanceof Map)return!(e instanceof Map)||!(t instanceof Map)||e.size!==t.size?!1:[...e.entries()].every(([e,r])=>t.has(e)?d(r,t.get(e),n):!1);if(e instanceof Set||t instanceof Set)return!(e instanceof Set)||!(t instanceof Set)||e.size!==t.size?!1:[...e].every(e=>t.has(e));let r=Object.keys(e),i=Object.keys(t);return r.length===i.length?r.every(r=>Object.prototype.hasOwnProperty.call(t,r)&&d(e[r],t[r],n)):!1}function d(e,t,n){let r=s(e),i=s(t);return Object.is(r,i)?!0:r===null||i===null||typeof r!=`object`||typeof i!=`object`?!1:u(r,i,n)}function f(e,t){return d(e,t,new WeakMap)}function p(e,t){let n=l(t);Object.keys(e).forEach(t=>{Object.prototype.hasOwnProperty.call(n,t)||delete e[t]}),Object.assign(e,n)}Object.defineProperty(exports,`a`,{enumerable:!0,get:function(){return f}}),Object.defineProperty(exports,`c`,{enumerable:!0,get:function(){return a}}),Object.defineProperty(exports,`i`,{enumerable:!0,get:function(){return r}}),Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return o}}),Object.defineProperty(exports,`o`,{enumerable:!0,get:function(){return n}}),Object.defineProperty(exports,`r`,{enumerable:!0,get:function(){return i}}),Object.defineProperty(exports,`s`,{enumerable:!0,get:function(){return p}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return l}});
package/dist/data.d.cts CHANGED
@@ -78,13 +78,13 @@ declare const __VLS_base: vue.DefineComponent<CTabsProps, {
78
78
  modelValue: TabsValue | null;
79
79
  type: TabsType;
80
80
  size: TabsSize;
81
- closable: boolean;
81
+ justifyContent: TabsJustifyContent;
82
+ items: readonly TabsItem[];
82
83
  addable: boolean;
84
+ closable: boolean;
85
+ animated: boolean;
83
86
  defaultValue: TabsValue | null;
84
- items: readonly TabsItem[];
85
87
  placement: TabsPlacement;
86
- justifyContent: TabsJustifyContent;
87
- animated: boolean;
88
88
  tabsOnly: boolean;
89
89
  displayDirective: TabsDisplayDirective;
90
90
  paneClass: string;
package/dist/data.d.ts CHANGED
@@ -78,13 +78,13 @@ declare const __VLS_base: vue.DefineComponent<CTabsProps, {
78
78
  modelValue: TabsValue | null;
79
79
  type: TabsType;
80
80
  size: TabsSize;
81
- closable: boolean;
81
+ justifyContent: TabsJustifyContent;
82
+ items: readonly TabsItem[];
82
83
  addable: boolean;
84
+ closable: boolean;
85
+ animated: boolean;
83
86
  defaultValue: TabsValue | null;
84
- items: readonly TabsItem[];
85
87
  placement: TabsPlacement;
86
- justifyContent: TabsJustifyContent;
87
- animated: boolean;
88
88
  tabsOnly: boolean;
89
89
  displayDirective: TabsDisplayDirective;
90
90
  paneClass: string;
package/dist/data.js CHANGED
@@ -1 +1 @@
1
- import{isProxy as e,toRaw as t}from"vue";const n=new Set([`__proto__`,`prototype`,`constructor`]);function r(e){let t=e.replace(/\[([^\]]+)\]/g,`.$1`).split(`.`).map(e=>e.trim().replace(/^['"]|['"]$/g,``)).filter(Boolean);if(t.length===0)throw TypeError(`Data path cannot be empty`);if(t.some(e=>n.has(e)))throw TypeError(`Unsafe data path: ${e}`);return t}function i(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return!0;let n=e;for(let e of r(t)){if(typeof n!=`object`||!n||!Object.prototype.hasOwnProperty.call(n,e))return!1;n=n[e]}return!0}function a(e,t){return Object.prototype.hasOwnProperty.call(e,t)?e[t]:r(t).reduce((e,t)=>{if(!(typeof e!=`object`||!e))return e[t]},e)}function o(e,t,n){if(Object.prototype.hasOwnProperty.call(e,t)){e[t]=n;return}let i=r(t),a=e;i.forEach((e,t)=>{if(t===i.length-1){a[e]=n;return}let r=a[e];(typeof r!=`object`||!r)&&(a[e]=/^\d+$/.test(i[t+1])?[]:{}),a=a[e]})}function s(e,t){if(Object.prototype.hasOwnProperty.call(e,t)){delete e[t];return}let n=r(t),i=n.pop();if(!i)return;let a=n.reduce((e,t)=>{if(!(typeof e!=`object`||!e))return e[t]},e);a&&typeof a==`object`&&delete a[i]}function c(n){return e(n)?t(n):n}function l(e,t){let n=c(e);if(typeof n!=`object`||!n)return n;if(t.has(n))return t.get(n);if(n instanceof Date)return new Date(n.getTime());if(n instanceof RegExp)return new RegExp(n);if(n instanceof ArrayBuffer)return n.slice(0);if(Array.isArray(n)){let e=[];return t.set(n,e),n.forEach(n=>e.push(l(n,t))),e}if(n instanceof Map){let e=new Map;return t.set(n,e),n.forEach((n,r)=>{e.set(l(r,t),l(n,t))}),e}if(n instanceof Set){let e=new Set;return t.set(n,e),n.forEach(n=>e.add(l(n,t))),e}let r=Object.getPrototypeOf(n);if(r!==Object.prototype&&r!==null)return n;let i={};return t.set(n,i),Reflect.ownKeys(n).forEach(e=>{typeof e==`string`&&(i[e]=l(n[e],t))}),i}function u(e){let t=c(e);if(typeof structuredClone==`function`)try{return structuredClone(t)}catch{}return l(t,new WeakMap)}function d(e,t,n){if(n.get(e)===t)return!0;if(n.set(e,t),e instanceof Date||t instanceof Date)return e instanceof Date&&t instanceof Date&&e.getTime()===t.getTime();if(e instanceof RegExp||t instanceof RegExp)return e instanceof RegExp&&t instanceof RegExp&&e.source===t.source&&e.flags===t.flags;if(Array.isArray(e)||Array.isArray(t))return Array.isArray(e)&&Array.isArray(t)&&e.length===t.length&&e.every((e,r)=>f(e,t[r],n));if(e instanceof Map||t instanceof Map)return!(e instanceof Map)||!(t instanceof Map)||e.size!==t.size?!1:[...e.entries()].every(([e,r])=>t.has(e)?f(r,t.get(e),n):!1);if(e instanceof Set||t instanceof Set)return!(e instanceof Set)||!(t instanceof Set)||e.size!==t.size?!1:[...e].every(e=>t.has(e));let r=Object.keys(e),i=Object.keys(t);return r.length===i.length?r.every(r=>Object.prototype.hasOwnProperty.call(t,r)&&f(e[r],t[r],n)):!1}function f(e,t,n){let r=c(e),i=c(t);return Object.is(r,i)?!0:r===null||i===null||typeof r!=`object`||typeof i!=`object`?!1:d(r,i,n)}function p(e,t){return f(e,t,new WeakMap)}function m(e,t){let n=u(t);Object.keys(e).forEach(t=>{Object.prototype.hasOwnProperty.call(n,t)||delete e[t]}),Object.assign(e,n)}export{p as a,i,s as n,m as o,a as r,o as s,u as t};
1
+ import{isProxy as e,toRaw as t}from"vue";const n=new Set([`__proto__`,`prototype`,`constructor`]);function r(e){let t=e.replace(/\[([^\]]+)\]/g,`.$1`).split(`.`).map(e=>e.trim().replace(/^['"]|['"]$/g,``)).filter(Boolean);if(t.length===0)throw TypeError(`Data path cannot be empty`);if(t.some(e=>n.has(e)))throw TypeError(`Unsafe data path: ${e}`);return t}function i(e,t){if(Object.prototype.hasOwnProperty.call(e,t))return!0;let n=e;for(let e of r(t)){if(typeof n!=`object`||!n||!Object.prototype.hasOwnProperty.call(n,e))return!1;n=n[e]}return!0}function a(e,t){return Object.prototype.hasOwnProperty.call(e,t)?e[t]:r(t).reduce((e,t)=>{if(!(typeof e!=`object`||!e))return e[t]},e)}function o(e,t,n){if(Object.prototype.hasOwnProperty.call(e,t)){e[t]=n;return}let i=r(t),a=e;i.forEach((e,t)=>{if(t===i.length-1){a[e]=n;return}let r=a[e];(typeof r!=`object`||!r)&&(a[e]=/^\d+$/.test(i[t+1])?[]:{}),a=a[e]})}function s(e,t){if(Object.prototype.hasOwnProperty.call(e,t)){delete e[t];return}let n=r(t),i=n.pop();if(!i)return;let a=n.reduce((e,t)=>{if(!(typeof e!=`object`||!e))return e[t]},e);a&&typeof a==`object`&&delete a[i]}function c(n){return e(n)?t(n):n}function l(e,t){let n=c(e);if(typeof n!=`object`||!n)return n;if(t.has(n))return t.get(n);if(n instanceof Date)return new Date(n.getTime());if(n instanceof RegExp)return new RegExp(n);if(n instanceof ArrayBuffer)return n.slice(0);if(Array.isArray(n)){let e=[];return t.set(n,e),n.forEach(n=>e.push(l(n,t))),e}if(n instanceof Map){let e=new Map;return t.set(n,e),n.forEach((n,r)=>{e.set(l(r,t),l(n,t))}),e}if(n instanceof Set){let e=new Set;return t.set(n,e),n.forEach(n=>e.add(l(n,t))),e}let r=Object.getPrototypeOf(n);if(r!==Object.prototype&&r!==null)return n;let i={};return t.set(n,i),Reflect.ownKeys(n).forEach(e=>{typeof e==`string`&&(i[e]=l(n[e],t))}),i}function u(e){let t=c(e);if(typeof structuredClone==`function`)try{return structuredClone(t)}catch{}return l(t,new WeakMap)}function d(e,t,n){if(n.get(e)===t)return!0;if(n.set(e,t),e instanceof Date||t instanceof Date)return e instanceof Date&&t instanceof Date&&e.getTime()===t.getTime();if(e instanceof RegExp||t instanceof RegExp)return e instanceof RegExp&&t instanceof RegExp&&e.source===t.source&&e.flags===t.flags;if(Array.isArray(e)||Array.isArray(t))return Array.isArray(e)&&Array.isArray(t)&&e.length===t.length&&e.every((e,r)=>f(e,t[r],n));if(e instanceof Map||t instanceof Map)return!(e instanceof Map)||!(t instanceof Map)||e.size!==t.size?!1:[...e.entries()].every(([e,r])=>t.has(e)?f(r,t.get(e),n):!1);if(e instanceof Set||t instanceof Set)return!(e instanceof Set)||!(t instanceof Set)||e.size!==t.size?!1:[...e].every(e=>t.has(e));let r=Object.keys(e),i=Object.keys(t);return r.length===i.length?r.every(r=>Object.prototype.hasOwnProperty.call(t,r)&&f(e[r],t[r],n)):!1}function f(e,t,n){let r=c(e),i=c(t);return Object.is(r,i)?!0:r===null||i===null||typeof r!=`object`||typeof i!=`object`?!1:d(r,i,n)}function p(e,t){return f(e,t,new WeakMap)}function m(e,t){let n=u(t);Object.keys(e).forEach(t=>{Object.prototype.hasOwnProperty.call(n,t)||delete e[t]}),Object.assign(e,n)}export{p as a,o as c,i,s as n,r as o,a as r,m as s,u as t};
@@ -0,0 +1 @@
1
+ require(`./chunk.cjs`);let e=require(`naive-ui`);Object.defineProperty(exports,`default`,{enumerable:!0,get:function(){return e.NDatePicker}});
@@ -0,0 +1 @@
1
+ import{NDatePicker as e}from"naive-ui";export{e as default};
@@ -0,0 +1 @@
1
+ require(`./chunk.cjs`);const e=require(`./context.cjs`);let t=require(`vue`),n=require(`naive-ui`);function r(r){let i=(0,t.getCurrentInstance)(),a=i?(0,t.inject)(e.t,{}):{},o=null,s=null;if(i){try{o=(0,n.useMessage)()}catch{o=null}try{s=(0,n.useDialog)()}catch{s=null}}let c=()=>(0,t.toValue)(r)??a,l=(e,t,n)=>{let r=c()[e];r?r(t,n):o?.[e](t)};return{success:e=>l(`success`,e),error:(e,t)=>l(`error`,e,t),warning:e=>l(`warning`,e),info:e=>l(`info`,e),confirm:async e=>{let t=c().confirm;return t?await t(e)!==!1:s?new Promise(t=>{let n=!1,r=e=>{n||(n=!0,t(e))},i=e.type??`warning`;s[i]({title:e.title,content:e.content,positiveText:e.positiveText,negativeText:e.negativeText,onPositiveClick:()=>r(!0),onNegativeClick:()=>r(!1),onClose:()=>r(!1)})}):typeof window<`u`&&typeof window.confirm==`function`?window.confirm(`${e.title}\n${e.content}`):!1}}}Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return r}});
@@ -0,0 +1 @@
1
+ import{t as e}from"./context.js";import{getCurrentInstance as t,inject as n,toValue as r}from"vue";import{useDialog as i,useMessage as a}from"naive-ui";function o(o){let s=t(),c=s?n(e,{}):{},l=null,u=null;if(s){try{l=a()}catch{l=null}try{u=i()}catch{u=null}}let d=()=>r(o)??c,f=(e,t,n)=>{let r=d()[e];r?r(t,n):l?.[e](t)};return{success:e=>f(`success`,e),error:(e,t)=>f(`error`,e,t),warning:e=>f(`warning`,e),info:e=>f(`info`,e),confirm:async e=>{let t=d().confirm;return t?await t(e)!==!1:u?new Promise(t=>{let n=!1,r=e=>{n||(n=!0,t(e))},i=e.type??`warning`;u[i]({title:e.title,content:e.content,positiveText:e.positiveText,negativeText:e.negativeText,onPositiveClick:()=>r(!0),onNegativeClick:()=>r(!1),onClose:()=>r(!1)})}):typeof window<`u`&&typeof window.confirm==`function`?window.confirm(`${e.title}\n${e.content}`):!1}}}export{o as t};
package/dist/helpers.cjs CHANGED
@@ -1 +1 @@
1
- require(`./chunk.cjs`);const e=require(`./data.cjs`);let t=require(`vue`);function n(e){return e}function r(e){return e}function i(n){let r=(0,t.shallowRef)(e.t(n.initialValues)),i=(0,t.shallowRef)(null);return{model:r,formRef:i,bindings:(0,t.computed)(()=>({modelValue:r.value,options:(0,t.toValue)(n.options),config:(0,t.toValue)(n.config),"onUpdate:modelValue":t=>{r.value=e.t(t)}})),validate:()=>i.value?.validate()??Promise.resolve(),submit:()=>i.value?.submit()??Promise.resolve(!1),reset:()=>i.value?.resetFields()}}Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return n}}),Object.defineProperty(exports,`r`,{enumerable:!0,get:function(){return i}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return r}});
1
+ require(`./chunk.cjs`);const e=require(`./useComponentLocale.cjs`),t=require(`./feedback.cjs`),n=require(`./C_Icon2.cjs`),r=require(`./export-helper.cjs`),i=require(`./data.cjs`);let a=require(`vue`),o=require(`naive-ui`),s=require(`@robot-admin/form-validate`);const c=Symbol(`c-form-global-config`);function l(){return(0,a.getCurrentInstance)()?(0,a.inject)(c,{}):{}}function u(e,t){let n=e??{},r=(e,t)=>e||t?{...e,...t}:void 0;return{...t,...n,grid:r(t.grid,n.grid),inline:r(t.inline,n.inline),card:r(t.card,n.card),tabs:r(t.tabs,n.tabs),steps:r(t.steps,n.steps),dynamic:r(t.dynamic,n.dynamic),custom:r(t.custom,n.custom)}}const d={layout:`default`,labelPlacement:`left`,labelWidth:`auto`,size:`medium`,disabled:!1,readonly:!1,showActions:!0,validateOnChange:!1,preserveRemovedFields:!1,submitText:``,resetText:``,submitSuccessText:``,resetSuccessText:``,mode:`create`},f=[`steps`,`custom`];function p(e){return{...d,...e}}function m(e){return!(e.showActions===!1||f.includes(e.layout))}function h(e,t=new Set){if(!(typeof e!=`object`||!e||t.has(e))){if(t.add(e),e instanceof Map){e.forEach((e,n)=>{h(n,t),h(e,t)});return}if(e instanceof Set){e.forEach(e=>h(e,t));return}Object.values(e).forEach(e=>h(e,t))}}function g(e,t){let n=(0,a.ref)({}),r=(0,a.computed)(()=>o().length>0);function o(){let r=n.value,o=t?(0,a.toValue)(t):void 0,s=new Set(o??[...Object.keys(r),...Object.keys(e)]),c=[];for(let t of s){let n=i.r(e,t);h(n),i.a(i.r(r,t),n)||c.push(t)}return c}function s(t){return!i.a(i.r(n.value,t),i.r(e,t))}function c(){n.value=i.t(e)}function l(){return i.t(n.value)}return{isDirty:r,getChangedFields:o,isFieldDirty:s,markAsClean:c,getCleanModel:l}}const _=s.PRESET_RULES,v=s.NAIVE_COMBOS;function y(e=[]){return e.map(e=>{let t=`validate`in e&&typeof e.validate==`function`?(0,s.toNaiveRule)(e):e;return{...t,...Array.isArray(t.trigger)?{trigger:[...t.trigger]}:{}}})}function b(e,t){return y([{...s.BasicRules.required(e,[`input`,`change`,`blur`]),message:t}])[0]}const x={input:``,textarea:``,editor:``,select:null,datePicker:null,daterange:null,timePicker:null,cascader:null,colorPicker:null,checkbox:[],upload:[],radio:``,inputNumber:null,slider:null,rate:null,switch:!1};function S(e){return i.t((e.value===void 0?x[e.type]:e.value)??null)}function C(e){let t=new Set;e.forEach((e,n)=>{if(!e.prop?.trim())throw TypeError(`[C_Form] options[${n}].prop 不能为空`);if(t.has(e.prop))throw TypeError(`[C_Form] 字段 prop 重复: ${e.prop}`);t.add(e.prop)})}function w(n,r,o,s,c,l){let u=(0,a.reactive)(i.t(c?.value??(r.value.mode===`edit`?r.value.initialValues:void 0)??{})),d=(0,a.reactive)({}),f=new Map,p=(0,a.ref)({}),m=(0,a.ref)({}),h=(0,a.ref)({}),_=(0,a.ref)(!1),v=new Map,x=!1,w,T=new Map,E=new Map,D=new Map,O=new Map,k=new Set,A=!1,j=!1,M=0,N=t.t(()=>r.value.feedback),{t:ee}=e.t(()=>r.value.locale),{isDirty:te,getChangedFields:ne,isFieldDirty:re,markAsClean:P,getCleanModel:ie}=g(u,()=>n.value.map(e=>e.prop));function F(e,t,n){if(!x)try{r.value.onError?r.value.onError(e,{source:t,field:n}):N.error(e instanceof Error?e.message:String(e),e)}catch{}}function I(e,t){if(!(x||!t))try{N[e](t)}catch{}}let L=(0,a.computed)(()=>n.value.filter(e=>{if(e.show===!1)return!1;if(!e.showWhen)return!0;try{return e.showWhen(u)}catch(t){return F(t,`callback`,e.prop),!1}}));function R(){j=!0;let e=++M;(0,a.nextTick)(()=>{e===M&&(j=!1)})}function z(){return i.t(u)}function B(e){let t=e?i.t(e):{};return n.value.forEach(e=>{i.i(t,e.prop)||i.c(t,e.prop,S(e))}),t}function V(e){try{let t=y(e.rulesWhen?e.rulesWhen(u):e.rules);if(v.delete(e.prop),e.required&&!t.some(e=>e.required)){let n=e.label||e.prop;t.unshift(b(n,ee(`form.required`,{label:n})))}if(e.crossFieldValidator){let n=e.crossFieldValidator;t.push({async validator(){let e=await n(u);if(e)throw Error(e)},trigger:[`change`,`blur`]})}if(t.length===0){delete d[e.prop];return}d[e.prop]=t.map(t=>({...t,key:e.prop}))}catch(t){delete d[e.prop],v.set(e.prop,t),F(t,`callback`,e.prop)}}function ae(){n.value.forEach(e=>{(e.rulesWhen||e.crossFieldValidator)&&V(e)})}function oe(e){k.forEach(t=>{e.has(t)||(f.delete(t),delete d[t],v.delete(t),G(t),D.delete(t),r.value.preserveRemovedFields||i.n(u,t))})}function H(e=!1){try{C(n.value);let t=z(),r=new Set(n.value.map(e=>e.prop));oe(r),n.value.forEach(e=>{i.i(u,e.prop)||i.c(u,e.prop,S(e)),V(e),K(e)}),k=r,Y(W(t),!1),e&&(0,a.nextTick)(P)}catch(e){throw F(e,`initialize`),e}}function U(e){let t=z();R(),i.s(u,B(e)),Y(W(t),!1)}function W(e){return[...new Set([...Object.keys(e),...Object.keys(u),...n.value.map(e=>e.prop)])].filter(t=>!i.a(i.r(e,t),i.r(u,t)))}function G(e){E.get(e)?.abort(),E.delete(e),T.delete(e),O.delete(e),delete p.value[e],delete m.value[e],delete h.value[e]}function K(e){if(D.get(e.prop)!==e.asyncOptions){if(G(e.prop),!e.asyncOptions){D.delete(e.prop);return}D.set(e.prop,e.asyncOptions),q(e,`initialize`)}}function q(e,t){if(x)return;let n=O.get(e.prop),r={item:e,reason:n?.reason===`initialize`?n.reason:t};O.set(e.prop,r),(0,a.nextTick)(()=>{O.get(e.prop)===r&&(O.delete(e.prop),J(r.item,r.reason))})}function se(e,t,n){return x||n.signal.aborted||T.get(e)!==t||E.get(e)!==n}function ce(e){return!x&&!!e.asyncOptions&&D.get(e.prop)===e.asyncOptions}async function J(e,t){if(!ce(e))return;let{prop:n}=e,r=(T.get(n)??0)+1;T.set(n,r),E.get(n)?.abort();let a=new AbortController;E.set(n,a),m.value[n]=!0,delete h.value[n];try{let o=await e.asyncOptions(z(),{field:n,reason:t,signal:a.signal});if(se(n,r,a))return;if(!Array.isArray(o))throw TypeError(`[C_Form] ${n}.asyncOptions 必须返回数组`);p.value[n]=i.t([...o])}catch(e){if(se(n,r,a))return;h.value[n]=e,F(e,`async-options`,n)}finally{T.get(n)===r&&E.get(n)===a&&(m.value[n]=!1,E.delete(n))}}async function le(e){let t=n.value.filter(t=>t.asyncOptions&&(!e||t.prop===e));if(e&&t.length===0)throw Error(`[C_Form] 未找到异步选项字段: ${e}`);await Promise.all(t.map(e=>(O.delete(e.prop),J(e,`manual`))))}function ue(){let e=n.value.filter(e=>e.valueWhen),t=new Set;if(e.length===0)return[];for(let n=0;n<=e.length;n+=1){let n=!1;for(let r of e)try{let e=r.valueWhen?.(u);e!==void 0&&!i.a(i.r(u,r.prop),e)&&(i.c(u,r.prop,i.t(e)),t.add(r.prop),n=!0)}catch(e){F(e,`callback`,r.prop)}if(!n)return[...t]}return F(Error(`[C_Form] valueWhen 存在循环依赖,已停止继续计算`),`callback`),[...t]}function de(e){let t=e.map(e=>i.o(e).join(`.`));return n.value.filter(e=>!e.asyncOptions||!e.dependsOn?!1:(Array.isArray(e.dependsOn)?e.dependsOn:[e.dependsOn]).some(e=>{let n=i.o(e).join(`.`);return t.some(e=>e===n||e.startsWith(`${n}.`)||n.startsWith(`${e}.`))}))}function Y(e,t=!0){let n=[...new Set([...e,...ue()])];ae(),de(n).forEach(e=>{q(e,`dependency`)}),t&&r.value.validateOnChange&&(0,a.nextTick)(()=>{x||Q(n).catch(()=>void 0)})}function X(e){Y([e])}function fe(e,t){t?f.set(e,t):f.delete(e)}async function Z(){if(l?.value===!1)throw Error(`[C_Form] 布局尚未加载完成`);if(!o.value)throw Error(`[C_Form] 表单引用不存在`);try{let e=L.value.find(e=>v.has(e.prop));if(e)throw v.get(e.prop);if(await o.value.validate(),x)throw Error(`[C_Form] 表单已卸载`);s(`validate-success`,z())}catch(e){throw x||s(`validate-error`,e),e}}async function Q(e){if(l?.value===!1)throw Error(`[C_Form] 布局尚未加载完成`);if(!o.value)throw Error(`[C_Form] 表单引用不存在`);let t=[...new Set(Array.isArray(e)?e:[e])],n=t.find(e=>v.has(e));if(n)throw v.get(n);let r=[],i=t.flatMap(e=>{let t=f.get(e);return t?[t.validate()]:(r.push(e),[])});r.length>0&&i.push(o.value.validate(void 0,e=>r.includes(String(e.key??``))));let a=(await Promise.allSettled(i)).filter(e=>e.status===`rejected`).map(e=>e.reason);if(a.length>0)throw a}function pe(e){if(!e){o.value?.restoreValidation();return}(Array.isArray(e)?e:[e]).forEach(e=>f.get(e)?.restoreValidation())}async function $(e){let t=L.value.filter(e).map(e=>e.prop);if(t.length===0)return!0;try{return await Q(t),!0}catch{return!1}}function me(e){let t=typeof e==`string`?e:r.value.steps?.steps?.[e]?.key;return t?$(e=>e.layout?.step===t):Promise.resolve(!0)}function he(e){return $(t=>t.layout?.tab===e)}function ge(){return $(e=>!!e.layout?.dynamic)}function _e(e){return $(t=>t.layout?.group===e)}function ve(e){Object.entries(i.t(e)).forEach(([e,t])=>{i.c(u,e,t)}),Y(Object.keys(e))}function ye(){let e=z();i.s(u,ie()),pe(),Y(W(e),!1),I(`info`,r.value.resetSuccessText)}async function be(e,t,n=!1){i.c(u,e,i.t(t)),X(e),n&&await Q(e)}function xe(e){return i.t(i.r(u,e))}async function Se(e,t=!1){ve(e),t&&await Q(Object.keys(e))}function Ce(){return x||l?.value===!1||_.value||r.value.disabled||r.value.readonly}function we(e,t,n){return!x&&!e.signal.aborted&&l?.value!==!1&&!r.value.disabled&&!r.value.readonly&&n!==null&&o.value===n&&i.a(u,t)}async function Te(){if(Ce())return!1;let e=z(),t=o.value,n=new AbortController;w=n,_.value=!0;try{if(await Z(),!we(n,e,t))return!1;let i={model:e,form:t};try{await r.value.onSubmit?.(i,{signal:n.signal})}catch(e){return n.signal.aborted||F(e,`submit`),!1}return n.signal.aborted?!1:(s(`submit`,i),I(`success`,r.value.submitSuccessText),!0)}catch{return!1}finally{w===n&&(w=void 0),_.value=!1}}function Ee(){H(!0);let e=c?.value??(r.value.mode===`edit`?r.value.initialValues:void 0);e&&U(e),(0,a.nextTick)(P)}return(0,a.watch)(n,()=>{let e=!A;e&&R(),H(e),A=!0},{deep:!0,immediate:!0}),c&&(0,a.watch)(c,e=>{e!==void 0&&!i.a(u,e)&&U(e)},{deep:!0,immediate:!0}),(0,a.watch)(()=>[r.value.mode,r.value.initialValues],([e,t])=>{c?.value!==void 0||e!==`edit`||!t||(U(t),(0,a.nextTick)(P))},{deep:!0}),(0,a.watch)(u,e=>{j||s(`update:modelValue`,i.t(e))},{deep:!0,flush:`post`}),(0,a.onScopeDispose)(()=>{x=!0,w?.abort(),E.forEach(e=>e.abort()),E.clear(),O.clear(),f.clear()}),{formModel:u,formRules:d,visibleOptions:L,initialize:Ee,handleFieldChange:X,setFormItemRef:fe,validate:Z,validateField:Q,validateStep:me,validateTab:he,validateDynamicFields:ge,validateCustomGroup:_e,clearValidation:pe,getModel:z,setFields:ve,resetFields:ye,setFieldValue:be,getFieldValue:xe,setFieldsValue:Se,submit:Te,handleSubmit:Te,handleReset:ye,isSubmitting:_,isDirty:te,getChangedFields:ne,isFieldDirty:re,markAsClean:P,asyncOptionsCache:p,asyncLoadingMap:m,asyncErrorMap:h,reloadOptions:le}}const T=Symbol(`c-form-renderer-registry`);function E(e={}){let t=(0,a.shallowReactive)(new Map),n={get:e=>t.get(e)?.renderer,register:(e,n)=>{if(!e.trim())throw TypeError(`[C_Form] renderer type 不能为空`);if(typeof n!=`function`)throw TypeError(`[C_Form] renderer ${e} 必须是函数`);let r={renderer:n};return t.set(e,r),()=>t.get(e)===r&&t.delete(e)},unregister:(e,n)=>{let r=t.get(e);return!r||n&&r.renderer!==n?!1:t.delete(e)}};return Object.entries(e).forEach(([e,t])=>{n.register(e,t)}),n}function D(e,t,n){return e===void 0?t:typeof e==`function`?e(n):e}function O(e){return{input:t=>(0,a.h)(e.NInput,{...t}),textarea:t=>(0,a.h)(e.NInput,{...t,type:`textarea`}),inputNumber:t=>(0,a.h)(e.NInputNumber,{...t}),switch:t=>(0,a.h)(e.NSwitch,{...t}),slider:t=>(0,a.h)(e.NSlider,{...t}),rate:t=>(0,a.h)(e.NRate,{...t}),datePicker:t=>(0,a.h)(e.NDatePicker,{...t}),daterange:t=>(0,a.h)(e.NDatePicker,{...t,type:`daterange`}),timePicker:t=>(0,a.h)(e.NTimePicker,{...t}),cascader:t=>(0,a.h)(e.NCascader,{...t}),colorPicker:t=>(0,a.h)(e.NColorPicker,{...t}),select:(t,n)=>(0,a.h)(e.NSelect,{...t,options:n.children?.map(e=>({...e}))||[]}),checkbox:(t,n)=>(0,a.h)(e.NCheckboxGroup,{...t},{default:()=>(0,a.h)(e.NSpace,{},{default:()=>n.children?.map(t=>(0,a.h)(e.NCheckbox,{value:t.value,label:t.label,disabled:t.disabled,key:String(t.value)}))||[]})}),radio:(t,n)=>(0,a.h)(e.NRadioGroup,{...t},{default:()=>(0,a.h)(e.NSpace,{},{default:()=>n.children?.map(t=>(0,a.h)(e.NRadio,{value:t.value,disabled:t.disabled,key:String(t.value)},{default:()=>t.label}))||[]})}),upload:(t,n,r,i)=>{let o={...t},{value:s}=o,c=o[`onUpdate:value`];return delete o.value,delete o[`onUpdate:value`],(0,a.h)(e.NUpload,{...o,fileList:Array.isArray(s)?s:[],"onUpdate:fileList":e=>c?.(e)},{trigger:()=>i.slots?.uploadClick?.()||(0,a.h)(e.NButton,{type:`primary`},{default:()=>`选择文件`}),tip:()=>i.slots?.uploadTip?.()||null})},editor:(t,n)=>{let r={...t},{value:i}=r,o=r[`onUpdate:value`];return delete r.value,delete r[`onUpdate:value`],(0,a.h)(e.C_Editor,{...r,editorId:`editor-${n.prop}`,modelValue:typeof i==`string`?i:``,"onUpdate:modelValue":e=>o?.(e)})}}}const k=E();function A(e,t){return k.register(e,t)}function j(e,t){return k.unregister(e,t)}const M=new Set([`select`,`checkbox`,`radio`,`cascader`]),N=new Set([`input`,`textarea`,`inputNumber`,`rate`,`editor`]);function ee(e){let{formModel:t,visibleOptions:n,config:r,handleFieldChange:o,componentMap:s,instanceSlots:c,asyncOptionsCache:l,asyncLoadingMap:u,renderers:d,setFormItemRef:f,onError:p}=e,m=s,h=O(m),g=(0,a.getCurrentInstance)()?(0,a.inject)(T,void 0):void 0,_=e.registry??g??k,v=e=>d?.value?.[e]??_.get(e)??h[e],y=e=>{let n=D(e.disabled,r.value.disabled,t),a=D(e.readonly,r.value.readonly,t),s=N.has(e.type),c={value:i.r(t,e.prop),"onUpdate:value":n=>{D(e.disabled,r.value.disabled,t)||D(e.readonly,r.value.readonly,t)||(i.c(t,e.prop,n),o(e.prop))},disabled:n||a&&!s,readonly:a||e.type===`rate`&&n};return e.type===`textarea`&&(c.type=`textarea`),e.placeholder&&(c.placeholder=e.placeholder),c};function b(e){let t=e.children??[];return Object.prototype.hasOwnProperty.call(l.value,e.prop)?l.value[e.prop]??[]:t}function x(e){return M.has(e.type)?{...e,children:b(e)}:e}function S(e,t){return e.type===`select`&&u.value[e.prop]&&(t.loading=!0),t}let C=e=>{try{let t=x(e),n=v(t.type);return n?n(S(t,(0,a.mergeProps)(t.attrs??{},y(t))),t,r.value,{slots:c,components:m}):(p?.(TypeError(`[C_Form] 未支持的组件类型: ${t.type}`),t.prop),null)}catch(t){return p?.(t,e.prop),null}};function w(e){if(e.label)return e.help?(0,a.h)(`span`,{style:`display:inline-flex;align-items:center;gap:4px`},[e.label,(0,a.h)(m.NTooltip,{trigger:`hover`},{trigger:()=>(0,a.h)(`span`,{style:`cursor:help;opacity:0.5;font-size:14px`,textContent:`ⓘ`}),default:()=>e.help})]):e.label}return{renderFormItem:C,formItems:(0,a.computed)(()=>n.value.map(e=>{let t=!!(e.required||e.rules?.some(e=>e.required)),n=w(e);return(0,a.h)(m.NFormItem,{label:typeof n==`string`?n:void 0,path:e.prop,key:e.prop,required:t,ref:t=>f?.(e.prop,t)},{...typeof n!=`string`&&n?{label:()=>n}:{},default:()=>C(e)})})),getBaseProps:y}}const te={class:`c-form-default`},ne=(0,a.defineComponent)({__name:`index`,props:{formItems:{},layoutConfig:{},options:{}},setup(e){return(t,n)=>((0,a.openBlock)(),(0,a.createElementBlock)(`div`,te,[((0,a.openBlock)(!0),(0,a.createElementBlock)(a.Fragment,null,(0,a.renderList)(e.formItems,(e,t)=>((0,a.openBlock)(),(0,a.createBlock)((0,a.resolveDynamicComponent)(e),{key:e.key??t}))),128))]))}});var re=r.t(ne,[[`__scopeId`,`data-v-4313de0c`]]);const P=(0,a.defineComponent)({__name:`index`,props:{formItems:{},layoutConfig:{default:()=>({})},options:{default:()=>[]}},setup(e){let t=e,n=(0,a.computed)(()=>t.layoutConfig?.inline?.itemWidth??280),r=(0,a.computed)(()=>t.layoutConfig?.inline?.gap??16),i=(0,a.computed)(()=>t.layoutConfig?.inline?.rowGap??16),o=(0,a.computed)(()=>t.layoutConfig?.inline?.align??`center`),s=(0,a.computed)(()=>{switch(o.value){case`start`:return`flex-start`;case`end`:return`flex-end`;default:return o.value}}),c=(0,a.computed)(()=>{switch(o.value){case`start`:return`flex-start`;case`end`:return`flex-end`;case`center`:return`center`;default:return`flex-start`}}),l=(0,a.computed)(()=>({display:`flex`,flexWrap:t.layoutConfig?.inline?.wrap??`wrap`,alignItems:s.value,justifyContent:c.value,gap:`${i.value}px ${r.value}px`,width:`100%`})),u=(e,t)=>{if(e.key!=null)return String(e.key);let n=e.props;return n?.path?n.path:`form-item-${t}`},d=e=>{let r=t.options?.[e]?.layout,i={width:`${n.value}px`,flexShrink:0,display:`flex`,flexDirection:`column`};return r?.width!==void 0&&(i.width=typeof r.width==`number`?`${r.width}px`:r.width),r?.style&&Object.assign(i,r.style),i};return(t,n)=>((0,a.openBlock)(),(0,a.createElementBlock)(`div`,{class:`c-form-inline`,style:(0,a.normalizeStyle)(l.value)},[((0,a.openBlock)(!0),(0,a.createElementBlock)(a.Fragment,null,(0,a.renderList)(e.formItems,(e,t)=>((0,a.openBlock)(),(0,a.createElementBlock)(`div`,{key:u(e,t),class:`c-form-inline-item`,style:(0,a.normalizeStyle)(d(t))},[((0,a.openBlock)(),(0,a.createBlock)((0,a.resolveDynamicComponent)(e)))],4))),128))],4))}});var ie=r.t(P,[[`__scopeId`,`data-v-711f6c00`]]);const F={class:`c-grid-layout`},I={class:`config-header`},L={class:`config-controls`},R={class:`config-label`},z={class:`item-wrapper`},B=(0,a.defineComponent)({__name:`index`,props:{formItems:{},layoutConfig:{default:()=>({})},options:{default:()=>[]}},setup(e,{expose:t}){let r=e,i=(0,a.reactive)({cols:24,gutter:16,responsive:!0}),s=(0,a.computed)(()=>r.layoutConfig?.grid||{}),c=(0,a.computed)(()=>s.value.showConfigPanel),l=(0,a.computed)(()=>s.value.showStats),u=(0,a.computed)(()=>({cols:c.value?i.cols:s.value.cols??24,gutter:c.value?i.gutter:s.value.gutter??16,responsive:c.value?i.responsive:s.value.responsive??!0})),d=(0,a.computed)(()=>({cols:u.value.cols,xGap:s.value.xGap??u.value.gutter,yGap:s.value.yGap??s.value.yGutter??u.value.gutter,responsive:u.value.responsive?`screen`:`self`})),f=(0,a.computed)(()=>[{key:`cols`,label:`列数`,component:o.NInputNumber,value:i.cols,update:e=>{typeof e==`number`&&(i.cols=e)},props:{min:1,max:48,size:`small`}},{key:`gutter`,label:`间距`,component:o.NInputNumber,value:i.gutter,update:e=>{typeof e==`number`&&(i.gutter=e)},props:{min:0,max:48,size:`small`}},{key:`responsive`,label:`响应式`,component:o.NSwitch,value:i.responsive,update:e=>{typeof e==`boolean`&&(i.responsive=e)},props:{size:`small`}}]),p=(0,a.computed)(()=>`列数: ${u.value.cols} | 间距: ${u.value.gutter}px | 项目: ${r.formItems.length}个`),m=(e,t)=>String(e.key)||e.props?.path||`grid-item-${t}`,h=(e,t)=>{let n=r.options?.[e]?.layout;return n?.[t]??n?.grid?.[t]},g=()=>{let{cols:e}=u.value;return e<=12?e:e<=24?12:8},_=e=>{let t=h(e,`span`),n=h(e,`offset`),r=h(e,`suffix`);return{span:typeof t==`number`&&t>0&&t<=u.value.cols?t:g(),offset:typeof n==`number`&&n>=0&&n<u.value.cols?n:0,suffix:!!r}};return(0,a.watch)(s,e=>{e.cols!==void 0&&(i.cols=e.cols),e.gutter!==void 0&&(i.gutter=e.gutter),e.responsive!==void 0&&(i.responsive=e.responsive)},{immediate:!0}),t({updateGridConfig:e=>Object.assign(i,e),getCurrentConfig:()=>({...u.value}),getGridInfo:()=>({...u.value,itemCount:r.formItems.length})}),(t,r)=>{let i=o.NCard,s=o.NGridItem,u=o.NGrid,h=o.NAlert;return(0,a.openBlock)(),(0,a.createElementBlock)(`div`,F,[(0,a.createCommentVNode)(` 配置面板 `),c.value?((0,a.openBlock)(),(0,a.createBlock)(i,{key:0,size:`small`,bordered:!1,class:`config-panel`},{header:(0,a.withCtx)(()=>[(0,a.createElementVNode)(`div`,I,[(0,a.createVNode)(n.t,{name:`mdi:view-grid`,size:18}),r[0]||=(0,a.createElementVNode)(`span`,null,`网格配置`,-1)])]),default:(0,a.withCtx)(()=>[(0,a.createElementVNode)(`div`,L,[((0,a.openBlock)(!0),(0,a.createElementBlock)(a.Fragment,null,(0,a.renderList)(f.value,e=>((0,a.openBlock)(),(0,a.createElementBlock)(`div`,{key:e.key,class:`config-item`},[(0,a.createElementVNode)(`span`,R,(0,a.toDisplayString)(e.label)+`:`,1),((0,a.openBlock)(),(0,a.createBlock)((0,a.resolveDynamicComponent)(e.component),(0,a.mergeProps)({value:e.value},{ref_for:!0},e.props,{"onUpdate:value":e.update}),null,16,[`value`,`onUpdate:value`]))]))),128))])]),_:1})):(0,a.createCommentVNode)(`v-if`,!0),(0,a.createCommentVNode)(` 网格容器 `),(0,a.createVNode)(u,(0,a.mergeProps)(d.value,{class:`grid-container`}),{default:(0,a.withCtx)(()=>[((0,a.openBlock)(!0),(0,a.createElementBlock)(a.Fragment,null,(0,a.renderList)(e.formItems,(e,t)=>((0,a.openBlock)(),(0,a.createBlock)(s,(0,a.mergeProps)({key:m(e,t)},{ref_for:!0},_(t),{class:`grid-item`}),{default:(0,a.withCtx)(()=>[(0,a.createElementVNode)(`div`,z,[((0,a.openBlock)(),(0,a.createBlock)((0,a.resolveDynamicComponent)(e)))])]),_:2},1040))),128))]),_:1},16),(0,a.createCommentVNode)(` 统计信息 `),l.value?((0,a.openBlock)(),(0,a.createBlock)(h,{key:1,type:`info`,"show-icon":!1,size:`small`,class:`grid-stats`},{header:(0,a.withCtx)(()=>[(0,a.createVNode)(n.t,{name:`mdi:information-outline`,size:16}),r[1]||=(0,a.createTextVNode)(` 网格信息 `,-1)]),default:(0,a.withCtx)(()=>[(0,a.createTextVNode)(` `+(0,a.toDisplayString)(p.value),1)]),_:1})):(0,a.createCommentVNode)(`v-if`,!0)])}}});var V=r.t(B,[[`__scopeId`,`data-v-1d221c83`]]);const ae=[`default`,`inline`,`grid`],oe={NFormItem:o.NFormItem,NInput:o.NInput,NInputNumber:o.NInputNumber,NSwitch:o.NSwitch,NSelect:o.NSelect,NCheckboxGroup:o.NCheckboxGroup,NCheckbox:o.NCheckbox,NRadioGroup:o.NRadioGroup,NRadio:o.NRadio,NButton:o.NButton,NSpace:o.NSpace,NTooltip:o.NTooltip,NSlider:(0,a.defineAsyncComponent)(()=>Promise.resolve().then(()=>require(`./slider.cjs`))),NRate:(0,a.defineAsyncComponent)(()=>Promise.resolve().then(()=>require(`./rate.cjs`))),NDatePicker:(0,a.defineAsyncComponent)(()=>Promise.resolve().then(()=>require(`./date-picker.cjs`))),NTimePicker:(0,a.defineAsyncComponent)(()=>Promise.resolve().then(()=>require(`./time-picker.cjs`))),NCascader:(0,a.defineAsyncComponent)(()=>Promise.resolve().then(()=>require(`./cascader.cjs`))),NColorPicker:(0,a.defineAsyncComponent)(()=>Promise.resolve().then(()=>require(`./color-picker.cjs`))),NUpload:(0,a.defineAsyncComponent)(()=>Promise.resolve().then(()=>require(`./upload.cjs`))),C_Editor:(0,a.defineAsyncComponent)(()=>Promise.resolve().then(()=>require(`./C_Editor.cjs`)).then(e=>e.C_Editor))},H={default:re,inline:ie,grid:V,card:(0,a.defineAsyncComponent)(()=>Promise.resolve().then(()=>require(`./Card.cjs`))),tabs:(0,a.defineAsyncComponent)(()=>Promise.resolve().then(()=>require(`./Tabs.cjs`))),steps:(0,a.defineAsyncComponent)(()=>Promise.resolve().then(()=>require(`./Steps.cjs`))),dynamic:(0,a.defineAsyncComponent)(()=>Promise.resolve().then(()=>require(`./Dynamic.cjs`))),custom:(0,a.defineAsyncComponent)(()=>Promise.resolve().then(()=>require(`./Custom.cjs`)))},U=(0,a.defineComponent)({name:`C_Form`,__name:`index`,props:{options:{},modelValue:{},config:{default:()=>({})},renderers:{}},emits:[`submit`,`update:modelValue`,`validate-success`,`validate-error`],setup(t,{expose:n,emit:r}){let i=t,s=r,c=l(),d=(0,a.computed)(()=>p(u(i.config,c))),{t:f}=e.t(()=>d.value.locale),h=(0,a.ref)(null),g=(0,a.ref)(null),_=(0,a.computed)(()=>ae.includes(d.value.layout)||g.value===d.value.layout),{formModel:v,formRules:y,visibleOptions:b,initialize:x,handleFieldChange:S,validate:C,validateField:T,validateStep:E,validateTab:D,validateDynamicFields:O,validateCustomGroup:k,clearValidation:A,getModel:j,setFields:M,resetFields:N,setFieldValue:te,getFieldValue:ne,setFieldsValue:re,handleSubmit:P,handleReset:ie,isDirty:F,getChangedFields:I,isFieldDirty:L,markAsClean:R,asyncOptionsCache:z,asyncLoadingMap:B,asyncErrorMap:V,reloadOptions:U,setFormItemRef:W,isSubmitting:G,submit:K}=w((0,a.computed)(()=>i.options),d,h,s,(0,a.computed)(()=>i.modelValue),_),q=(0,a.computed)(()=>v.value),se=()=>j(),ce=(0,a.computed)(()=>({form:h.value,model:q.value,validate:C,validateField:T,reset:N,setFields:M,getModel:se,clearValidation:A,submit:K,reloadOptions:U,submitting:G.value})),J=(0,a.getCurrentInstance)(),le=()=>Object.keys(J?.slots??{}).filter(e=>![`action`,`action-extra`,`step-actions`].includes(e)),{formItems:ue}=ee({formModel:v,visibleOptions:b,config:d,handleFieldChange:S,componentMap:oe,instanceSlots:J?.slots,asyncOptionsCache:z,asyncLoadingMap:B,renderers:(0,a.computed)(()=>i.renderers),setFormItemRef:W,onError:(e,t)=>d.value.onError?.(e,{source:`render`,field:t})}),de=(0,a.computed)(()=>H[d.value.layout]||H.default),Y=(0,a.computed)(()=>({type:d.value.layout,grid:d.value.grid,inline:d.value.inline,card:d.value.card,tabs:d.value.tabs,steps:d.value.steps,dynamic:d.value.dynamic,custom:d.value.custom})),X=(0,a.computed)(()=>m(d.value)),fe=(0,a.computed)(()=>{let{layout:e}=d.value;return{...e===`steps`?{beforeStepChange:_e,validateStep:ve,submitting:G.value,disabled:d.value.disabled||d.value.readonly}:e===`tabs`?{beforeTabChange:me,validateTab:he}:{},onVnodeMounted:()=>{g.value=e}}}),Z=(e,...t)=>{let n=d.value[e];if(typeof n==`function`)try{let e=n(...t);e instanceof Promise&&e.catch(e=>d.value.onError?.(e,{source:`callback`}))}catch(e){d.value.onError?.(e,{source:`callback`})}},Q=e=>{d.value.onFieldsChange?.(e)},pe=e=>{s(`validate-success`,e)},$=e=>{s(`validate-error`,e)},me=async(e,t)=>{try{return await d.value.onTabBeforeChange?.(e,t)!==!1}catch(e){return d.value.onError?.(e,{source:`callback`}),!1}},he=async e=>{let t=await D(e);return t&&d.value.onTabValidate?.(e),t},ge=(e,t)=>{d.value.onStepChange?.(e,t)},_e=async(e,t)=>{try{return await d.value.onStepBeforeChange?.(e,t)!==!1}catch(e){return d.value.onError?.(e,{source:`callback`}),!1}},ve=async(e,t)=>{try{return await E(t)?(d.value.onStepValidate?.(e),!0):!1}catch{return!1}};return n({validate:C,validateField:T,validateStep:E,validateTab:D,validateDynamicFields:O,validateCustomGroup:k,clearValidation:A,getModel:j,setFields:M,resetFields:N,setFieldValue:te,getFieldValue:ne,setFieldsValue:re,formRef:h,formModel:v,initialize:x,layoutType:(0,a.computed)(()=>d.value.layout),shouldShowDefaultActions:X,isDirty:F,getChangedFields:I,isFieldDirty:L,markAsClean:R,asyncLoadingMap:B,asyncErrorMap:V,reloadOptions:U,isSubmitting:G,submit:K}),(e,t)=>((0,a.openBlock)(),(0,a.createBlock)((0,a.unref)(o.NForm),(0,a.mergeProps)({ref_key:`formRef`,ref:h,model:(0,a.unref)(v),rules:(0,a.unref)(y),"validate-on-rule-change":!1,"label-placement":d.value.labelPlacement,"label-width":d.value.labelWidth,size:d.value.size,disabled:d.value.disabled,readonly:d.value.readonly},e.$attrs,{onSubmit:(0,a.withModifiers)((0,a.unref)(K),[`prevent`])}),{default:(0,a.withCtx)(()=>[(0,a.createCommentVNode)(` 布局组件渲染 `),((0,a.openBlock)(),(0,a.createBlock)((0,a.resolveDynamicComponent)(de.value),(0,a.mergeProps)({key:d.value.layout,"form-items":(0,a.unref)(ue),"layout-config":Y.value,options:(0,a.unref)(b),"form-data":(0,a.unref)(v)},fe.value,{onTabChange:t[0]||=(e,t)=>Z(`onTabChange`,e,t),onStepChange:ge,onFieldAdd:t[1]||=e=>Z(`onFieldAdd`,e),onFieldRemove:t[2]||=e=>Z(`onFieldRemove`,e),onFieldToggle:t[3]||=(e,t)=>Z(`onFieldToggle`,e,t),onFieldsClear:t[4]||=e=>Z(`onFieldsClear`),onRenderModeChange:t[5]||=e=>Z(`onRenderModeChange`,e),onGroupToggle:t[6]||=(e,t)=>Z(`onGroupToggle`,e,t),onGroupReset:t[7]||=e=>Z(`onGroupReset`,e),onValidateSuccess:pe,onValidateError:$,onFieldsChange:Q}),(0,a.createSlots)({"step-actions":(0,a.withCtx)(t=>[(0,a.renderSlot)(e.$slots,`step-actions`,(0,a.mergeProps)(t,{submit:(0,a.unref)(K),submitting:(0,a.unref)(G)}),()=>[t.isLastStep&&d.value.showActions?((0,a.openBlock)(),(0,a.createBlock)((0,a.unref)(o.NButton),{key:0,type:`primary`,loading:(0,a.unref)(G)||!_.value,disabled:!_.value||(0,a.unref)(G)||d.value.disabled||d.value.readonly,onClick:(0,a.unref)(K)},{default:(0,a.withCtx)(()=>[(0,a.createTextVNode)((0,a.toDisplayString)(d.value.submitText||(0,a.unref)(f)(`common.submit`)),1)]),_:1},8,[`loading`,`disabled`,`onClick`])):(0,a.createCommentVNode)(`v-if`,!0)],!0)]),_:2},[(0,a.renderList)(le(),t=>({name:t,fn:(0,a.withCtx)(n=>[(0,a.renderSlot)(e.$slots,t,(0,a.normalizeProps)((0,a.guardReactiveProps)(n)),void 0,!0)])}))]),1040,[`form-items`,`layout-config`,`options`,`form-data`])),(0,a.createCommentVNode)(` 表单操作按钮区域(只在特定布局中显示) `),X.value?((0,a.openBlock)(),(0,a.createBlock)((0,a.unref)(o.NFormItem),{key:0,style:{"margin-top":`20px`}},{default:(0,a.withCtx)(()=>[(0,a.renderSlot)(e.$slots,`action`,(0,a.normalizeProps)((0,a.guardReactiveProps)(ce.value)),()=>[(0,a.createVNode)((0,a.unref)(o.NSpace),{justify:`end`,style:{width:`100%`}},{default:(0,a.withCtx)(()=>[(0,a.createVNode)((0,a.unref)(o.NButton),{disabled:!_.value||(0,a.unref)(G)||d.value.disabled||d.value.readonly,onClick:(0,a.unref)(ie)},{default:(0,a.withCtx)(()=>[(0,a.createTextVNode)((0,a.toDisplayString)(d.value.resetText||(0,a.unref)(f)(`common.reset`)),1)]),_:1},8,[`disabled`,`onClick`]),(0,a.renderSlot)(e.$slots,`action-extra`,(0,a.normalizeProps)((0,a.guardReactiveProps)(ce.value)),void 0,!0),(0,a.createVNode)((0,a.unref)(o.NButton),{type:`primary`,loading:(0,a.unref)(G)||!_.value,disabled:!_.value||(0,a.unref)(G)||d.value.disabled||d.value.readonly,onClick:(0,a.unref)(P)},{default:(0,a.withCtx)(()=>[(0,a.createTextVNode)((0,a.toDisplayString)(d.value.submitText||(0,a.unref)(f)(`common.submit`)),1)]),_:1},8,[`loading`,`disabled`,`onClick`])]),_:3})],!0)]),_:3})):(0,a.createCommentVNode)(`v-if`,!0)]),_:3},16,[`model`,`rules`,`label-placement`,`label-width`,`size`,`disabled`,`readonly`,`onSubmit`]))}});var W=r.t(U,[[`__scopeId`,`data-v-2843988e`]]);function G(e){return e}function K(e){return e}function q(e){let t=(0,a.shallowRef)(i.t(e.initialValues)),n=(0,a.shallowRef)(null);return{model:t,formRef:n,bindings:(0,a.computed)(()=>({modelValue:t.value,options:(0,a.toValue)(e.options),config:(0,a.toValue)(e.config),"onUpdate:modelValue":e=>{t.value=i.t(e)}})),validate:()=>n.value?.validate()??Promise.resolve(),submit:()=>n.value?.submit()??Promise.resolve(!1),reset:()=>{n.value?(n.value.resetFields(),t.value=i.t(n.value.getModel())):t.value=i.t(e.initialValues)},getValues:()=>i.t(n.value?.getModel()??t.value),setValues:async(e,r=!1)=>{n.value?(await n.value.setFieldsValue(e,r),t.value=i.t(n.value.getModel())):t.value={...t.value,...i.t(e)}}}}Object.defineProperty(exports,`_`,{enumerable:!0,get:function(){return u}}),Object.defineProperty(exports,`a`,{enumerable:!0,get:function(){return T}}),Object.defineProperty(exports,`b`,{enumerable:!0,get:function(){return l}}),Object.defineProperty(exports,`c`,{enumerable:!0,get:function(){return j}}),Object.defineProperty(exports,`d`,{enumerable:!0,get:function(){return v}}),Object.defineProperty(exports,`f`,{enumerable:!0,get:function(){return _}}),Object.defineProperty(exports,`g`,{enumerable:!0,get:function(){return f}}),Object.defineProperty(exports,`h`,{enumerable:!0,get:function(){return c}}),Object.defineProperty(exports,`i`,{enumerable:!0,get:function(){return W}}),Object.defineProperty(exports,`l`,{enumerable:!0,get:function(){return ee}}),Object.defineProperty(exports,`m`,{enumerable:!0,get:function(){return d}}),Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return G}}),Object.defineProperty(exports,`o`,{enumerable:!0,get:function(){return E}}),Object.defineProperty(exports,`p`,{enumerable:!0,get:function(){return g}}),Object.defineProperty(exports,`r`,{enumerable:!0,get:function(){return q}}),Object.defineProperty(exports,`s`,{enumerable:!0,get:function(){return A}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return K}}),Object.defineProperty(exports,`u`,{enumerable:!0,get:function(){return w}}),Object.defineProperty(exports,`v`,{enumerable:!0,get:function(){return p}}),Object.defineProperty(exports,`y`,{enumerable:!0,get:function(){return m}});
package/dist/helpers.js CHANGED
@@ -1 +1 @@
1
- import{t as e}from"./data.js";import{computed as t,shallowRef as n,toValue as r}from"vue";function i(e){return e}function a(e){return e}function o(i){let a=n(e(i.initialValues)),o=n(null);return{model:a,formRef:o,bindings:t(()=>({modelValue:a.value,options:r(i.options),config:r(i.config),"onUpdate:modelValue":t=>{a.value=e(t)}})),validate:()=>o.value?.validate()??Promise.resolve(),submit:()=>o.value?.submit()??Promise.resolve(!1),reset:()=>o.value?.resetFields()}}export{i as n,o as r,a as t};
1
+ import{t as e}from"./useComponentLocale.js";import{t}from"./feedback.js";import{t as n}from"./C_Icon2.js";import{t as r}from"./export-helper.js";import{a as i,c as a,i as o,n as s,o as c,r as l,s as u,t as d}from"./data.js";import{Fragment as f,computed as p,createBlock as m,createCommentVNode as h,createElementBlock as g,createElementVNode as _,createSlots as v,createTextVNode as y,createVNode as b,defineAsyncComponent as x,defineComponent as S,getCurrentInstance as C,guardReactiveProps as w,h as T,inject as E,mergeProps as D,nextTick as O,normalizeProps as k,normalizeStyle as A,onScopeDispose as ee,openBlock as j,reactive as te,ref as M,renderList as N,renderSlot as P,resolveComponent as ne,resolveDynamicComponent as F,shallowReactive as re,shallowRef as ie,toDisplayString as ae,toValue as I,unref as L,watch as R,withCtx as z,withModifiers as oe}from"vue";import{NAlert as B,NButton as V,NCard as se,NCheckbox as ce,NCheckboxGroup as H,NForm as le,NFormItem as ue,NGrid as de,NGridItem as fe,NInput as pe,NInputNumber as U,NRadio as me,NRadioGroup as he,NSelect as ge,NSpace as _e,NSwitch as W,NTooltip as ve}from"naive-ui";import{BasicRules as G,NAIVE_COMBOS as K,PRESET_RULES as ye,SPEC_RULES as be,toNaiveRule as q}from"@robot-admin/form-validate";const J=Symbol(`c-form-global-config`);function xe(){return C()?E(J,{}):{}}function Se(e,t){let n=e??{},r=(e,t)=>e||t?{...e,...t}:void 0;return{...t,...n,grid:r(t.grid,n.grid),inline:r(t.inline,n.inline),card:r(t.card,n.card),tabs:r(t.tabs,n.tabs),steps:r(t.steps,n.steps),dynamic:r(t.dynamic,n.dynamic),custom:r(t.custom,n.custom)}}const Y={layout:`default`,labelPlacement:`left`,labelWidth:`auto`,size:`medium`,disabled:!1,readonly:!1,showActions:!0,validateOnChange:!1,preserveRemovedFields:!1,submitText:``,resetText:``,submitSuccessText:``,resetSuccessText:``,mode:`create`},Ce=[`steps`,`custom`];function X(e){return{...Y,...e}}function we(e){return!(e.showActions===!1||Ce.includes(e.layout))}function Z(e,t=new Set){if(!(typeof e!=`object`||!e||t.has(e))){if(t.add(e),e instanceof Map){e.forEach((e,n)=>{Z(n,t),Z(e,t)});return}if(e instanceof Set){e.forEach(e=>Z(e,t));return}Object.values(e).forEach(e=>Z(e,t))}}function Te(e,t){let n=M({}),r=p(()=>a().length>0);function a(){let r=n.value,a=t?I(t):void 0,o=new Set(a??[...Object.keys(r),...Object.keys(e)]),s=[];for(let t of o){let n=l(e,t);Z(n),i(l(r,t),n)||s.push(t)}return s}function o(t){return!i(l(n.value,t),l(e,t))}function s(){n.value=d(e)}function c(){return d(n.value)}return{isDirty:r,getChangedFields:a,isFieldDirty:o,markAsClean:s,getCleanModel:c}}const Ee=ye,De=K;function Q(e=[]){return e.map(e=>{let t=`validate`in e&&typeof e.validate==`function`?q(e):e;return{...t,...Array.isArray(t.trigger)?{trigger:[...t.trigger]}:{}}})}function Oe(e,t){return Q([{...G.required(e,[`input`,`change`,`blur`]),message:t}])[0]}const ke={input:``,textarea:``,editor:``,select:null,datePicker:null,daterange:null,timePicker:null,cascader:null,colorPicker:null,checkbox:[],upload:[],radio:``,inputNumber:null,slider:null,rate:null,switch:!1};function Ae(e){return d((e.value===void 0?ke[e.type]:e.value)??null)}function je(e){let t=new Set;e.forEach((e,n)=>{if(!e.prop?.trim())throw TypeError(`[C_Form] options[${n}].prop 不能为空`);if(t.has(e.prop))throw TypeError(`[C_Form] 字段 prop 重复: ${e.prop}`);t.add(e.prop)})}function Me(n,r,f,m,h,g){let _=te(d(h?.value??(r.value.mode===`edit`?r.value.initialValues:void 0)??{})),v=te({}),y=new Map,b=M({}),x=M({}),S=M({}),C=M(!1),w=new Map,T=!1,E,D=new Map,k=new Map,A=new Map,j=new Map,N=new Set,P=!1,ne=!1,F=0,re=t(()=>r.value.feedback),{t:ie}=e(()=>r.value.locale),{isDirty:ae,getChangedFields:I,isFieldDirty:L,markAsClean:z,getCleanModel:oe}=Te(_,()=>n.value.map(e=>e.prop));function B(e,t,n){if(!T)try{r.value.onError?r.value.onError(e,{source:t,field:n}):re.error(e instanceof Error?e.message:String(e),e)}catch{}}function V(e,t){if(!(T||!t))try{re[e](t)}catch{}}let se=p(()=>n.value.filter(e=>{if(e.show===!1)return!1;if(!e.showWhen)return!0;try{return e.showWhen(_)}catch(t){return B(t,`callback`,e.prop),!1}}));function ce(){ne=!0;let e=++F;O(()=>{e===F&&(ne=!1)})}function H(){return d(_)}function le(e){let t=e?d(e):{};return n.value.forEach(e=>{o(t,e.prop)||a(t,e.prop,Ae(e))}),t}function ue(e){try{let t=Q(e.rulesWhen?e.rulesWhen(_):e.rules);if(w.delete(e.prop),e.required&&!t.some(e=>e.required)){let n=e.label||e.prop;t.unshift(Oe(n,ie(`form.required`,{label:n})))}if(e.crossFieldValidator){let n=e.crossFieldValidator;t.push({async validator(){let e=await n(_);if(e)throw Error(e)},trigger:[`change`,`blur`]})}if(t.length===0){delete v[e.prop];return}v[e.prop]=t.map(t=>({...t,key:e.prop}))}catch(t){delete v[e.prop],w.set(e.prop,t),B(t,`callback`,e.prop)}}function de(){n.value.forEach(e=>{(e.rulesWhen||e.crossFieldValidator)&&ue(e)})}function fe(e){N.forEach(t=>{e.has(t)||(y.delete(t),delete v[t],w.delete(t),he(t),A.delete(t),r.value.preserveRemovedFields||s(_,t))})}function pe(e=!1){try{je(n.value);let t=H(),r=new Set(n.value.map(e=>e.prop));fe(r),n.value.forEach(e=>{o(_,e.prop)||a(_,e.prop,Ae(e)),ue(e),ge(e)}),N=r,q(me(t),!1),e&&O(z)}catch(e){throw B(e,`initialize`),e}}function U(e){let t=H();ce(),u(_,le(e)),q(me(t),!1)}function me(e){return[...new Set([...Object.keys(e),...Object.keys(_),...n.value.map(e=>e.prop)])].filter(t=>!i(l(e,t),l(_,t)))}function he(e){k.get(e)?.abort(),k.delete(e),D.delete(e),j.delete(e),delete b.value[e],delete x.value[e],delete S.value[e]}function ge(e){if(A.get(e.prop)!==e.asyncOptions){if(he(e.prop),!e.asyncOptions){A.delete(e.prop);return}A.set(e.prop,e.asyncOptions),_e(e,`initialize`)}}function _e(e,t){if(T)return;let n=j.get(e.prop),r={item:e,reason:n?.reason===`initialize`?n.reason:t};j.set(e.prop,r),O(()=>{j.get(e.prop)===r&&(j.delete(e.prop),G(r.item,r.reason))})}function W(e,t,n){return T||n.signal.aborted||D.get(e)!==t||k.get(e)!==n}function ve(e){return!T&&!!e.asyncOptions&&A.get(e.prop)===e.asyncOptions}async function G(e,t){if(!ve(e))return;let{prop:n}=e,r=(D.get(n)??0)+1;D.set(n,r),k.get(n)?.abort();let i=new AbortController;k.set(n,i),x.value[n]=!0,delete S.value[n];try{let a=await e.asyncOptions(H(),{field:n,reason:t,signal:i.signal});if(W(n,r,i))return;if(!Array.isArray(a))throw TypeError(`[C_Form] ${n}.asyncOptions 必须返回数组`);b.value[n]=d([...a])}catch(e){if(W(n,r,i))return;S.value[n]=e,B(e,`async-options`,n)}finally{D.get(n)===r&&k.get(n)===i&&(x.value[n]=!1,k.delete(n))}}async function K(e){let t=n.value.filter(t=>t.asyncOptions&&(!e||t.prop===e));if(e&&t.length===0)throw Error(`[C_Form] 未找到异步选项字段: ${e}`);await Promise.all(t.map(e=>(j.delete(e.prop),G(e,`manual`))))}function ye(){let e=n.value.filter(e=>e.valueWhen),t=new Set;if(e.length===0)return[];for(let n=0;n<=e.length;n+=1){let n=!1;for(let r of e)try{let e=r.valueWhen?.(_);e!==void 0&&!i(l(_,r.prop),e)&&(a(_,r.prop,d(e)),t.add(r.prop),n=!0)}catch(e){B(e,`callback`,r.prop)}if(!n)return[...t]}return B(Error(`[C_Form] valueWhen 存在循环依赖,已停止继续计算`),`callback`),[...t]}function be(e){let t=e.map(e=>c(e).join(`.`));return n.value.filter(e=>!e.asyncOptions||!e.dependsOn?!1:(Array.isArray(e.dependsOn)?e.dependsOn:[e.dependsOn]).some(e=>{let n=c(e).join(`.`);return t.some(e=>e===n||e.startsWith(`${n}.`)||n.startsWith(`${e}.`))}))}function q(e,t=!0){let n=[...new Set([...e,...ye()])];de(),be(n).forEach(e=>{_e(e,`dependency`)}),t&&r.value.validateOnChange&&O(()=>{T||Y(n).catch(()=>void 0)})}function J(e){q([e])}function xe(e,t){t?y.set(e,t):y.delete(e)}async function Se(){if(g?.value===!1)throw Error(`[C_Form] 布局尚未加载完成`);if(!f.value)throw Error(`[C_Form] 表单引用不存在`);try{let e=se.value.find(e=>w.has(e.prop));if(e)throw w.get(e.prop);if(await f.value.validate(),T)throw Error(`[C_Form] 表单已卸载`);m(`validate-success`,H())}catch(e){throw T||m(`validate-error`,e),e}}async function Y(e){if(g?.value===!1)throw Error(`[C_Form] 布局尚未加载完成`);if(!f.value)throw Error(`[C_Form] 表单引用不存在`);let t=[...new Set(Array.isArray(e)?e:[e])],n=t.find(e=>w.has(e));if(n)throw w.get(n);let r=[],i=t.flatMap(e=>{let t=y.get(e);return t?[t.validate()]:(r.push(e),[])});r.length>0&&i.push(f.value.validate(void 0,e=>r.includes(String(e.key??``))));let a=(await Promise.allSettled(i)).filter(e=>e.status===`rejected`).map(e=>e.reason);if(a.length>0)throw a}function Ce(e){if(!e){f.value?.restoreValidation();return}(Array.isArray(e)?e:[e]).forEach(e=>y.get(e)?.restoreValidation())}async function X(e){let t=se.value.filter(e).map(e=>e.prop);if(t.length===0)return!0;try{return await Y(t),!0}catch{return!1}}function we(e){let t=typeof e==`string`?e:r.value.steps?.steps?.[e]?.key;return t?X(e=>e.layout?.step===t):Promise.resolve(!0)}function Z(e){return X(t=>t.layout?.tab===e)}function Ee(){return X(e=>!!e.layout?.dynamic)}function De(e){return X(t=>t.layout?.group===e)}function ke(e){Object.entries(d(e)).forEach(([e,t])=>{a(_,e,t)}),q(Object.keys(e))}function Me(){let e=H();u(_,oe()),Ce(),q(me(e),!1),V(`info`,r.value.resetSuccessText)}async function Ne(e,t,n=!1){a(_,e,d(t)),J(e),n&&await Y(e)}function Pe(e){return d(l(_,e))}async function $(e,t=!1){ke(e),t&&await Y(Object.keys(e))}function Fe(){return T||g?.value===!1||C.value||r.value.disabled||r.value.readonly}function Ie(e,t,n){return!T&&!e.signal.aborted&&g?.value!==!1&&!r.value.disabled&&!r.value.readonly&&n!==null&&f.value===n&&i(_,t)}async function Le(){if(Fe())return!1;let e=H(),t=f.value,n=new AbortController;E=n,C.value=!0;try{if(await Se(),!Ie(n,e,t))return!1;let i={model:e,form:t};try{await r.value.onSubmit?.(i,{signal:n.signal})}catch(e){return n.signal.aborted||B(e,`submit`),!1}return n.signal.aborted?!1:(m(`submit`,i),V(`success`,r.value.submitSuccessText),!0)}catch{return!1}finally{E===n&&(E=void 0),C.value=!1}}function Re(){pe(!0);let e=h?.value??(r.value.mode===`edit`?r.value.initialValues:void 0);e&&U(e),O(z)}return R(n,()=>{let e=!P;e&&ce(),pe(e),P=!0},{deep:!0,immediate:!0}),h&&R(h,e=>{e!==void 0&&!i(_,e)&&U(e)},{deep:!0,immediate:!0}),R(()=>[r.value.mode,r.value.initialValues],([e,t])=>{h?.value!==void 0||e!==`edit`||!t||(U(t),O(z))},{deep:!0}),R(_,e=>{ne||m(`update:modelValue`,d(e))},{deep:!0,flush:`post`}),ee(()=>{T=!0,E?.abort(),k.forEach(e=>e.abort()),k.clear(),j.clear(),y.clear()}),{formModel:_,formRules:v,visibleOptions:se,initialize:Re,handleFieldChange:J,setFormItemRef:xe,validate:Se,validateField:Y,validateStep:we,validateTab:Z,validateDynamicFields:Ee,validateCustomGroup:De,clearValidation:Ce,getModel:H,setFields:ke,resetFields:Me,setFieldValue:Ne,getFieldValue:Pe,setFieldsValue:$,submit:Le,handleSubmit:Le,handleReset:Me,isSubmitting:C,isDirty:ae,getChangedFields:I,isFieldDirty:L,markAsClean:z,asyncOptionsCache:b,asyncLoadingMap:x,asyncErrorMap:S,reloadOptions:K}}const Ne=Symbol(`c-form-renderer-registry`);function Pe(e={}){let t=re(new Map),n={get:e=>t.get(e)?.renderer,register:(e,n)=>{if(!e.trim())throw TypeError(`[C_Form] renderer type 不能为空`);if(typeof n!=`function`)throw TypeError(`[C_Form] renderer ${e} 必须是函数`);let r={renderer:n};return t.set(e,r),()=>t.get(e)===r&&t.delete(e)},unregister:(e,n)=>{let r=t.get(e);return!r||n&&r.renderer!==n?!1:t.delete(e)}};return Object.entries(e).forEach(([e,t])=>{n.register(e,t)}),n}function $(e,t,n){return e===void 0?t:typeof e==`function`?e(n):e}function Fe(e){return{input:t=>T(e.NInput,{...t}),textarea:t=>T(e.NInput,{...t,type:`textarea`}),inputNumber:t=>T(e.NInputNumber,{...t}),switch:t=>T(e.NSwitch,{...t}),slider:t=>T(e.NSlider,{...t}),rate:t=>T(e.NRate,{...t}),datePicker:t=>T(e.NDatePicker,{...t}),daterange:t=>T(e.NDatePicker,{...t,type:`daterange`}),timePicker:t=>T(e.NTimePicker,{...t}),cascader:t=>T(e.NCascader,{...t}),colorPicker:t=>T(e.NColorPicker,{...t}),select:(t,n)=>T(e.NSelect,{...t,options:n.children?.map(e=>({...e}))||[]}),checkbox:(t,n)=>T(e.NCheckboxGroup,{...t},{default:()=>T(e.NSpace,{},{default:()=>n.children?.map(t=>T(e.NCheckbox,{value:t.value,label:t.label,disabled:t.disabled,key:String(t.value)}))||[]})}),radio:(t,n)=>T(e.NRadioGroup,{...t},{default:()=>T(e.NSpace,{},{default:()=>n.children?.map(t=>T(e.NRadio,{value:t.value,disabled:t.disabled,key:String(t.value)},{default:()=>t.label}))||[]})}),upload:(t,n,r,i)=>{let a={...t},{value:o}=a,s=a[`onUpdate:value`];return delete a.value,delete a[`onUpdate:value`],T(e.NUpload,{...a,fileList:Array.isArray(o)?o:[],"onUpdate:fileList":e=>s?.(e)},{trigger:()=>i.slots?.uploadClick?.()||T(e.NButton,{type:`primary`},{default:()=>`选择文件`}),tip:()=>i.slots?.uploadTip?.()||null})},editor:(t,n)=>{let r={...t},{value:i}=r,a=r[`onUpdate:value`];return delete r.value,delete r[`onUpdate:value`],T(e.C_Editor,{...r,editorId:`editor-${n.prop}`,modelValue:typeof i==`string`?i:``,"onUpdate:modelValue":e=>a?.(e)})}}}const Ie=Pe();function Le(e,t){return Ie.register(e,t)}function Re(e,t){return Ie.unregister(e,t)}const ze=new Set([`select`,`checkbox`,`radio`,`cascader`]),Be=new Set([`input`,`textarea`,`inputNumber`,`rate`,`editor`]);function Ve(e){let{formModel:t,visibleOptions:n,config:r,handleFieldChange:i,componentMap:o,instanceSlots:s,asyncOptionsCache:c,asyncLoadingMap:u,renderers:d,setFormItemRef:f,onError:m}=e,h=o,g=Fe(h),_=C()?E(Ne,void 0):void 0,v=e.registry??_??Ie,y=e=>d?.value?.[e]??v.get(e)??g[e],b=e=>{let n=$(e.disabled,r.value.disabled,t),o=$(e.readonly,r.value.readonly,t),s=Be.has(e.type),c={value:l(t,e.prop),"onUpdate:value":n=>{$(e.disabled,r.value.disabled,t)||$(e.readonly,r.value.readonly,t)||(a(t,e.prop,n),i(e.prop))},disabled:n||o&&!s,readonly:o||e.type===`rate`&&n};return e.type===`textarea`&&(c.type=`textarea`),e.placeholder&&(c.placeholder=e.placeholder),c};function x(e){let t=e.children??[];return Object.prototype.hasOwnProperty.call(c.value,e.prop)?c.value[e.prop]??[]:t}function S(e){return ze.has(e.type)?{...e,children:x(e)}:e}function w(e,t){return e.type===`select`&&u.value[e.prop]&&(t.loading=!0),t}let O=e=>{try{let t=S(e),n=y(t.type);return n?n(w(t,D(t.attrs??{},b(t))),t,r.value,{slots:s,components:h}):(m?.(TypeError(`[C_Form] 未支持的组件类型: ${t.type}`),t.prop),null)}catch(t){return m?.(t,e.prop),null}};function k(e){if(e.label)return e.help?T(`span`,{style:`display:inline-flex;align-items:center;gap:4px`},[e.label,T(h.NTooltip,{trigger:`hover`},{trigger:()=>T(`span`,{style:`cursor:help;opacity:0.5;font-size:14px`,textContent:`ⓘ`}),default:()=>e.help})]):e.label}return{renderFormItem:O,formItems:p(()=>n.value.map(e=>{let t=!!(e.required||e.rules?.some(e=>e.required)),n=k(e);return T(h.NFormItem,{label:typeof n==`string`?n:void 0,path:e.prop,key:e.prop,required:t,ref:t=>f?.(e.prop,t)},{...typeof n!=`string`&&n?{label:()=>n}:{},default:()=>O(e)})})),getBaseProps:b}}const He={class:`c-form-default`};var Ue=r(S({__name:`index`,props:{formItems:{},layoutConfig:{},options:{}},setup(e){return(t,n)=>(j(),g(`div`,He,[(j(!0),g(f,null,N(e.formItems,(e,t)=>(j(),m(F(e),{key:e.key??t}))),128))]))}}),[[`__scopeId`,`data-v-4313de0c`]]),We=r(S({__name:`index`,props:{formItems:{},layoutConfig:{default:()=>({})},options:{default:()=>[]}},setup(e){let t=e,n=p(()=>t.layoutConfig?.inline?.itemWidth??280),r=p(()=>t.layoutConfig?.inline?.gap??16),i=p(()=>t.layoutConfig?.inline?.rowGap??16),a=p(()=>t.layoutConfig?.inline?.align??`center`),o=p(()=>{switch(a.value){case`start`:return`flex-start`;case`end`:return`flex-end`;default:return a.value}}),s=p(()=>{switch(a.value){case`start`:return`flex-start`;case`end`:return`flex-end`;case`center`:return`center`;default:return`flex-start`}}),c=p(()=>({display:`flex`,flexWrap:t.layoutConfig?.inline?.wrap??`wrap`,alignItems:o.value,justifyContent:s.value,gap:`${i.value}px ${r.value}px`,width:`100%`})),l=(e,t)=>{if(e.key!=null)return String(e.key);let n=e.props;return n?.path?n.path:`form-item-${t}`},u=e=>{let r=t.options?.[e]?.layout,i={width:`${n.value}px`,flexShrink:0,display:`flex`,flexDirection:`column`};return r?.width!==void 0&&(i.width=typeof r.width==`number`?`${r.width}px`:r.width),r?.style&&Object.assign(i,r.style),i};return(t,n)=>(j(),g(`div`,{class:`c-form-inline`,style:A(c.value)},[(j(!0),g(f,null,N(e.formItems,(e,t)=>(j(),g(`div`,{key:l(e,t),class:`c-form-inline-item`,style:A(u(t))},[(j(),m(F(e)))],4))),128))],4))}}),[[`__scopeId`,`data-v-711f6c00`]]);const Ge={class:`c-grid-layout`},Ke={class:`config-header`},qe={class:`config-controls`},Je={class:`config-label`},Ye={class:`item-wrapper`};var Xe=r(S({__name:`index`,props:{formItems:{},layoutConfig:{default:()=>({})},options:{default:()=>[]}},setup(e,{expose:t}){let r=e,i=te({cols:24,gutter:16,responsive:!0}),a=p(()=>r.layoutConfig?.grid||{}),o=p(()=>a.value.showConfigPanel),s=p(()=>a.value.showStats),c=p(()=>({cols:o.value?i.cols:a.value.cols??24,gutter:o.value?i.gutter:a.value.gutter??16,responsive:o.value?i.responsive:a.value.responsive??!0})),l=p(()=>({cols:c.value.cols,xGap:a.value.xGap??c.value.gutter,yGap:a.value.yGap??a.value.yGutter??c.value.gutter,responsive:c.value.responsive?`screen`:`self`})),u=p(()=>[{key:`cols`,label:`列数`,component:U,value:i.cols,update:e=>{typeof e==`number`&&(i.cols=e)},props:{min:1,max:48,size:`small`}},{key:`gutter`,label:`间距`,component:U,value:i.gutter,update:e=>{typeof e==`number`&&(i.gutter=e)},props:{min:0,max:48,size:`small`}},{key:`responsive`,label:`响应式`,component:W,value:i.responsive,update:e=>{typeof e==`boolean`&&(i.responsive=e)},props:{size:`small`}}]),d=p(()=>`列数: ${c.value.cols} | 间距: ${c.value.gutter}px | 项目: ${r.formItems.length}个`),v=(e,t)=>String(e.key)||e.props?.path||`grid-item-${t}`,x=(e,t)=>{let n=r.options?.[e]?.layout;return n?.[t]??n?.grid?.[t]},S=()=>{let{cols:e}=c.value;return e<=12?e:e<=24?12:8},C=e=>{let t=x(e,`span`),n=x(e,`offset`),r=x(e,`suffix`);return{span:typeof t==`number`&&t>0&&t<=c.value.cols?t:S(),offset:typeof n==`number`&&n>=0&&n<c.value.cols?n:0,suffix:!!r}};return R(a,e=>{e.cols!==void 0&&(i.cols=e.cols),e.gutter!==void 0&&(i.gutter=e.gutter),e.responsive!==void 0&&(i.responsive=e.responsive)},{immediate:!0}),t({updateGridConfig:e=>Object.assign(i,e),getCurrentConfig:()=>({...c.value}),getGridInfo:()=>({...c.value,itemCount:r.formItems.length})}),(t,r)=>{let i=se,a=fe,c=de,p=B;return j(),g(`div`,Ge,[h(` 配置面板 `),o.value?(j(),m(i,{key:0,size:`small`,bordered:!1,class:`config-panel`},{header:z(()=>[_(`div`,Ke,[b(n,{name:`mdi:view-grid`,size:18}),r[0]||=_(`span`,null,`网格配置`,-1)])]),default:z(()=>[_(`div`,qe,[(j(!0),g(f,null,N(u.value,e=>(j(),g(`div`,{key:e.key,class:`config-item`},[_(`span`,Je,ae(e.label)+`:`,1),(j(),m(F(e.component),D({value:e.value},{ref_for:!0},e.props,{"onUpdate:value":e.update}),null,16,[`value`,`onUpdate:value`]))]))),128))])]),_:1})):h(`v-if`,!0),h(` 网格容器 `),b(c,D(l.value,{class:`grid-container`}),{default:z(()=>[(j(!0),g(f,null,N(e.formItems,(e,t)=>(j(),m(a,D({key:v(e,t)},{ref_for:!0},C(t),{class:`grid-item`}),{default:z(()=>[_(`div`,Ye,[(j(),m(F(e)))])]),_:2},1040))),128))]),_:1},16),h(` 统计信息 `),s.value?(j(),m(p,{key:1,type:`info`,"show-icon":!1,size:`small`,class:`grid-stats`},{header:z(()=>[b(n,{name:`mdi:information-outline`,size:16}),r[1]||=y(` 网格信息 `,-1)]),default:z(()=>[y(` `+ae(d.value),1)]),_:1})):h(`v-if`,!0)])}}}),[[`__scopeId`,`data-v-1d221c83`]]);const Ze=[`default`,`inline`,`grid`],Qe={NFormItem:ue,NInput:pe,NInputNumber:U,NSwitch:W,NSelect:ge,NCheckboxGroup:H,NCheckbox:ce,NRadioGroup:he,NRadio:me,NButton:V,NSpace:_e,NTooltip:ve,NSlider:x(()=>import(`./slider.js`)),NRate:x(()=>import(`./rate.js`)),NDatePicker:x(()=>import(`./date-picker.js`)),NTimePicker:x(()=>import(`./time-picker.js`)),NCascader:x(()=>import(`./cascader.js`)),NColorPicker:x(()=>import(`./color-picker.js`)),NUpload:x(()=>import(`./upload.js`)),C_Editor:x(()=>import(`./C_Editor.js`).then(e=>e.C_Editor))},$e={default:Ue,inline:We,grid:Xe,card:x(()=>import(`./Card.js`)),tabs:x(()=>import(`./Tabs.js`)),steps:x(()=>import(`./Steps.js`)),dynamic:x(()=>import(`./Dynamic.js`)),custom:x(()=>import(`./Custom.js`))};var et=r(S({name:`C_Form`,__name:`index`,props:{options:{},modelValue:{},config:{default:()=>({})},renderers:{}},emits:[`submit`,`update:modelValue`,`validate-success`,`validate-error`],setup(t,{expose:n,emit:r}){let i=t,a=r,o=xe(),s=p(()=>X(Se(i.config,o))),{t:c}=e(()=>s.value.locale),l=M(null),u=M(null),d=p(()=>Ze.includes(s.value.layout)||u.value===s.value.layout),{formModel:f,formRules:g,visibleOptions:_,initialize:x,handleFieldChange:S,validate:T,validateField:E,validateStep:O,validateTab:A,validateDynamicFields:ee,validateCustomGroup:te,clearValidation:ne,getModel:re,setFields:ie,resetFields:I,setFieldValue:R,getFieldValue:B,setFieldsValue:se,handleSubmit:ce,handleReset:H,isDirty:de,getChangedFields:fe,isFieldDirty:pe,markAsClean:U,asyncOptionsCache:me,asyncLoadingMap:he,asyncErrorMap:ge,reloadOptions:W,setFormItemRef:ve,isSubmitting:G,submit:K}=Me(p(()=>i.options),s,l,a,p(()=>i.modelValue),d),ye=p(()=>f.value),be=()=>re(),q=p(()=>({form:l.value,model:ye.value,validate:T,validateField:E,reset:I,setFields:ie,getModel:be,clearValidation:ne,submit:K,reloadOptions:W,submitting:G.value})),J=C(),Y=()=>Object.keys(J?.slots??{}).filter(e=>![`action`,`action-extra`,`step-actions`].includes(e)),{formItems:Ce}=Ve({formModel:f,visibleOptions:_,config:s,handleFieldChange:S,componentMap:Qe,instanceSlots:J?.slots,asyncOptionsCache:me,asyncLoadingMap:he,renderers:p(()=>i.renderers),setFormItemRef:ve,onError:(e,t)=>s.value.onError?.(e,{source:`render`,field:t})}),Z=p(()=>$e[s.value.layout]||$e.default),Te=p(()=>({type:s.value.layout,grid:s.value.grid,inline:s.value.inline,card:s.value.card,tabs:s.value.tabs,steps:s.value.steps,dynamic:s.value.dynamic,custom:s.value.custom})),Ee=p(()=>we(s.value)),De=p(()=>{let{layout:e}=s.value;return{...e===`steps`?{beforeStepChange:$,validateStep:Fe,submitting:G.value,disabled:s.value.disabled||s.value.readonly}:e===`tabs`?{beforeTabChange:je,validateTab:Ne}:{},onVnodeMounted:()=>{u.value=e}}}),Q=(e,...t)=>{let n=s.value[e];if(typeof n==`function`)try{let e=n(...t);e instanceof Promise&&e.catch(e=>s.value.onError?.(e,{source:`callback`}))}catch(e){s.value.onError?.(e,{source:`callback`})}},Oe=e=>{s.value.onFieldsChange?.(e)},ke=e=>{a(`validate-success`,e)},Ae=e=>{a(`validate-error`,e)},je=async(e,t)=>{try{return await s.value.onTabBeforeChange?.(e,t)!==!1}catch(e){return s.value.onError?.(e,{source:`callback`}),!1}},Ne=async e=>{let t=await A(e);return t&&s.value.onTabValidate?.(e),t},Pe=(e,t)=>{s.value.onStepChange?.(e,t)},$=async(e,t)=>{try{return await s.value.onStepBeforeChange?.(e,t)!==!1}catch(e){return s.value.onError?.(e,{source:`callback`}),!1}},Fe=async(e,t)=>{try{return await O(t)?(s.value.onStepValidate?.(e),!0):!1}catch{return!1}};return n({validate:T,validateField:E,validateStep:O,validateTab:A,validateDynamicFields:ee,validateCustomGroup:te,clearValidation:ne,getModel:re,setFields:ie,resetFields:I,setFieldValue:R,getFieldValue:B,setFieldsValue:se,formRef:l,formModel:f,initialize:x,layoutType:p(()=>s.value.layout),shouldShowDefaultActions:Ee,isDirty:de,getChangedFields:fe,isFieldDirty:pe,markAsClean:U,asyncLoadingMap:he,asyncErrorMap:ge,reloadOptions:W,isSubmitting:G,submit:K}),(e,t)=>(j(),m(L(le),D({ref_key:`formRef`,ref:l,model:L(f),rules:L(g),"validate-on-rule-change":!1,"label-placement":s.value.labelPlacement,"label-width":s.value.labelWidth,size:s.value.size,disabled:s.value.disabled,readonly:s.value.readonly},e.$attrs,{onSubmit:oe(L(K),[`prevent`])}),{default:z(()=>[h(` 布局组件渲染 `),(j(),m(F(Z.value),D({key:s.value.layout,"form-items":L(Ce),"layout-config":Te.value,options:L(_),"form-data":L(f)},De.value,{onTabChange:t[0]||=(e,t)=>Q(`onTabChange`,e,t),onStepChange:Pe,onFieldAdd:t[1]||=e=>Q(`onFieldAdd`,e),onFieldRemove:t[2]||=e=>Q(`onFieldRemove`,e),onFieldToggle:t[3]||=(e,t)=>Q(`onFieldToggle`,e,t),onFieldsClear:t[4]||=e=>Q(`onFieldsClear`),onRenderModeChange:t[5]||=e=>Q(`onRenderModeChange`,e),onGroupToggle:t[6]||=(e,t)=>Q(`onGroupToggle`,e,t),onGroupReset:t[7]||=e=>Q(`onGroupReset`,e),onValidateSuccess:ke,onValidateError:Ae,onFieldsChange:Oe}),v({"step-actions":z(t=>[P(e.$slots,`step-actions`,D(t,{submit:L(K),submitting:L(G)}),()=>[t.isLastStep&&s.value.showActions?(j(),m(L(V),{key:0,type:`primary`,loading:L(G)||!d.value,disabled:!d.value||L(G)||s.value.disabled||s.value.readonly,onClick:L(K)},{default:z(()=>[y(ae(s.value.submitText||L(c)(`common.submit`)),1)]),_:1},8,[`loading`,`disabled`,`onClick`])):h(`v-if`,!0)],!0)]),_:2},[N(Y(),t=>({name:t,fn:z(n=>[P(e.$slots,t,k(w(n)),void 0,!0)])}))]),1040,[`form-items`,`layout-config`,`options`,`form-data`])),h(` 表单操作按钮区域(只在特定布局中显示) `),Ee.value?(j(),m(L(ue),{key:0,style:{"margin-top":`20px`}},{default:z(()=>[P(e.$slots,`action`,k(w(q.value)),()=>[b(L(_e),{justify:`end`,style:{width:`100%`}},{default:z(()=>[b(L(V),{disabled:!d.value||L(G)||s.value.disabled||s.value.readonly,onClick:L(H)},{default:z(()=>[y(ae(s.value.resetText||L(c)(`common.reset`)),1)]),_:1},8,[`disabled`,`onClick`]),P(e.$slots,`action-extra`,k(w(q.value)),void 0,!0),b(L(V),{type:`primary`,loading:L(G)||!d.value,disabled:!d.value||L(G)||s.value.disabled||s.value.readonly,onClick:L(ce)},{default:z(()=>[y(ae(s.value.submitText||L(c)(`common.submit`)),1)]),_:1},8,[`loading`,`disabled`,`onClick`])]),_:3})],!0)]),_:3})):h(`v-if`,!0)]),_:3},16,[`model`,`rules`,`label-placement`,`label-width`,`size`,`disabled`,`readonly`,`onSubmit`]))}}),[[`__scopeId`,`data-v-2843988e`]]);function tt(e){return e}function nt(e){return e}function rt(e){let t=ie(d(e.initialValues)),n=ie(null);return{model:t,formRef:n,bindings:p(()=>({modelValue:t.value,options:I(e.options),config:I(e.config),"onUpdate:modelValue":e=>{t.value=d(e)}})),validate:()=>n.value?.validate()??Promise.resolve(),submit:()=>n.value?.submit()??Promise.resolve(!1),reset:()=>{n.value?(n.value.resetFields(),t.value=d(n.value.getModel())):t.value=d(e.initialValues)},getValues:()=>d(n.value?.getModel()??t.value),setValues:async(e,r=!1)=>{n.value?(await n.value.setFieldsValue(e,r),t.value=d(n.value.getModel())):t.value={...t.value,...d(e)}}}}export{Ce as _,Ne as a,we as b,Re as c,De as d,Ee as f,J as g,Y as h,et as i,Ve as l,Te as m,tt as n,Pe as o,be as p,rt as r,Le as s,nt as t,Me as u,Se as v,xe as x,X as y};
package/dist/index.cjs CHANGED
@@ -1 +1 @@
1
- Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:`Module`}});const e=require(`./chunk.cjs`),t=require(`./config.cjs`),n=require(`./C_Icon2.cjs`),r=require(`./C_Code2.cjs`),i=require(`./C_Loading2.cjs`),a=require(`./createPageLoading.cjs`),o=require(`./C_Upload2.cjs`),ee=require(`./C_Barcode2.cjs`),s=require(`./C_Captcha2.cjs`),te=require(`./C_Cascade2.cjs`),ne=require(`./C_Guide2.cjs`),re=require(`./C_Progress2.cjs`),ie=require(`./C_Steps2.cjs`),c=require(`./C_ActionBar2.cjs`),ae=require(`./C_Theme2.cjs`),oe=require(`./C_Language2.cjs`),se=require(`./C_Date2.cjs`),ce=require(`./C_Editor2.cjs`),le=require(`./C_Markdown2.cjs`),l=require(`./C_Map2.cjs`),ue=require(`./C_City2.cjs`),u=require(`./C_VtableGantt2.cjs`),d=require(`./C_Signature2.cjs`),f=require(`./C_SplitPane2.cjs`),de=require(`./C_CollapsePanel2.cjs`),p=require(`./C_Time2.cjs`),m=require(`./storage.cjs`),h=require(`./C_FormSearch2.cjs`),g=require(`./C_Tree2.cjs`),_=require(`./C_QRCode2.cjs`),v=require(`./C_ImageCropper2.cjs`),y=require(`./C_Draggable2.cjs`),b=require(`./C_WaterFall2.cjs`),x=require(`./C_FullCalendar2.cjs`),S=require(`./C_NotificationCenter2.cjs`),C=require(`./C_Cron2.cjs`),w=require(`./useFormulaEvaluator.cjs`),T=require(`./C_AntV2.cjs`),E=require(`./C_VideoPlayer2.cjs`),D=require(`./C_FilePreview2.cjs`),O=require(`./C_WorkFlow2.cjs`),k=require(`./C_Form2.cjs`),A=require(`./helpers.cjs`),fe=require(`./C_FormModal2.cjs`),j=require(`./useTableQuery.cjs`),M=require(`./C_GlobalSearch2.cjs`),N=require(`./C_Menu2.cjs`),pe=require(`./C_Breadcrumb2.cjs`),P=require(`./C_TagsView2.cjs`),F=require(`./C_AudioPlayer2.cjs`),I=require(`./C_AvatarGroup2.cjs`),L=require(`./C_Chat2.cjs`),R=require(`./C_ContextMenu2.cjs`),z=require(`./C_Login2.cjs`),B=require(`./C_Timeline2.cjs`),V=require(`./data2.cjs`),H=require(`./C_Transfer2.cjs`),me=require(`./C_Skeleton2.cjs`),he=require(`./C_OrgChart2.cjs`);let U=require(`highlight.js/lib/core`);U=e.t(U);let W=require(`highlight.js/lib/languages/javascript`);W=e.t(W);let G=require(`highlight.js/lib/languages/typescript`);G=e.t(G);let K=require(`highlight.js/lib/languages/json`);K=e.t(K);let q=require(`highlight.js/lib/languages/xml`);q=e.t(q);let J=require(`highlight.js/lib/languages/css`);J=e.t(J);let Y=require(`highlight.js/lib/languages/bash`);Y=e.t(Y);let X=require(`highlight.js/lib/languages/yaml`);X=e.t(X);let Z=require(`highlight.js/lib/languages/markdown`);Z=e.t(Z);let ge=require(`highlight.js/lib/languages/java`);ge=e.t(ge);let _e=require(`highlight.js/lib/languages/csharp`);_e=e.t(_e);let ve=require(`highlight.js/lib/languages/go`);ve=e.t(ve);let ye=require(`highlight.js/lib/languages/python`);ye=e.t(ye);let be=require(`@robot-admin/form-validate`);const xe={cpp:()=>import(`highlight.js/lib/languages/cpp`),c:()=>import(`highlight.js/lib/languages/c`),php:()=>import(`highlight.js/lib/languages/php`),ruby:()=>import(`highlight.js/lib/languages/ruby`),rust:()=>import(`highlight.js/lib/languages/rust`),swift:()=>import(`highlight.js/lib/languages/swift`),kotlin:()=>import(`highlight.js/lib/languages/kotlin`),scss:()=>import(`highlight.js/lib/languages/scss`),less:()=>import(`highlight.js/lib/languages/less`),sql:()=>import(`highlight.js/lib/languages/sql`),dockerfile:()=>import(`highlight.js/lib/languages/dockerfile`),powershell:()=>import(`highlight.js/lib/languages/powershell`)},Se=new Set,Q=new Map,$=U.default;function Ce(e,t){$.registerLanguage(e,t),Se.add(e)}function we(e){[[`javascript`,W.default],[`typescript`,G.default],[`json`,K.default],[`html`,q.default],[`xml`,q.default],[`css`,J.default],[`bash`,Y.default],[`shell`,Y.default],[`yaml`,X.default],[`yml`,X.default],[`markdown`,Z.default],[`java`,ge.default],[`csharp`,_e.default],[`go`,ve.default],[`python`,ye.default]].forEach(([e,t])=>{Ce(e,t)}),$.configure({ignoreUnescapedHTML:!0,languages:e.autoDetect?void 0:[]}),e.extraLanguages?.length&&Te(e.extraLanguages,e)}async function Te(e,t={}){let n=e.map(e=>Ee(e,t));return(await Promise.allSettled(n)).map((t,n)=>t.status===`fulfilled`&&t.value?e[n]:null).filter(Boolean)}async function Ee(e,t={}){let n=e.toLowerCase();if(Se.has(n))return!0;let r=Q.get(n);if(r)return r;let i=xe[n];if(!i)return t.logger?.warn(`[HighlightPlugin] Language '${e}' not supported`),!1;let a=(async()=>{try{return Ce(n,(await i()).default),t.debug&&t.logger?.info(`[HighlightPlugin] Language '${n}' loaded successfully`),!0}catch(e){return t.logger?.error(`[HighlightPlugin] Failed to load language '${n}'`,e),t.onError?.(e,{source:`language-loader`,language:n}),!1}finally{Q.delete(n)}})();return Q.set(n,a),a}const De=(e={})=>({getHljs:()=>$,loadLanguage:t=>Ee(t,e),loadLanguages:t=>Te(t,e),getLoadedLanguages:()=>Array.from(Se)});function Oe(e,t={}){let n={autoDetect:!1,extraLanguages:[],...t};we(n),typeof window<`u`&&Reflect.set(window,`hljs`,$);let r=De(n);e.provide(`highlightManager`,r),e.config.globalProperties.$highlight=r,n.debug&&n.logger?.info(`[HighlightPlugin] highlight.js plugin installed`)}const ke=[r.t,n.t,i.t,a.n,o.t,ee.t,s.t,te.t,ne.t,re.t,ie.t,c.t,ae.t,oe.t,se.t,ce.t,le.t,l.t,ue.t,u.t,d.t,f.t,de.t,p.t,h.t,g.t,_.t,v.t,y.t,b.t,x.t,S.t,C.t,w.n,T.t,E.t,D.t,O.t,k.t,fe.t,j.n,M.t,N.t,pe.t,P.t,F.t,I.t,L.t,R.t,z.t,B.t,V.n,H.t,me.t,he.t];var Ae={install:(e,n={})=>{ke.forEach(t=>{let n=t,r=n.__name||n.name||`UnknownComponent`;e.component(r,t)}),n.highlight!==void 0&&Oe(e,n.highlight),n.feedback&&e.provide(t.t,n.feedback),n.locale&&e.provide(t.n,n.locale),n.form&&e.provide(k.p,n.form),n.table&&e.provide(j.u,n.table)}};exports.ACTION_BAR_DEFAULT_CONFIG=c.n,exports.ACTION_KEYS=w.i,exports.ACTION_PRESETS=c.r,exports.AVATAR_STATUS_COLOR_MAP=I.r,exports.BUTTON_TEXT=x.r,exports.CATEGORY_MAP=S.a,exports.CATEGORY_TABS=S.o,exports.COMPONENT_FEEDBACK_KEY=t.t,exports.COMPONENT_LOCALE_KEY=t.n,exports.CRON_FIELD_META=C.a,exports.CRON_TEMPLATES=C.o,exports.C_ActionBar=c.t,exports.C_AntV=T.t,exports.C_AudioPlayer=F.t,exports.C_AvatarGroup=I.t,exports.C_Barcode=ee.t,exports.C_Breadcrumb=pe.t,exports.C_Captcha=s.t,exports.C_Cascade=te.t,exports.C_Chat=L.t,exports.C_City=ue.t,exports.C_Code=r.t,exports.C_CollapsePanel=de.t,exports.C_ContextMenu=R.t,exports.C_Cron=C.t,exports.C_Date=se.t,exports.C_Draggable=y.t,exports.C_Editor=ce.t,exports.C_FilePreview=D.t,exports.C_Form=k.t,exports.C_FormModal=fe.t,exports.C_FormSearch=h.t,exports.C_FormulaEditor=w.n,exports.C_FullCalendar=x.t,exports.C_GlobalSearch=M.t,exports.C_Guide=ne.t,exports.C_Icon=n.t,exports.C_ImageCropper=v.t,exports.C_Language=oe.t,exports.C_Loading=i.t,exports.C_Login=z.t,exports.C_Map=l.t,exports.C_Markdown=le.t,exports.C_Menu=N.t,exports.C_NotificationCenter=S.t,exports.C_OrgChart=he.t,exports.C_PageLoading=a.n,exports.C_Progress=re.t,exports.C_QRCode=_.t,exports.C_Signature=d.t,exports.C_Skeleton=me.t,exports.C_SplitPane=f.t,exports.C_Steps=ie.t,exports.C_Table=j.n,exports.C_Tabs=V.n,exports.C_TagsView=P.t,exports.C_Theme=ae.t,exports.C_Time=p.t,exports.C_Timeline=B.t,exports.C_Transfer=H.t,exports.C_Tree=g.t,exports.C_Upload=o.t,exports.C_VideoPlayer=E.t,exports.C_VtableGantt=u.t,exports.C_WaterFall=b.t,exports.C_WorkFlow=O.t,exports.CaptchaVerificationError=s.n,exports.DEFAULT_ACTION_ICON=c.i,exports.DEFAULT_ANIMATION_DURATION=b.a,exports.DEFAULT_AUDIO_PLAYER_PROPS=F.n,exports.DEFAULT_AVATAR_GROUP_PROPS=I.n,exports.DEFAULT_BREAKPOINTS=b.o,exports.DEFAULT_CHAT_PROPS=L.n,exports.DEFAULT_CONTEXT_MENU_PROPS=R.n,exports.DEFAULT_CRON_EXPRESSION=C.s,exports.DEFAULT_CRON_VALUE=C.c,exports.DEFAULT_EDIT_FORM=x.i,exports.DEFAULT_FEATURES=z.n,exports.DEFAULT_FIELD_VALUE=C.l,exports.DEFAULT_FUNCTIONS=w.a,exports.DEFAULT_GAP=b.s,exports.DEFAULT_HEARTBEAT_INTERVAL=E.c,exports.DEFAULT_MAP_CONFIG=l.s,exports.DEFAULT_MAX_BADGE_COUNT=S.s,exports.DEFAULT_PAGE_SIZE=S.c,exports.DEFAULT_PLAYBACK_RATE=E.l,exports.DEFAULT_PLAYBACK_RATES=E.u,exports.DEFAULT_POLLING_INTERVAL=S.l,exports.DEFAULT_SKELETON_COUNT=b.c,exports.DEFAULT_SOCIAL_PROVIDERS=z.r,exports.DEFAULT_STORAGE_KEY=S.u,exports.DEFAULT_TIMELINE_PROPS=B.n,exports.DEFAULT_TRANSFER_PROPS=H.n,exports.DEFAULT_VOLUME=E.d,exports.DEFAULT_WS_HEARTBEAT_INTERVAL=S.d,exports.DEFAULT_WS_HEARTBEAT_MESSAGE=S.f,exports.DEFAULT_WS_MAX_RECONNECT=S.p,exports.DEFAULT_WS_RECONNECT_INTERVAL=S.m,exports.DYNAMIC_FORM_STATE_KEY=k.n,exports.EVENT_COLORS=x.a,exports.FIELD_TYPE_OPTIONS=k.r,exports.FORM_DEFAULTS=k.f,exports.FORM_GLOBAL_CONFIG_KEY=k.p,exports.HEADER_TOOLBAR=x.o,exports.INFINITE_SCROLL_THRESHOLD=b.l,exports.KEYBOARD_SHORTCUTS=E.f,exports.LAYOUTS_WITH_OWN_CONTROLS=k.m,exports.MAP_TYPES=l.c,exports.MOCK_MESSAGES=S.h,exports.MODE_ICON_MAP=F.r,exports.MONTH_LABELS=C.u,exports.NAIVE_COMBOS=k.l,exports.NUMBER_KEYS=w.o,exports.OPERATORS=w.s,exports.OPERATOR_KEYS=w.c,exports.OSM_TILE_CONFIG=l.l,exports.PRESET_RULES=k.u,exports.PRIORITY_MAP=S.g,exports.PROGRESS_THROTTLE_INTERVAL=E.p,exports.QUALITY_LABEL_MAP=E.m,exports.SEEK_STEP=E.h,exports.SKELETON_HEIGHT_RANGE=b.u,exports.SOURCE_TYPE_MAP=E.g,exports.SPACED_OPERATORS=w.l,Object.defineProperty(exports,`SPEC_RULES`,{enumerable:!0,get:function(){return be.SPEC_RULES}}),exports.STORAGE_KEYS=E._,exports.STORAGE_PREFIX=E.v,exports.TABLE_GLOBAL_CONFIG_KEY=j.u,exports.TIMELINE_STATUS_COLOR_MAP=B.r,exports.VOLUME_STEP=E.y,exports.WATERMARK_DEFAULT_STYLE=E.b,exports.WEEK_LABELS=C.d,exports.XGPLAYER_EVENTS=E.x,exports.applyFormatter=j.d,exports.createCaptchaProof=s.r,exports.createEditModeChecker=j.w,exports.createMenuOptions=N.n,exports.createPageLoading=a.t,exports.default=Ae,exports.defineActions=c.a,exports.defineFormConfig=A.t,exports.defineFormOptions=A.n,exports.defineTableColumns=j.r,exports.defineTableConfig=j.i,exports.defineTabs=V.t,exports.exportTableData=j.o,exports.flattenRoutes=N.r,exports.formatFileSize=o.s,exports.formatTime=F.i,exports.ganttPresetConfigs=u.n,exports.getFileIcon=o.c,exports.getInitials=I.i,exports.getItem=m.t,exports.getValidMapMarkers=l.n,exports.isValidMapCoordinate=l.r,exports.mergeFormConfig=k.h,exports.mergeGlobalConfig=j.f,exports.nameToColor=I.a,exports.normalizeMapZoom=l.i,exports.printPresets=j.v,exports.registerRenderer=k.a,exports.removeAllItem=m.n,exports.removeItem=m.r,exports.resolveActionPreset=c.o,exports.resolveConfig=j.T,exports.resolveFormConfig=k.g,exports.resolveTileConfig=l.a,exports.setItem=m.i,exports.setupHighlight=Oe,exports.shouldShowActions=k._,exports.toAMapPosition=l.o,exports.treePresetConfigs=g.r,exports.unregisterRenderer=k.o,exports.useBookmarks=E.r,exports.useCForm=A.r,exports.useCalendarEvents=x.n,exports.useCellEdit=j.S,exports.useChapters=E.i,exports.useChunkUpload=o.a,exports.useCollapsePanel=de.n,exports.useComponentFeedback=t.r,exports.useComponentLocale=t.i,exports.useCronDescription=C.n,exports.useCronParser=C.i,exports.useCronPreview=C.r,exports.useCropperCore=v.n,exports.useCrossPageSelection=j.s,exports.useDragDrop=o.n,exports.useDraggableLayout=y.n,exports.useDynamicFormState=k.i,exports.useDynamicRows=j._,exports.useEdgeInteraction=T.n,exports.useFileHash=o.o,exports.useFilePreview=D.r,exports.useFormDirty=k.d,exports.useFormGlobalConfig=k.v,exports.useFormRenderer=k.s,exports.useFormState=k.c,exports.useFormulaEvaluator=w.t,exports.useFormulaParser=w.r,exports.useFullscreen=D.n,exports.useGlobalSearch=M.n,exports.useGraphBase=T.i,exports.useGraphExport=T.r,exports.useHighlight=De,exports.useInfiniteScroll=b.n,exports.useModalEdit=j.x,exports.useNotificationCore=S.r,exports.useNotificationFormat=S.n,exports.useNotificationWS=S.i,exports.usePagination=j.h,exports.usePlaybackControl=E.o,exports.usePlayerCore=E.s,exports.usePrintWatermark=j.y,exports.useProgressTracker=E.a,exports.useQRCode=_.n,exports.useResponsiveColumns=b.i,exports.useRowDrag=j.c,exports.useRowEdit=j.C,exports.useSearchHistory=h.r,exports.useSearchState=h.n,exports.useSignatureCanvas=d.i,exports.useSignatureExport=d.n,exports.useSignatureHistory=d.r,exports.useSplitResize=f.n,exports.useSubtitle=E.n,exports.useTableActions=j.m,exports.useTableColumns=j.l,exports.useTableExpand=j.b,exports.useTableGlobalConfig=j.p,exports.useTableManager=j.g,exports.useTableQuery=j.t,exports.useTagsView=P.n,exports.useTimeSelection=p.n,exports.useTreeOperations=g.n,exports.useUploadCore=o.r,exports.useUploadQueue=o.i,exports.useWaterFallLayout=b.r,exports.useWorkflowNodes=O.i,exports.useWorkflowPreview=O.n,exports.useWorkflowValidation=O.r,exports.validateTableRowKeys=j.a,exports.verifyCaptchaProof=s.i;
1
+ Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:`Module`}});const e=require(`./chunk.cjs`),t=require(`./context.cjs`),n=require(`./useComponentLocale.cjs`),r=require(`./feedback.cjs`),i=require(`./C_Icon2.cjs`),a=require(`./C_Code2.cjs`),o=require(`./C_Loading2.cjs`),s=require(`./createPageLoading.cjs`),c=require(`./C_Upload2.cjs`),ee=require(`./C_Barcode2.cjs`),l=require(`./C_Captcha2.cjs`),te=require(`./C_Cascade2.cjs`),ne=require(`./C_Guide2.cjs`),re=require(`./C_Progress2.cjs`),ie=require(`./C_Steps2.cjs`),u=require(`./C_ActionBar2.cjs`),ae=require(`./C_Theme2.cjs`),oe=require(`./C_Language2.cjs`),se=require(`./C_Date2.cjs`),ce=require(`./C_Editor2.cjs`),le=require(`./C_Markdown2.cjs`),d=require(`./C_Map2.cjs`),ue=require(`./C_City2.cjs`),f=require(`./C_VtableGantt2.cjs`),p=require(`./C_Signature2.cjs`),m=require(`./C_SplitPane2.cjs`),h=require(`./C_CollapsePanel2.cjs`),de=require(`./C_Time2.cjs`),g=require(`./storage.cjs`),_=require(`./C_FormSearch2.cjs`),v=require(`./C_Tree2.cjs`),y=require(`./C_QRCode2.cjs`),b=require(`./C_ImageCropper2.cjs`),x=require(`./C_Draggable2.cjs`),S=require(`./C_WaterFall2.cjs`),C=require(`./C_FullCalendar2.cjs`),w=require(`./C_NotificationCenter2.cjs`),T=require(`./C_Cron2.cjs`),E=require(`./useFormulaEvaluator.cjs`),D=require(`./C_AntV2.cjs`),O=require(`./C_VideoPlayer2.cjs`),k=require(`./C_FilePreview2.cjs`),A=require(`./C_WorkFlow2.cjs`),j=require(`./helpers.cjs`),M=require(`./useDynamicFormState.cjs`),fe=require(`./C_FormModal2.cjs`),N=require(`./useTableQuery.cjs`),P=require(`./C_GlobalSearch2.cjs`),F=require(`./C_Menu2.cjs`),pe=require(`./C_Breadcrumb2.cjs`),I=require(`./C_TagsView2.cjs`),L=require(`./C_AudioPlayer2.cjs`),R=require(`./C_AvatarGroup2.cjs`),z=require(`./C_Chat2.cjs`),B=require(`./C_ContextMenu2.cjs`),V=require(`./C_Login2.cjs`),H=require(`./C_Timeline2.cjs`),U=require(`./data2.cjs`),W=require(`./C_Transfer2.cjs`),me=require(`./C_Skeleton2.cjs`),he=require(`./C_OrgChart2.cjs`);let ge=require(`vue`),G=require(`highlight.js/lib/core`);G=e.t(G);let K=require(`highlight.js/lib/languages/javascript`);K=e.t(K);let q=require(`highlight.js/lib/languages/typescript`);q=e.t(q);let J=require(`highlight.js/lib/languages/json`);J=e.t(J);let Y=require(`highlight.js/lib/languages/xml`);Y=e.t(Y);let _e=require(`highlight.js/lib/languages/css`);_e=e.t(_e);let X=require(`highlight.js/lib/languages/bash`);X=e.t(X);let Z=require(`highlight.js/lib/languages/yaml`);Z=e.t(Z);let ve=require(`highlight.js/lib/languages/markdown`);ve=e.t(ve);let ye=require(`highlight.js/lib/languages/java`);ye=e.t(ye);let be=require(`highlight.js/lib/languages/csharp`);be=e.t(be);let xe=require(`highlight.js/lib/languages/go`);xe=e.t(xe);let Se=require(`highlight.js/lib/languages/python`);Se=e.t(Se);let Ce=require(`@robot-admin/form-validate`);const we={cpp:()=>import(`highlight.js/lib/languages/cpp`),c:()=>import(`highlight.js/lib/languages/c`),php:()=>import(`highlight.js/lib/languages/php`),ruby:()=>import(`highlight.js/lib/languages/ruby`),rust:()=>import(`highlight.js/lib/languages/rust`),swift:()=>import(`highlight.js/lib/languages/swift`),kotlin:()=>import(`highlight.js/lib/languages/kotlin`),scss:()=>import(`highlight.js/lib/languages/scss`),less:()=>import(`highlight.js/lib/languages/less`),sql:()=>import(`highlight.js/lib/languages/sql`),dockerfile:()=>import(`highlight.js/lib/languages/dockerfile`),powershell:()=>import(`highlight.js/lib/languages/powershell`)};function Te(e,t,n){e.instance.registerLanguage(t,n),e.loadedLanguages.add(t)}function Ee(e,t){[[`javascript`,K.default],[`typescript`,q.default],[`json`,J.default],[`html`,Y.default],[`xml`,Y.default],[`css`,_e.default],[`bash`,X.default],[`shell`,X.default],[`yaml`,Z.default],[`yml`,Z.default],[`markdown`,ve.default],[`java`,ye.default],[`csharp`,be.default],[`go`,xe.default],[`python`,Se.default]].forEach(([t,n])=>{Te(e,t,n)}),e.instance.configure({ignoreUnescapedHTML:!0,languages:t.autoDetect?void 0:[]}),t.extraLanguages?.length&&De(e,t.extraLanguages,t)}async function De(e,t,n={}){let r=t.map(t=>Oe(e,t,n));return(await Promise.allSettled(r)).map((e,n)=>e.status===`fulfilled`&&e.value?t[n]:null).filter(Boolean)}async function Oe(e,t,n={}){let r=t.toLowerCase();if(e.loadedLanguages.has(r))return!0;let i=e.pendingLanguageLoads.get(r);if(i)return i;let a=we[r];if(!a)return n.logger?.warn(`[HighlightPlugin] Language '${t}' not supported`),!1;let o=(async()=>{try{return Te(e,r,(await a()).default),n.debug&&n.logger?.info(`[HighlightPlugin] Language '${r}' loaded successfully`),!0}catch(e){return n.logger?.error(`[HighlightPlugin] Failed to load language '${r}'`,e),n.onError?.(e,{source:`language-loader`,language:r}),!1}finally{e.pendingLanguageLoads.delete(r)}})();return e.pendingLanguageLoads.set(r,o),o}function ke(e={}){let t={instance:G.default.newInstance(),loadedLanguages:new Set,pendingLanguageLoads:new Map};return Ee(t,e),{getHljs:()=>t.instance,loadLanguage:n=>Oe(t,n,e),loadLanguages:n=>De(t,n,e),getLoadedLanguages:()=>Array.from(t.loadedLanguages)}}function Ae(e={}){return((0,ge.hasInjectionContext)()?(0,ge.inject)(`highlightManager`,void 0):void 0)??ke(e)}const Q=new WeakMap;function je(e,t){if(t.active=!1,Object.getOwnPropertyDescriptor(e,`hljs`)?.value!==t.instance){Q.get(e)===t&&Q.delete(e);return}let n=t.previousDescriptor,r=t.previousExposure;for(;r&&!r.active;)n=r.previousDescriptor,r=r.previousExposure;n?Reflect.defineProperty(e,`hljs`,n):Reflect.deleteProperty(e,`hljs`),r?Q.set(e,r):Q.delete(e)}function Me(e){if(typeof window>`u`)return;let t=window,n=Object.getOwnPropertyDescriptor(t,`hljs`),r=Q.get(t),i={instance:e,previousDescriptor:n,previousExposure:r?.instance===n?.value?r:void 0,active:!0};if(Reflect.defineProperty(t,`hljs`,{configurable:!0,enumerable:n?.enumerable??!1,writable:!0,value:e}))return Q.set(t,i),()=>je(t,i)}const $=new WeakMap;function Ne(e,t,n){let r=e.config.globalProperties,i=Object.getOwnPropertyDescriptor(r,`$highlight`),a=n&&i?.value===n.api?n.previousProperty:i;return Object.defineProperty(r,`$highlight`,{configurable:i?.configurable??!0,enumerable:i?.enumerable??!0,writable:!0,value:t}),a}function Pe(e){let t=$.get(e);if(!t)return;$.delete(e),t.releaseWindow?.();let n=e.config.globalProperties;Object.getOwnPropertyDescriptor(n,`$highlight`)?.value===t.api&&(t.previousProperty?Reflect.defineProperty(n,`$highlight`,t.previousProperty):Reflect.deleteProperty(n,`$highlight`))}function Fe(e,t={}){let n={autoDetect:!1,extraLanguages:[],...t},r=ke(n),i=$.get(e),a=Ne(e,r,i);i?.releaseWindow?.(),e.provide(`highlightManager`,r);let o=n.exposeToWindow?Me(r.getHljs()):void 0;return $.set(e,{api:r,previousProperty:a,releaseWindow:o}),i||e.onUnmount(()=>Pe(e)),n.debug&&n.logger?.info(`[HighlightPlugin] highlight.js plugin installed`),r}const Ie={C_Code:a.t,C_Icon:i.t,C_Loading:o.t,C_PageLoading:s.n,C_Upload:c.t,C_Barcode:ee.t,C_Captcha:l.t,C_Cascade:te.t,C_Guide:ne.t,C_Progress:re.t,C_Steps:ie.t,C_ActionBar:u.t,C_Theme:ae.t,C_Language:oe.t,C_Date:se.t,C_Editor:ce.t,C_Markdown:le.t,C_Map:d.t,C_City:ue.t,C_VtableGantt:f.t,C_Signature:p.t,C_SplitPane:m.t,C_CollapsePanel:h.t,C_Time:de.t,C_FormSearch:_.t,C_Tree:v.t,C_QRCode:y.t,C_ImageCropper:b.t,C_Draggable:x.t,C_WaterFall:S.t,C_FullCalendar:C.t,C_NotificationCenter:w.t,C_Cron:T.t,C_FormulaEditor:E.n,C_AntV:D.t,C_VideoPlayer:O.t,C_FilePreview:k.t,C_WorkFlow:A.t,C_Form:j.i,C_FormModal:fe.t,C_Table:N.n,C_GlobalSearch:P.t,C_Menu:F.t,C_Breadcrumb:pe.t,C_TagsView:I.t,C_AudioPlayer:L.t,C_AvatarGroup:R.t,C_Chat:z.t,C_ContextMenu:B.t,C_Login:V.t,C_Timeline:H.t,C_Tabs:U.n,C_Transfer:W.t,C_Skeleton:me.t,C_OrgChart:he.t};var Le={install:(e,n={})=>{Object.entries(Ie).forEach(([t,n])=>{e.component(t,n)}),n.highlight!==void 0&&Fe(e,n.highlight),n.feedback&&e.provide(t.t,n.feedback),n.locale&&e.provide(t.n,n.locale),n.form&&e.provide(j.h,n.form),e.provide(j.a,n.formRenderers??j.o()),n.table&&e.provide(N.s,n.table)}};exports.ACTION_BAR_DEFAULT_CONFIG=u.n,exports.ACTION_KEYS=E.i,exports.ACTION_PRESETS=u.r,exports.AVATAR_STATUS_COLOR_MAP=R.r,exports.BUTTON_TEXT=C.r,exports.CATEGORY_MAP=w.a,exports.CATEGORY_TABS=w.o,exports.COMPONENT_FEEDBACK_KEY=t.t,exports.COMPONENT_LOCALE_KEY=t.n,exports.CRON_FIELD_META=T.a,exports.CRON_TEMPLATES=T.o,exports.C_ActionBar=u.t,exports.C_AntV=D.t,exports.C_AudioPlayer=L.t,exports.C_AvatarGroup=R.t,exports.C_Barcode=ee.t,exports.C_Breadcrumb=pe.t,exports.C_Captcha=l.t,exports.C_Cascade=te.t,exports.C_Chat=z.t,exports.C_City=ue.t,exports.C_Code=a.t,exports.C_CollapsePanel=h.t,exports.C_ContextMenu=B.t,exports.C_Cron=T.t,exports.C_Date=se.t,exports.C_Draggable=x.t,exports.C_Editor=ce.t,exports.C_FilePreview=k.t,exports.C_Form=j.i,exports.C_FormModal=fe.t,exports.C_FormSearch=_.t,exports.C_FormulaEditor=E.n,exports.C_FullCalendar=C.t,exports.C_GlobalSearch=P.t,exports.C_Guide=ne.t,exports.C_Icon=i.t,exports.C_ImageCropper=b.t,exports.C_Language=oe.t,exports.C_Loading=o.t,exports.C_Login=V.t,exports.C_Map=d.t,exports.C_Markdown=le.t,exports.C_Menu=F.t,exports.C_NotificationCenter=w.t,exports.C_OrgChart=he.t,exports.C_PageLoading=s.n,exports.C_Progress=re.t,exports.C_QRCode=y.t,exports.C_Signature=p.t,exports.C_Skeleton=me.t,exports.C_SplitPane=m.t,exports.C_Steps=ie.t,exports.C_Table=N.n,exports.C_Tabs=U.n,exports.C_TagsView=I.t,exports.C_Theme=ae.t,exports.C_Time=de.t,exports.C_Timeline=H.t,exports.C_Transfer=W.t,exports.C_Tree=v.t,exports.C_Upload=c.t,exports.C_VideoPlayer=O.t,exports.C_VtableGantt=f.t,exports.C_WaterFall=S.t,exports.C_WorkFlow=A.t,exports.CaptchaVerificationError=l.n,exports.DEFAULT_ACTION_ICON=u.i,exports.DEFAULT_ANIMATION_DURATION=S.a,exports.DEFAULT_AUDIO_PLAYER_PROPS=L.n,exports.DEFAULT_AVATAR_GROUP_PROPS=R.n,exports.DEFAULT_BREAKPOINTS=S.o,exports.DEFAULT_CHAT_PROPS=z.n,exports.DEFAULT_CONTEXT_MENU_PROPS=B.n,exports.DEFAULT_CRON_EXPRESSION=T.s,exports.DEFAULT_CRON_VALUE=T.c,exports.DEFAULT_EDIT_FORM=C.i,exports.DEFAULT_FEATURES=V.n,exports.DEFAULT_FIELD_VALUE=T.l,exports.DEFAULT_FUNCTIONS=E.a,exports.DEFAULT_GAP=S.s,exports.DEFAULT_HEARTBEAT_INTERVAL=O.c,exports.DEFAULT_MAP_CONFIG=d.s,exports.DEFAULT_MAX_BADGE_COUNT=w.s,exports.DEFAULT_PAGE_SIZE=w.c,exports.DEFAULT_PLAYBACK_RATE=O.l,exports.DEFAULT_PLAYBACK_RATES=O.u,exports.DEFAULT_POLLING_INTERVAL=w.l,exports.DEFAULT_SKELETON_COUNT=S.c,exports.DEFAULT_SOCIAL_PROVIDERS=V.r,exports.DEFAULT_STORAGE_KEY=w.u,exports.DEFAULT_TIMELINE_PROPS=H.n,exports.DEFAULT_TRANSFER_PROPS=W.n,exports.DEFAULT_VOLUME=O.d,exports.DEFAULT_WS_HEARTBEAT_INTERVAL=w.d,exports.DEFAULT_WS_HEARTBEAT_MESSAGE=w.f,exports.DEFAULT_WS_MAX_RECONNECT=w.p,exports.DEFAULT_WS_RECONNECT_INTERVAL=w.m,exports.DYNAMIC_FORM_STATE_KEY=M.t,exports.EVENT_COLORS=C.a,exports.FIELD_TYPE_OPTIONS=M.n,exports.FORM_DEFAULTS=j.m,exports.FORM_GLOBAL_CONFIG_KEY=j.h,exports.FORM_RENDERER_REGISTRY_KEY=j.a,exports.HEADER_TOOLBAR=C.o,exports.INFINITE_SCROLL_THRESHOLD=S.l,exports.KEYBOARD_SHORTCUTS=O.f,exports.LAYOUTS_WITH_OWN_CONTROLS=j.g,exports.MAP_TYPES=d.c,exports.MOCK_MESSAGES=w.h,exports.MODE_ICON_MAP=L.r,exports.MONTH_LABELS=T.u,exports.NAIVE_COMBOS=j.d,exports.NUMBER_KEYS=E.o,exports.OPERATORS=E.s,exports.OPERATOR_KEYS=E.c,exports.OSM_TILE_CONFIG=d.l,exports.PRESET_RULES=j.f,exports.PRIORITY_MAP=w.g,exports.PROGRESS_THROTTLE_INTERVAL=O.p,exports.QUALITY_LABEL_MAP=O.m,exports.SEEK_STEP=O.h,exports.SKELETON_HEIGHT_RANGE=S.u,exports.SOURCE_TYPE_MAP=O.g,exports.SPACED_OPERATORS=E.l,Object.defineProperty(exports,`SPEC_RULES`,{enumerable:!0,get:function(){return Ce.SPEC_RULES}}),exports.STORAGE_KEYS=O._,exports.STORAGE_PREFIX=O.v,exports.TABLE_GLOBAL_CONFIG_KEY=N.s,exports.TIMELINE_STATUS_COLOR_MAP=H.r,exports.VOLUME_STEP=O.y,exports.WATERMARK_DEFAULT_STYLE=O.b,exports.WEEK_LABELS=T.d,exports.XGPLAYER_EVENTS=O.x,exports.applyFormatter=N.c,exports.createCaptchaProof=l.r,exports.createEditModeChecker=N.w,exports.createFormRendererRegistry=j.o,exports.createHighlight=ke,exports.createMenuOptions=F.n,exports.createPageLoading=s.t,exports.default=Le,exports.defineActions=u.a,exports.defineFormConfig=j.t,exports.defineFormOptions=j.n,exports.defineTableColumns=N.v,exports.defineTableConfig=N.y,exports.defineTabs=U.t,exports.exportTableData=N.r,exports.flattenRoutes=F.r,exports.formatFileSize=c.s,exports.formatTime=L.i,exports.ganttPresetConfigs=f.n,exports.getFileIcon=c.c,exports.getInitials=R.i,exports.getItem=g.t,exports.getValidMapMarkers=d.n,exports.isValidMapCoordinate=d.r,exports.mergeFormConfig=j._,exports.mergeGlobalConfig=N.l,exports.nameToColor=R.a,exports.normalizeMapZoom=d.i,exports.printPresets=N.h,exports.registerRenderer=j.s,exports.removeAllItem=g.n,exports.removeItem=g.r,exports.resolveActionPreset=u.o,exports.resolveConfig=N.T,exports.resolveFormConfig=j.v,exports.resolveTileConfig=d.a,exports.setItem=g.i,exports.setupHighlight=Fe,exports.shouldShowActions=j.y,exports.toAMapPosition=d.o,exports.treePresetConfigs=v.r,exports.unregisterRenderer=j.c,exports.useBookmarks=O.r,exports.useCForm=j.r,exports.useCalendarEvents=C.n,exports.useCellEdit=N.S,exports.useChapters=O.i,exports.useChunkUpload=c.a,exports.useCollapsePanel=h.n,exports.useComponentFeedback=r.t,exports.useComponentLocale=n.t,exports.useCronDescription=T.n,exports.useCronParser=T.i,exports.useCronPreview=T.r,exports.useCropperCore=b.n,exports.useCrossPageSelection=N.i,exports.useDragDrop=c.n,exports.useDraggableLayout=x.n,exports.useDynamicFormState=M.r,exports.useDynamicRows=N.m,exports.useEdgeInteraction=D.n,exports.useFileHash=c.o,exports.useFilePreview=k.r,exports.useFormDirty=j.p,exports.useFormGlobalConfig=j.b,exports.useFormRenderer=j.l,exports.useFormState=j.u,exports.useFormulaEvaluator=E.t,exports.useFormulaParser=E.r,exports.useFullscreen=k.n,exports.useGlobalSearch=P.n,exports.useGraphBase=D.i,exports.useGraphExport=D.r,exports.useHighlight=Ae,exports.useInfiniteScroll=S.n,exports.useModalEdit=N.x,exports.useNotificationCore=w.r,exports.useNotificationFormat=w.n,exports.useNotificationWS=w.i,exports.usePagination=N.f,exports.usePlaybackControl=O.o,exports.usePlayerCore=O.s,exports.usePrintWatermark=N.g,exports.useProgressTracker=O.a,exports.useQRCode=y.n,exports.useResponsiveColumns=S.i,exports.useRowDrag=N.a,exports.useRowEdit=N.C,exports.useSearchHistory=_.r,exports.useSearchState=_.n,exports.useSignatureCanvas=p.i,exports.useSignatureExport=p.n,exports.useSignatureHistory=p.r,exports.useSplitResize=m.n,exports.useSubtitle=O.n,exports.useTableActions=N.d,exports.useTableColumns=N.o,exports.useTableExpand=N._,exports.useTableGlobalConfig=N.u,exports.useTableManager=N.p,exports.useTableQuery=N.t,exports.useTagsView=I.n,exports.useTimeSelection=de.n,exports.useTreeOperations=v.n,exports.useUploadCore=c.r,exports.useUploadQueue=c.i,exports.useWaterFallLayout=S.r,exports.useWorkflowNodes=A.i,exports.useWorkflowPreview=A.n,exports.useWorkflowValidation=A.r,exports.validateTableRowKeys=N.b,exports.verifyCaptchaProof=l.i;