@vef-framework/components 1.0.64 → 1.0.65

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 (573) hide show
  1. package/es/index.js +2 -81
  2. package/es/internal/index.js +2 -2
  3. package/es/internal/modern-normalize.css.js +2 -4
  4. package/es/internal/utils.js +2 -6
  5. package/es/vef-access-denied/access-denied-icon.js +2 -928
  6. package/es/vef-access-denied/index.js +10 -45
  7. package/es/vef-action-buttons/index.js +2 -75
  8. package/es/vef-auto-sizer/index.js +2 -6
  9. package/es/vef-avatar/index.js +2 -20
  10. package/es/vef-avatar-group/index.js +2 -25
  11. package/es/vef-badge/index.js +2 -47
  12. package/es/vef-bool/hooks/use-bool-instance.js +2 -34
  13. package/es/vef-bool/index.js +2 -60
  14. package/es/vef-breadcrumb/index.js +2 -48
  15. package/es/vef-button/components/base-button.js +2 -73
  16. package/es/vef-button/index.js +2 -151
  17. package/es/vef-card/index.js +2 -25
  18. package/es/vef-card-meta/index.js +2 -12
  19. package/es/vef-checkbox/hooks/use-checkbox-instance.js +2 -20
  20. package/es/vef-checkbox/hooks/use-data-options.js +2 -40
  21. package/es/vef-checkbox/index.js +4 -88
  22. package/es/vef-col/index.js +2 -11
  23. package/es/vef-color-picker/index.js +2 -46
  24. package/es/vef-compact/index.js +2 -15
  25. package/es/vef-config-provider/global-style.js +16 -23
  26. package/es/vef-config-provider/hooks/use-ui-config.js +2 -125
  27. package/es/vef-config-provider/index.js +4 -121
  28. package/es/vef-config-provider/store.js +2 -21
  29. package/es/vef-container/index.js +2 -18
  30. package/es/vef-crud-page/components/crud-actions.js +2 -32
  31. package/es/vef-crud-page/components/crud-filter.js +2 -54
  32. package/es/vef-crud-page/components/crud-footer.js +4 -116
  33. package/es/vef-crud-page/components/crud-form-modal.js +2 -53
  34. package/es/vef-crud-page/components/crud-header.js +2 -29
  35. package/es/vef-crud-page/components/crud-table.js +2 -76
  36. package/es/vef-crud-page/hooks/use-action-buttons.js +2 -37
  37. package/es/vef-crud-page/hooks/use-crud-context.js +2 -20
  38. package/es/vef-crud-page/hooks/use-crud-schema.js +2 -114
  39. package/es/vef-crud-page/hooks/use-operation-buttons.js +2 -60
  40. package/es/vef-crud-page/index.js +2 -150
  41. package/es/vef-crud-page/store.js +2 -142
  42. package/es/vef-divider/index.js +2 -24
  43. package/es/vef-drawer/components/action-button-wrapper.js +2 -49
  44. package/es/vef-drawer/components/button-props.js +1 -2
  45. package/es/vef-drawer/components/cancel-action-button.js +2 -21
  46. package/es/vef-drawer/components/ok-action-button.js +2 -20
  47. package/es/vef-drawer/context.js +2 -15
  48. package/es/vef-drawer/index.js +4 -154
  49. package/es/vef-dropdown/index.js +2 -92
  50. package/es/vef-dynamic-icon/index.js +2 -46
  51. package/es/vef-dynamic-icon/props.js +2 -6
  52. package/es/vef-empty/index.js +2 -37
  53. package/es/vef-empty-placeholder/index.js +5 -19
  54. package/es/vef-error/error-icon.js +2 -757
  55. package/es/vef-error/index.js +10 -48
  56. package/es/vef-filter/components/action-buttons.js +6 -119
  57. package/es/vef-filter/components/advanced-filter.js +9 -71
  58. package/es/vef-filter/components/basic-filter.js +5 -35
  59. package/es/vef-filter/components/fields/index.js +2 -11
  60. package/es/vef-filter/components/fields/input-number.js +2 -90
  61. package/es/vef-filter/components/fields/input.js +2 -67
  62. package/es/vef-filter/components/filter-field.js +2 -19
  63. package/es/vef-filter/components/filter-item.js +2 -112
  64. package/es/vef-filter/event.js +2 -44
  65. package/es/vef-filter/helper.js +2 -15
  66. package/es/vef-filter/hooks/use-action-handlers.js +2 -70
  67. package/es/vef-filter/hooks/use-computed-values.js +2 -55
  68. package/es/vef-filter/hooks/use-filter-context.js +2 -18
  69. package/es/vef-filter/hooks/use-filter-initialization.js +2 -37
  70. package/es/vef-filter/hooks/use-filter-instance.js +2 -26
  71. package/es/vef-filter/hooks/use-filter-items.js +2 -23
  72. package/es/vef-filter/hooks/use-filter-values-change.js +2 -30
  73. package/es/vef-filter/hooks/use-label-config.js +2 -27
  74. package/es/vef-filter/index.js +3 -141
  75. package/es/vef-filter/store.js +2 -71
  76. package/es/vef-flex/index.js +2 -31
  77. package/es/vef-float-button/index.js +2 -49
  78. package/es/vef-float-button-group/index.js +2 -20
  79. package/es/vef-form/components/fields/index.js +2 -11
  80. package/es/vef-form/components/fields/input-number.js +2 -123
  81. package/es/vef-form/components/fields/input.js +2 -132
  82. package/es/vef-form/components/form-actions.js +4 -58
  83. package/es/vef-form/components/form-content.js +3 -144
  84. package/es/vef-form/components/form-field.js +2 -22
  85. package/es/vef-form/components/form-group.js +4 -64
  86. package/es/vef-form/components/form-hidden-item.js +2 -36
  87. package/es/vef-form/components/form-item.js +2 -79
  88. package/es/vef-form/components/form-row.js +2 -98
  89. package/es/vef-form/event.js +2 -44
  90. package/es/vef-form/helper.js +2 -15
  91. package/es/vef-form/hooks/use-action-handlers.js +2 -130
  92. package/es/vef-form/hooks/use-columns-layout.js +2 -122
  93. package/es/vef-form/hooks/use-computed-values.js +2 -55
  94. package/es/vef-form/hooks/use-form-context.js +2 -14
  95. package/es/vef-form/hooks/use-form-initialization.js +2 -45
  96. package/es/vef-form/hooks/use-form-instance.js +2 -26
  97. package/es/vef-form/hooks/use-form-values-change.js +2 -30
  98. package/es/vef-form/hooks/use-label-width.js +2 -18
  99. package/es/vef-form/index.js +4 -174
  100. package/es/vef-form/store.js +2 -65
  101. package/es/vef-form/validation-rules.js +2 -286
  102. package/es/vef-form-drawer/index.js +2 -98
  103. package/es/vef-form-modal/index.js +2 -95
  104. package/es/vef-generic-select/index.js +2 -81
  105. package/es/vef-grid/index.js +7 -83
  106. package/es/vef-grid/props.js +2 -4
  107. package/es/vef-grid-item/index.js +2 -52
  108. package/es/vef-icon/index.js +2 -45
  109. package/es/vef-icon-select/index.js +12 -146
  110. package/es/vef-input/hooks/use-input-instance.js +2 -15
  111. package/es/vef-input/index.js +2 -64
  112. package/es/vef-input-number/hooks/use-input-number-instance.js +2 -13
  113. package/es/vef-input-number/index.js +2 -148
  114. package/es/vef-layout/common-styles.js +5 -10
  115. package/es/vef-layout/components/content.js +2 -13
  116. package/es/vef-layout/components/font-size.js +2 -68
  117. package/es/vef-layout/components/fullscreen.js +2 -23
  118. package/es/vef-layout/components/header-action-icons.js +7 -29
  119. package/es/vef-layout/components/header-content.js +2 -19
  120. package/es/vef-layout/components/header.js +7 -69
  121. package/es/vef-layout/components/icon-boy.js +2 -69
  122. package/es/vef-layout/components/icon-girl.js +2 -76
  123. package/es/vef-layout/components/icon-menu-fold-left.js +2 -23
  124. package/es/vef-layout/components/icon-menu-unfold-left.js +2 -23
  125. package/es/vef-layout/components/menu-groups.js +16 -123
  126. package/es/vef-layout/components/message.js +2 -11
  127. package/es/vef-layout/components/search.js +2 -11
  128. package/es/vef-layout/components/sider.js +6 -54
  129. package/es/vef-layout/components/title.js +9 -53
  130. package/es/vef-layout/components/user-avatar.js +10 -80
  131. package/es/vef-layout/hooks/use-layout-context.js +2 -10
  132. package/es/vef-layout/index.js +3 -33
  133. package/es/vef-layout/logo.svg.js +2 -4
  134. package/es/vef-layout/store.js +2 -16
  135. package/es/vef-loading-placeholder/index.js +6 -42
  136. package/es/vef-login/index.js +22 -152
  137. package/es/vef-login/login-icon.js +2 -668
  138. package/es/vef-menu/index.js +5 -77
  139. package/es/vef-modal/components/action-button-wrapper.js +2 -49
  140. package/es/vef-modal/components/button-props.js +1 -2
  141. package/es/vef-modal/components/cancel-action-button.js +2 -18
  142. package/es/vef-modal/components/ok-action-button.js +2 -20
  143. package/es/vef-modal/context.js +2 -15
  144. package/es/vef-modal/index.js +3 -239
  145. package/es/vef-not-found/index.js +10 -45
  146. package/es/vef-not-found/not-found-icon.js +2 -844
  147. package/es/vef-page/index.js +11 -87
  148. package/es/vef-pagination/index.js +2 -57
  149. package/es/vef-pagination/props.js +2 -13
  150. package/es/vef-paragraph/index.js +2 -89
  151. package/es/vef-password/hooks/use-password-instance.js +2 -13
  152. package/es/vef-password/index.js +2 -67
  153. package/es/vef-popconfirm/index.js +2 -56
  154. package/es/vef-popover/index.js +2 -29
  155. package/es/vef-radio/hooks/use-data-options.js +2 -40
  156. package/es/vef-radio/hooks/use-radio-instance.js +2 -20
  157. package/es/vef-radio/index.js +4 -88
  158. package/es/vef-rate/hooks/use-rate-instance.js +2 -13
  159. package/es/vef-rate/index.js +2 -30
  160. package/es/vef-responsive-container/index.js +3 -54
  161. package/es/vef-responsive-item/index.js +3 -23
  162. package/es/vef-ribbon/index.js +2 -38
  163. package/es/vef-row/index.js +2 -12
  164. package/es/vef-scroll-area/components/scrollbar.js +8 -34
  165. package/es/vef-scroll-area/index.js +4 -69
  166. package/es/vef-select/components/option.js +4 -23
  167. package/es/vef-select/hooks/use-data-options.js +2 -47
  168. package/es/vef-select/hooks/use-field-names.js +2 -21
  169. package/es/vef-select/hooks/use-render-label.js +3 -23
  170. package/es/vef-select/hooks/use-render-option.js +2 -19
  171. package/es/vef-select/hooks/use-select-instance.js +2 -20
  172. package/es/vef-select/index.js +2 -100
  173. package/es/vef-slider/hooks/use-slider-instance.js +2 -13
  174. package/es/vef-slider/index.js +2 -34
  175. package/es/vef-sortable-list/components/overlay-item.js +3 -31
  176. package/es/vef-sortable-list/components/sortable-item.js +3 -75
  177. package/es/vef-sortable-list/hooks/use-merged-items.js +2 -21
  178. package/es/vef-sortable-list/index.js +2 -114
  179. package/es/vef-space/index.js +2 -25
  180. package/es/vef-spin/index.js +2 -12
  181. package/es/vef-splitter/index.js +2 -20
  182. package/es/vef-splitter-panel/index.js +2 -12
  183. package/es/vef-status/index.js +2 -37
  184. package/es/vef-table/components/columns/bool.js +2 -91
  185. package/es/vef-table/components/columns/code.js +2 -10
  186. package/es/vef-table/components/columns/data-dictionary.js +2 -92
  187. package/es/vef-table/components/columns/enum.js +2 -101
  188. package/es/vef-table/components/columns/file.js +2 -10
  189. package/es/vef-table/components/columns/icon.js +2 -10
  190. package/es/vef-table/components/columns/id.js +2 -82
  191. package/es/vef-table/components/columns/image.js +2 -11
  192. package/es/vef-table/components/columns/index.js +2 -33
  193. package/es/vef-table/components/columns/markdown.js +2 -10
  194. package/es/vef-table/components/columns/number.js +2 -83
  195. package/es/vef-table/components/columns/render.js +2 -28
  196. package/es/vef-table/components/columns/rich-text.js +2 -10
  197. package/es/vef-table/components/columns/text.js +2 -88
  198. package/es/vef-table/components/columns-settings.js +11 -195
  199. package/es/vef-table/components/operation-buttons.js +3 -230
  200. package/es/vef-table/components/settings-icon.js +4 -19
  201. package/es/vef-table/components/table-footer.js +4 -102
  202. package/es/vef-table/helper.js +2 -15
  203. package/es/vef-table/hooks/use-computed-batch-buttons.js +2 -33
  204. package/es/vef-table/hooks/use-computed-columns.js +2 -20
  205. package/es/vef-table/hooks/use-computed-values.js +2 -38
  206. package/es/vef-table/hooks/use-data.js +2 -53
  207. package/es/vef-table/hooks/use-default-column-configs.js +2 -27
  208. package/es/vef-table/hooks/use-display-value.js +2 -36
  209. package/es/vef-table/hooks/use-helper-columns.js +2 -67
  210. package/es/vef-table/hooks/use-operation-column-width.js +2 -50
  211. package/es/vef-table/hooks/use-pagination-props.js +2 -44
  212. package/es/vef-table/hooks/use-row-props.js +2 -39
  213. package/es/vef-table/hooks/use-row-selection-config.js +2 -112
  214. package/es/vef-table/hooks/use-selected-rows.js +2 -26
  215. package/es/vef-table/hooks/use-table-columns.js +2 -56
  216. package/es/vef-table/hooks/use-table-context.js +2 -21
  217. package/es/vef-table/hooks/use-table-instance.js +2 -15
  218. package/es/vef-table/hooks/use-table-summary.js +2 -42
  219. package/es/vef-table/hooks/use-table-width.js +2 -13
  220. package/es/vef-table/index.js +6 -227
  221. package/es/vef-table/store.js +2 -17
  222. package/es/vef-tabs/index.js +2 -25
  223. package/es/vef-tag/index.js +2 -28
  224. package/es/vef-temporal-picker/helper.js +2 -57
  225. package/es/vef-temporal-picker/hooks/use-dayjs-value.js +2 -18
  226. package/es/vef-temporal-picker/hooks/use-temporal-limit.js +2 -34
  227. package/es/vef-temporal-picker/hooks/use-temporal-picker-instance.js +2 -19
  228. package/es/vef-temporal-picker/index.js +2 -125
  229. package/es/vef-temporal-range-picker/helper.js +2 -57
  230. package/es/vef-temporal-range-picker/hooks/use-dayjs-values.js +2 -23
  231. package/es/vef-temporal-range-picker/hooks/use-temporal-limit.js +2 -34
  232. package/es/vef-temporal-range-picker/hooks/use-temporal-range-picker-instance.js +2 -19
  233. package/es/vef-temporal-range-picker/index.js +2 -128
  234. package/es/vef-temporal-range-picker/props.js +2 -4
  235. package/es/vef-text/index.js +2 -80
  236. package/es/vef-textarea/hooks/use-textarea-instance.js +2 -13
  237. package/es/vef-textarea/index.js +2 -67
  238. package/es/vef-title/index.js +7 -89
  239. package/es/vef-tooltip/index.js +2 -35
  240. package/es/vef-tree-select/hooks/use-change-handler.js +2 -33
  241. package/es/vef-tree-select/hooks/use-data-options.js +2 -45
  242. package/es/vef-tree-select/hooks/use-tree-select-instance.js +2 -20
  243. package/es/vef-tree-select/index.js +2 -86
  244. package/es/vef-virtual-grid/index.js +4 -107
  245. package/es/vef-virtual-list/index.js +5 -215
  246. package/lib/index.cjs +2 -168
  247. package/lib/internal/index.cjs +2 -10
  248. package/lib/internal/modern-normalize.css.cjs +2 -8
  249. package/lib/internal/utils.cjs +2 -10
  250. package/lib/vef-access-denied/access-denied-icon.cjs +2 -932
  251. package/lib/vef-access-denied/index.cjs +10 -49
  252. package/lib/vef-access-denied/props.cjs +2 -4
  253. package/lib/vef-action-buttons/index.cjs +2 -79
  254. package/lib/vef-action-buttons/props.cjs +2 -4
  255. package/lib/vef-auto-sizer/index.cjs +2 -10
  256. package/lib/vef-auto-sizer/props.cjs +2 -4
  257. package/lib/vef-avatar/index.cjs +2 -24
  258. package/lib/vef-avatar/props.cjs +2 -4
  259. package/lib/vef-avatar-group/index.cjs +2 -29
  260. package/lib/vef-avatar-group/props.cjs +2 -4
  261. package/lib/vef-badge/index.cjs +2 -51
  262. package/lib/vef-badge/props.cjs +2 -4
  263. package/lib/vef-bool/hooks/use-bool-instance.cjs +2 -38
  264. package/lib/vef-bool/index.cjs +2 -64
  265. package/lib/vef-bool/props.cjs +2 -4
  266. package/lib/vef-breadcrumb/index.cjs +2 -52
  267. package/lib/vef-breadcrumb/props.cjs +2 -4
  268. package/lib/vef-button/components/base-button.cjs +2 -77
  269. package/lib/vef-button/index.cjs +2 -155
  270. package/lib/vef-button/props.cjs +2 -4
  271. package/lib/vef-card/index.cjs +2 -29
  272. package/lib/vef-card/props.cjs +2 -4
  273. package/lib/vef-card-meta/index.cjs +2 -16
  274. package/lib/vef-card-meta/props.cjs +2 -4
  275. package/lib/vef-checkbox/hooks/use-checkbox-instance.cjs +2 -24
  276. package/lib/vef-checkbox/hooks/use-data-options.cjs +2 -44
  277. package/lib/vef-checkbox/index.cjs +4 -92
  278. package/lib/vef-checkbox/props.cjs +2 -4
  279. package/lib/vef-col/index.cjs +2 -15
  280. package/lib/vef-col/props.cjs +2 -4
  281. package/lib/vef-color-picker/index.cjs +2 -50
  282. package/lib/vef-color-picker/props.cjs +2 -4
  283. package/lib/vef-compact/index.cjs +2 -19
  284. package/lib/vef-compact/props.cjs +2 -4
  285. package/lib/vef-config-provider/global-style.cjs +16 -28
  286. package/lib/vef-config-provider/hooks/use-ui-config.cjs +2 -129
  287. package/lib/vef-config-provider/index.cjs +4 -125
  288. package/lib/vef-config-provider/props.cjs +2 -4
  289. package/lib/vef-config-provider/store.cjs +2 -27
  290. package/lib/vef-container/index.cjs +2 -22
  291. package/lib/vef-container/props.cjs +2 -4
  292. package/lib/vef-crud-page/components/crud-actions.cjs +2 -36
  293. package/lib/vef-crud-page/components/crud-filter.cjs +2 -58
  294. package/lib/vef-crud-page/components/crud-footer.cjs +4 -120
  295. package/lib/vef-crud-page/components/crud-form-modal.cjs +2 -57
  296. package/lib/vef-crud-page/components/crud-header.cjs +2 -33
  297. package/lib/vef-crud-page/components/crud-table.cjs +2 -80
  298. package/lib/vef-crud-page/hooks/use-action-buttons.cjs +2 -41
  299. package/lib/vef-crud-page/hooks/use-crud-context.cjs +2 -24
  300. package/lib/vef-crud-page/hooks/use-crud-schema.cjs +2 -118
  301. package/lib/vef-crud-page/hooks/use-operation-buttons.cjs +2 -64
  302. package/lib/vef-crud-page/index.cjs +2 -154
  303. package/lib/vef-crud-page/props.cjs +2 -4
  304. package/lib/vef-crud-page/store.cjs +2 -148
  305. package/lib/vef-crud-page/types.cjs +2 -4
  306. package/lib/vef-divider/index.cjs +2 -28
  307. package/lib/vef-divider/props.cjs +2 -4
  308. package/lib/vef-drawer/components/action-button-wrapper.cjs +2 -53
  309. package/lib/vef-drawer/components/button-props.cjs +2 -4
  310. package/lib/vef-drawer/components/cancel-action-button.cjs +2 -25
  311. package/lib/vef-drawer/components/ok-action-button.cjs +2 -24
  312. package/lib/vef-drawer/context.cjs +2 -21
  313. package/lib/vef-drawer/index.cjs +4 -159
  314. package/lib/vef-drawer/props.cjs +2 -4
  315. package/lib/vef-dropdown/index.cjs +2 -96
  316. package/lib/vef-dropdown/props.cjs +2 -4
  317. package/lib/vef-dynamic-icon/index.cjs +2 -50
  318. package/lib/vef-dynamic-icon/props.cjs +2 -10
  319. package/lib/vef-empty/index.cjs +2 -41
  320. package/lib/vef-empty/props.cjs +2 -4
  321. package/lib/vef-empty-placeholder/index.cjs +5 -23
  322. package/lib/vef-empty-placeholder/props.cjs +2 -4
  323. package/lib/vef-error/error-icon.cjs +2 -761
  324. package/lib/vef-error/index.cjs +10 -52
  325. package/lib/vef-error/props.cjs +2 -4
  326. package/lib/vef-filter/components/action-buttons.cjs +6 -123
  327. package/lib/vef-filter/components/advanced-filter.cjs +9 -75
  328. package/lib/vef-filter/components/basic-filter.cjs +5 -39
  329. package/lib/vef-filter/components/fields/index.cjs +2 -15
  330. package/lib/vef-filter/components/fields/input-number.cjs +2 -94
  331. package/lib/vef-filter/components/fields/input.cjs +2 -71
  332. package/lib/vef-filter/components/fields/props.cjs +2 -4
  333. package/lib/vef-filter/components/filter-field.cjs +2 -23
  334. package/lib/vef-filter/components/filter-item.cjs +2 -116
  335. package/lib/vef-filter/event.cjs +2 -48
  336. package/lib/vef-filter/helper.cjs +2 -19
  337. package/lib/vef-filter/hooks/use-action-handlers.cjs +2 -74
  338. package/lib/vef-filter/hooks/use-computed-values.cjs +2 -59
  339. package/lib/vef-filter/hooks/use-filter-context.cjs +2 -24
  340. package/lib/vef-filter/hooks/use-filter-initialization.cjs +2 -41
  341. package/lib/vef-filter/hooks/use-filter-instance.cjs +2 -30
  342. package/lib/vef-filter/hooks/use-filter-items.cjs +2 -27
  343. package/lib/vef-filter/hooks/use-filter-values-change.cjs +2 -34
  344. package/lib/vef-filter/hooks/use-label-config.cjs +2 -31
  345. package/lib/vef-filter/index.cjs +3 -145
  346. package/lib/vef-filter/props.cjs +2 -4
  347. package/lib/vef-filter/store.cjs +2 -77
  348. package/lib/vef-filter/types.cjs +2 -4
  349. package/lib/vef-flex/index.cjs +2 -35
  350. package/lib/vef-flex/props.cjs +2 -4
  351. package/lib/vef-float-button/index.cjs +2 -53
  352. package/lib/vef-float-button/props.cjs +2 -4
  353. package/lib/vef-float-button-group/index.cjs +2 -24
  354. package/lib/vef-float-button-group/props.cjs +2 -4
  355. package/lib/vef-form/components/fields/index.cjs +2 -15
  356. package/lib/vef-form/components/fields/input-number.cjs +2 -127
  357. package/lib/vef-form/components/fields/input.cjs +2 -136
  358. package/lib/vef-form/components/fields/props.cjs +2 -4
  359. package/lib/vef-form/components/form-actions.cjs +4 -62
  360. package/lib/vef-form/components/form-content.cjs +3 -148
  361. package/lib/vef-form/components/form-field.cjs +2 -26
  362. package/lib/vef-form/components/form-group.cjs +4 -68
  363. package/lib/vef-form/components/form-hidden-item.cjs +2 -40
  364. package/lib/vef-form/components/form-item.cjs +2 -83
  365. package/lib/vef-form/components/form-row.cjs +2 -102
  366. package/lib/vef-form/event.cjs +2 -48
  367. package/lib/vef-form/helper.cjs +2 -19
  368. package/lib/vef-form/hooks/use-action-handlers.cjs +2 -134
  369. package/lib/vef-form/hooks/use-columns-layout.cjs +2 -126
  370. package/lib/vef-form/hooks/use-computed-values.cjs +2 -59
  371. package/lib/vef-form/hooks/use-form-context.cjs +2 -20
  372. package/lib/vef-form/hooks/use-form-initialization.cjs +2 -49
  373. package/lib/vef-form/hooks/use-form-instance.cjs +2 -30
  374. package/lib/vef-form/hooks/use-form-values-change.cjs +2 -34
  375. package/lib/vef-form/hooks/use-label-width.cjs +2 -22
  376. package/lib/vef-form/index.cjs +4 -178
  377. package/lib/vef-form/props.cjs +2 -4
  378. package/lib/vef-form/store.cjs +2 -71
  379. package/lib/vef-form/types.cjs +2 -4
  380. package/lib/vef-form/validation-rules.cjs +2 -312
  381. package/lib/vef-form-drawer/index.cjs +2 -102
  382. package/lib/vef-form-drawer/props.cjs +2 -4
  383. package/lib/vef-form-modal/index.cjs +2 -99
  384. package/lib/vef-form-modal/props.cjs +2 -4
  385. package/lib/vef-generic-select/index.cjs +2 -85
  386. package/lib/vef-generic-select/props.cjs +2 -4
  387. package/lib/vef-grid/index.cjs +7 -87
  388. package/lib/vef-grid/props.cjs +2 -8
  389. package/lib/vef-grid-item/index.cjs +2 -56
  390. package/lib/vef-grid-item/props.cjs +2 -4
  391. package/lib/vef-icon/index.cjs +2 -49
  392. package/lib/vef-icon/props.cjs +2 -4
  393. package/lib/vef-icon-select/index.cjs +12 -150
  394. package/lib/vef-icon-select/props.cjs +2 -4
  395. package/lib/vef-input/hooks/use-input-instance.cjs +2 -19
  396. package/lib/vef-input/index.cjs +2 -68
  397. package/lib/vef-input/props.cjs +2 -4
  398. package/lib/vef-input-number/hooks/use-input-number-instance.cjs +2 -17
  399. package/lib/vef-input-number/index.cjs +2 -152
  400. package/lib/vef-input-number/props.cjs +2 -4
  401. package/lib/vef-layout/common-styles.cjs +5 -14
  402. package/lib/vef-layout/components/content.cjs +2 -17
  403. package/lib/vef-layout/components/font-size.cjs +2 -72
  404. package/lib/vef-layout/components/fullscreen.cjs +2 -27
  405. package/lib/vef-layout/components/header-action-icons.cjs +7 -33
  406. package/lib/vef-layout/components/header-content.cjs +2 -23
  407. package/lib/vef-layout/components/header.cjs +7 -73
  408. package/lib/vef-layout/components/icon-boy.cjs +2 -73
  409. package/lib/vef-layout/components/icon-girl.cjs +2 -80
  410. package/lib/vef-layout/components/icon-menu-fold-left.cjs +2 -27
  411. package/lib/vef-layout/components/icon-menu-unfold-left.cjs +2 -27
  412. package/lib/vef-layout/components/menu-groups.cjs +16 -127
  413. package/lib/vef-layout/components/message.cjs +2 -15
  414. package/lib/vef-layout/components/search.cjs +2 -15
  415. package/lib/vef-layout/components/sider.cjs +6 -58
  416. package/lib/vef-layout/components/title.cjs +9 -57
  417. package/lib/vef-layout/components/user-avatar.cjs +10 -84
  418. package/lib/vef-layout/hooks/use-layout-context.cjs +2 -16
  419. package/lib/vef-layout/index.cjs +3 -37
  420. package/lib/vef-layout/logo.svg.cjs +2 -8
  421. package/lib/vef-layout/props.cjs +2 -4
  422. package/lib/vef-layout/store.cjs +2 -22
  423. package/lib/vef-loading-placeholder/index.cjs +6 -46
  424. package/lib/vef-loading-placeholder/props.cjs +2 -4
  425. package/lib/vef-login/index.cjs +22 -156
  426. package/lib/vef-login/login-icon.cjs +2 -672
  427. package/lib/vef-login/props.cjs +2 -4
  428. package/lib/vef-menu/index.cjs +5 -81
  429. package/lib/vef-menu/props.cjs +2 -4
  430. package/lib/vef-modal/components/action-button-wrapper.cjs +2 -53
  431. package/lib/vef-modal/components/button-props.cjs +2 -4
  432. package/lib/vef-modal/components/cancel-action-button.cjs +2 -22
  433. package/lib/vef-modal/components/ok-action-button.cjs +2 -24
  434. package/lib/vef-modal/context.cjs +2 -21
  435. package/lib/vef-modal/index.cjs +3 -244
  436. package/lib/vef-modal/props.cjs +2 -4
  437. package/lib/vef-not-found/index.cjs +10 -49
  438. package/lib/vef-not-found/not-found-icon.cjs +2 -848
  439. package/lib/vef-not-found/props.cjs +2 -4
  440. package/lib/vef-page/index.cjs +11 -91
  441. package/lib/vef-page/props.cjs +2 -4
  442. package/lib/vef-pagination/index.cjs +2 -61
  443. package/lib/vef-pagination/props.cjs +2 -17
  444. package/lib/vef-paragraph/index.cjs +2 -93
  445. package/lib/vef-paragraph/props.cjs +2 -4
  446. package/lib/vef-password/hooks/use-password-instance.cjs +2 -17
  447. package/lib/vef-password/index.cjs +2 -71
  448. package/lib/vef-password/props.cjs +2 -4
  449. package/lib/vef-popconfirm/index.cjs +2 -60
  450. package/lib/vef-popconfirm/props.cjs +2 -4
  451. package/lib/vef-popover/index.cjs +2 -33
  452. package/lib/vef-popover/props.cjs +2 -4
  453. package/lib/vef-radio/hooks/use-data-options.cjs +2 -44
  454. package/lib/vef-radio/hooks/use-radio-instance.cjs +2 -24
  455. package/lib/vef-radio/index.cjs +4 -92
  456. package/lib/vef-radio/props.cjs +2 -4
  457. package/lib/vef-rate/hooks/use-rate-instance.cjs +2 -17
  458. package/lib/vef-rate/index.cjs +2 -34
  459. package/lib/vef-rate/props.cjs +2 -4
  460. package/lib/vef-responsive-container/index.cjs +3 -58
  461. package/lib/vef-responsive-container/props.cjs +2 -4
  462. package/lib/vef-responsive-item/index.cjs +3 -27
  463. package/lib/vef-responsive-item/props.cjs +2 -4
  464. package/lib/vef-ribbon/index.cjs +2 -42
  465. package/lib/vef-ribbon/props.cjs +2 -4
  466. package/lib/vef-row/index.cjs +2 -16
  467. package/lib/vef-row/props.cjs +2 -4
  468. package/lib/vef-scroll-area/components/scrollbar.cjs +8 -38
  469. package/lib/vef-scroll-area/index.cjs +4 -73
  470. package/lib/vef-scroll-area/props.cjs +2 -4
  471. package/lib/vef-select/components/option.cjs +4 -27
  472. package/lib/vef-select/hooks/use-data-options.cjs +2 -51
  473. package/lib/vef-select/hooks/use-field-names.cjs +2 -25
  474. package/lib/vef-select/hooks/use-render-label.cjs +3 -27
  475. package/lib/vef-select/hooks/use-render-option.cjs +2 -23
  476. package/lib/vef-select/hooks/use-select-instance.cjs +2 -24
  477. package/lib/vef-select/index.cjs +2 -104
  478. package/lib/vef-select/props.cjs +2 -4
  479. package/lib/vef-slider/hooks/use-slider-instance.cjs +2 -17
  480. package/lib/vef-slider/index.cjs +2 -38
  481. package/lib/vef-slider/props.cjs +2 -4
  482. package/lib/vef-sortable-list/components/overlay-item.cjs +3 -35
  483. package/lib/vef-sortable-list/components/sortable-item.cjs +3 -79
  484. package/lib/vef-sortable-list/hooks/use-merged-items.cjs +2 -25
  485. package/lib/vef-sortable-list/index.cjs +2 -118
  486. package/lib/vef-sortable-list/props.cjs +2 -4
  487. package/lib/vef-space/index.cjs +2 -29
  488. package/lib/vef-space/props.cjs +2 -4
  489. package/lib/vef-spin/index.cjs +2 -16
  490. package/lib/vef-spin/props.cjs +2 -4
  491. package/lib/vef-splitter/index.cjs +2 -24
  492. package/lib/vef-splitter/props.cjs +2 -4
  493. package/lib/vef-splitter-panel/index.cjs +2 -16
  494. package/lib/vef-splitter-panel/props.cjs +2 -4
  495. package/lib/vef-status/index.cjs +2 -41
  496. package/lib/vef-status/props.cjs +2 -4
  497. package/lib/vef-table/components/columns/bool.cjs +2 -95
  498. package/lib/vef-table/components/columns/code.cjs +2 -14
  499. package/lib/vef-table/components/columns/data-dictionary.cjs +2 -96
  500. package/lib/vef-table/components/columns/enum.cjs +2 -105
  501. package/lib/vef-table/components/columns/file.cjs +2 -14
  502. package/lib/vef-table/components/columns/icon.cjs +2 -14
  503. package/lib/vef-table/components/columns/id.cjs +2 -86
  504. package/lib/vef-table/components/columns/image.cjs +2 -15
  505. package/lib/vef-table/components/columns/index.cjs +2 -37
  506. package/lib/vef-table/components/columns/markdown.cjs +2 -14
  507. package/lib/vef-table/components/columns/number.cjs +2 -87
  508. package/lib/vef-table/components/columns/props.cjs +2 -4
  509. package/lib/vef-table/components/columns/render.cjs +2 -32
  510. package/lib/vef-table/components/columns/rich-text.cjs +2 -14
  511. package/lib/vef-table/components/columns/text.cjs +2 -92
  512. package/lib/vef-table/components/columns-settings.cjs +11 -199
  513. package/lib/vef-table/components/operation-buttons.cjs +3 -234
  514. package/lib/vef-table/components/settings-icon.cjs +4 -23
  515. package/lib/vef-table/components/table-footer.cjs +4 -106
  516. package/lib/vef-table/helper.cjs +2 -19
  517. package/lib/vef-table/hooks/use-computed-batch-buttons.cjs +2 -37
  518. package/lib/vef-table/hooks/use-computed-columns.cjs +2 -24
  519. package/lib/vef-table/hooks/use-computed-values.cjs +2 -42
  520. package/lib/vef-table/hooks/use-data.cjs +2 -57
  521. package/lib/vef-table/hooks/use-default-column-configs.cjs +2 -31
  522. package/lib/vef-table/hooks/use-display-value.cjs +2 -40
  523. package/lib/vef-table/hooks/use-helper-columns.cjs +2 -71
  524. package/lib/vef-table/hooks/use-operation-column-width.cjs +2 -54
  525. package/lib/vef-table/hooks/use-pagination-props.cjs +2 -48
  526. package/lib/vef-table/hooks/use-row-props.cjs +2 -43
  527. package/lib/vef-table/hooks/use-row-selection-config.cjs +2 -116
  528. package/lib/vef-table/hooks/use-selected-rows.cjs +2 -30
  529. package/lib/vef-table/hooks/use-table-columns.cjs +2 -60
  530. package/lib/vef-table/hooks/use-table-context.cjs +2 -27
  531. package/lib/vef-table/hooks/use-table-instance.cjs +2 -19
  532. package/lib/vef-table/hooks/use-table-summary.cjs +2 -46
  533. package/lib/vef-table/hooks/use-table-width.cjs +2 -17
  534. package/lib/vef-table/index.cjs +6 -231
  535. package/lib/vef-table/props.cjs +2 -4
  536. package/lib/vef-table/store.cjs +2 -23
  537. package/lib/vef-table/types.cjs +2 -4
  538. package/lib/vef-tabs/index.cjs +2 -29
  539. package/lib/vef-tabs/props.cjs +2 -4
  540. package/lib/vef-tag/index.cjs +2 -32
  541. package/lib/vef-tag/props.cjs +2 -4
  542. package/lib/vef-temporal-picker/helper.cjs +2 -61
  543. package/lib/vef-temporal-picker/hooks/use-dayjs-value.cjs +2 -22
  544. package/lib/vef-temporal-picker/hooks/use-temporal-limit.cjs +2 -38
  545. package/lib/vef-temporal-picker/hooks/use-temporal-picker-instance.cjs +2 -23
  546. package/lib/vef-temporal-picker/index.cjs +2 -129
  547. package/lib/vef-temporal-picker/props.cjs +2 -4
  548. package/lib/vef-temporal-range-picker/helper.cjs +2 -61
  549. package/lib/vef-temporal-range-picker/hooks/use-dayjs-values.cjs +2 -27
  550. package/lib/vef-temporal-range-picker/hooks/use-temporal-limit.cjs +2 -38
  551. package/lib/vef-temporal-range-picker/hooks/use-temporal-range-picker-instance.cjs +2 -23
  552. package/lib/vef-temporal-range-picker/index.cjs +2 -132
  553. package/lib/vef-temporal-range-picker/props.cjs +2 -8
  554. package/lib/vef-text/index.cjs +2 -84
  555. package/lib/vef-text/props.cjs +2 -4
  556. package/lib/vef-textarea/hooks/use-textarea-instance.cjs +2 -17
  557. package/lib/vef-textarea/index.cjs +2 -71
  558. package/lib/vef-textarea/props.cjs +2 -4
  559. package/lib/vef-title/index.cjs +7 -93
  560. package/lib/vef-title/props.cjs +2 -4
  561. package/lib/vef-tooltip/index.cjs +2 -39
  562. package/lib/vef-tooltip/props.cjs +2 -4
  563. package/lib/vef-tree-select/hooks/use-change-handler.cjs +2 -37
  564. package/lib/vef-tree-select/hooks/use-data-options.cjs +2 -49
  565. package/lib/vef-tree-select/hooks/use-tree-select-instance.cjs +2 -24
  566. package/lib/vef-tree-select/index.cjs +2 -90
  567. package/lib/vef-tree-select/props.cjs +2 -4
  568. package/lib/vef-virtual-grid/index.cjs +4 -111
  569. package/lib/vef-virtual-grid/props.cjs +2 -4
  570. package/lib/vef-virtual-list/index.cjs +5 -219
  571. package/lib/vef-virtual-list/props.cjs +2 -4
  572. package/package.json +4 -4
  573. package/types/vef-config-provider/hooks/use-ui-config.d.ts +0 -1
@@ -1,131 +1,3 @@
1
- /*! VefFramework version: 1.0.64, build time: 2025-01-10T01:26:01.691Z, made by Venus. */
2
- import { useApiContext } from '@vef-framework/core';
3
- import { isFunction, VefError, showLoadingMessage, omit, showSuccessMessage } from '@vef-framework/shared';
4
- import { useCallback, useMemo } from 'react';
5
- import { useFormStore } from '../store.js';
6
-
7
- function useActionHandlers({
8
- submitApi,
9
- submitTip = "\u63D0\u4EA4\u4E2D...",
10
- onBeforeSubmit,
11
- onSubmit,
12
- onSubmitSuccess,
13
- onSubmitFailure,
14
- onReset
15
- }) {
16
- const [
17
- form,
18
- scene,
19
- eventBus,
20
- setIsLoading,
21
- virtualFieldNames,
22
- getValues,
23
- initialValues,
24
- invokeValueChangeHandlers
25
- ] = useFormStore((state) => [
26
- state.form,
27
- state.scene,
28
- state.eventBus,
29
- state.setIsLoading,
30
- state.virtualFieldNames,
31
- state.getValues,
32
- state.initialValues,
33
- state.invokeValueChangeHandlers
34
- ]);
35
- const { useApiMutation, stubMutationApi } = useApiContext();
36
- const { mutate } = useApiMutation(submitApi ?? stubMutationApi);
37
- if (!isFunction(onSubmit) && !submitApi) {
38
- throw new VefError(-1, "'onSubmit' or 'submitApi' prop is required for VefForm component");
39
- }
40
- const handleReset = useCallback(() => {
41
- const values = getValues();
42
- form.resetFields();
43
- invokeValueChangeHandlers();
44
- eventBus.emitChange(initialValues);
45
- onReset?.(values, scene);
46
- }, [
47
- form,
48
- getValues,
49
- onReset,
50
- scene,
51
- invokeValueChangeHandlers,
52
- initialValues,
53
- eventBus
54
- ]);
55
- const handleSubmit = useMemo(() => {
56
- if (isFunction(onSubmit)) {
57
- if (submitApi) {
58
- console.warn("'submitApi' prop is ignored when 'onSubmit' prop is provided in VefForm component");
59
- }
60
- return async (values) => {
61
- setIsLoading(true);
62
- let valuesToUse = values;
63
- let closeLoading = null;
64
- try {
65
- const submitTipToUse = isFunction(submitTip) ? submitTip(values, scene) : submitTip;
66
- closeLoading = showLoadingMessage(submitTipToUse);
67
- if (isFunction(onBeforeSubmit)) {
68
- valuesToUse = await onBeforeSubmit(valuesToUse, scene);
69
- }
70
- const valuesToSubmit = omit(valuesToUse, virtualFieldNames);
71
- await onSubmit(valuesToSubmit, scene);
72
- eventBus.emitSubmitResult(true);
73
- } catch (error) {
74
- eventBus.emitSubmitResult(false);
75
- throw error;
76
- } finally {
77
- setIsLoading(false);
78
- closeLoading?.();
79
- }
80
- };
81
- }
82
- return async (values) => {
83
- setIsLoading(true);
84
- let valuesToUse = values;
85
- let closeLoading = null;
86
- try {
87
- const submitTipToUse = isFunction(submitTip) ? submitTip(values, scene) : submitTip;
88
- closeLoading = showLoadingMessage(submitTipToUse);
89
- if (isFunction(onBeforeSubmit)) {
90
- valuesToUse = await onBeforeSubmit(values, scene);
91
- }
92
- const toSubmitValues = omit(valuesToUse, virtualFieldNames);
93
- const apiResponse = await mutate(toSubmitValues);
94
- (onSubmitSuccess ?? (({ message }) => {
95
- showSuccessMessage(message);
96
- }))(apiResponse, valuesToUse, scene);
97
- eventBus.emitSubmitResult(true);
98
- } catch (error) {
99
- eventBus.emitSubmitResult(false);
100
- onSubmitFailure?.(error, valuesToUse, scene);
101
- } finally {
102
- setIsLoading(false);
103
- closeLoading?.();
104
- }
105
- };
106
- }, [
107
- onSubmit,
108
- submitApi,
109
- setIsLoading,
110
- submitTip,
111
- scene,
112
- onBeforeSubmit,
113
- virtualFieldNames,
114
- eventBus,
115
- mutate,
116
- onSubmitSuccess,
117
- onSubmitFailure
118
- ]);
119
- const handleSubmitFailed = useCallback(({ values, errorFields }) => {
120
- eventBus.emitSubmitResult(false);
121
- onSubmitFailure?.(new VefError(-1, errorFields.flatMap((field) => field.errors).join(", ")), values, scene);
122
- }, [eventBus, onSubmitFailure, scene]);
123
- return {
124
- handleReset,
125
- handleSubmit,
126
- handleSubmitFailed
127
- };
128
- }
129
-
130
- export { useActionHandlers };
1
+ /*! VefFramework version: 1.0.65, build time: 2025-01-10T02:44:47.916Z, made by Venus. */
2
+ import{useApiContext as e}from"@vef-framework/core";import{isFunction as t,VefError as i,showLoadingMessage as o,omit as n,showSuccessMessage as r}from"@vef-framework/shared";import{useCallback as s,useMemo as a}from"react";import{useFormStore as u}from"../store.js";function useActionHandlers({submitApi:m,submitTip:l="提交中...",onBeforeSubmit:c,onSubmit:p,onSubmitSuccess:b,onSubmitFailure:f,onReset:d}){const[S,w,h,v,A,F,R,g]=u((e=>[e.form,e.scene,e.eventBus,e.setIsLoading,e.virtualFieldNames,e.getValues,e.initialValues,e.invokeValueChangeHandlers])),{useApiMutation:y,stubMutationApi:V}=e(),{mutate:k}=y(m??V);if(!t(p)&&!m)throw new i(-1,"'onSubmit' or 'submitApi' prop is required for VefForm component");return{handleReset:s((()=>{const e=F();S.resetFields(),g(),h.emitChange(R),d?.(e,w)}),[S,F,d,w,g,R,h]),handleSubmit:a((()=>t(p)?(m&&console.warn("'submitApi' prop is ignored when 'onSubmit' prop is provided in VefForm component"),async e=>{v(!0);let i=e,r=null;try{const s=t(l)?l(e,w):l;r=o(s),t(c)&&(i=await c(i,w));const a=n(i,A);await p(a,w),h.emitSubmitResult(!0)}catch(e){throw h.emitSubmitResult(!1),e}finally{v(!1),r?.()}}):async e=>{v(!0);let i=e,s=null;try{const a=t(l)?l(e,w):l;s=o(a),t(c)&&(i=await c(e,w));const u=n(i,A),m=await k(u);(b??(({message:e})=>{r(e)}))(m,i,w),h.emitSubmitResult(!0)}catch(e){h.emitSubmitResult(!1),f?.(e,i,w)}finally{v(!1),s?.()}}),[p,m,v,l,w,c,A,h,k,b,f]),handleSubmitFailed:s((({values:e,errorFields:t})=>{h.emitSubmitResult(!1),f?.(new i(-1,t.flatMap((e=>e.errors)).join(", ")),e,w)}),[h,f,w])}}export{useActionHandlers};
131
3
  /*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
@@ -1,123 +1,3 @@
1
- /*! VefFramework version: 1.0.64, build time: 2025-01-10T01:26:01.691Z, made by Venus. */
2
- import { unique, VefError } from '@vef-framework/shared';
3
- import { useMemo } from 'react';
4
-
5
- const MAX_SPANS = 24;
6
- const SPAN_BASES = [
7
- {
8
- breakpoint: "xs",
9
- base: MAX_SPANS,
10
- spans: 1
11
- },
12
- {
13
- breakpoint: "sm",
14
- base: MAX_SPANS / 2,
15
- spans: 2
16
- },
17
- {
18
- breakpoint: "md",
19
- base: MAX_SPANS / 3,
20
- spans: 3
21
- },
22
- {
23
- breakpoint: "lg",
24
- base: MAX_SPANS / 4,
25
- spans: 4
26
- },
27
- {
28
- breakpoint: "xl",
29
- base: MAX_SPANS / 4,
30
- spans: 4
31
- },
32
- {
33
- breakpoint: "xxl",
34
- base: MAX_SPANS / 6,
35
- spans: 6
36
- }
37
- ];
38
- const ALLOWED_SPANS = unique(SPAN_BASES.map((item) => item.spans));
39
- function calculateResponsiveLayout(rowKey, columns, autoExpand) {
40
- const totalSpans = columns.reduce((acc, column) => acc + (column.span ?? 1), 0);
41
- if (!ALLOWED_SPANS.includes(totalSpans)) {
42
- throw new VefError(-3, `The total spans of the columns of the row [${rowKey}] must be one of the following: ${ALLOWED_SPANS.join(", ")}.`);
43
- }
44
- const requiredBase = 24 / totalSpans;
45
- const layout = {};
46
- for (const {
47
- breakpoint,
48
- base,
49
- spans
50
- } of SPAN_BASES) {
51
- if (requiredBase >= base) {
52
- layout[breakpoint] = columns.reduce((acc, column) => {
53
- acc[column.key] = (column.span ?? 1) * requiredBase;
54
- return acc;
55
- }, {});
56
- } else {
57
- const map = {};
58
- let remainingSpans = spans;
59
- let lastColumnKey = null;
60
- for (const column of columns) {
61
- const requiredSpan = column.span ?? 1;
62
- if (remainingSpans >= requiredSpan) {
63
- map[column.key] = requiredSpan * base;
64
- remainingSpans -= requiredSpan;
65
- lastColumnKey = column.key;
66
- } else {
67
- if (lastColumnKey) {
68
- if (autoExpand) {
69
- map[lastColumnKey] += remainingSpans * base;
70
- }
71
- remainingSpans = spans;
72
- lastColumnKey = null;
73
- }
74
- if (requiredSpan > spans) {
75
- map[column.key] = 24;
76
- } else {
77
- map[column.key] = requiredSpan * base;
78
- remainingSpans -= requiredSpan;
79
- lastColumnKey = column.key;
80
- }
81
- }
82
- if (remainingSpans === 0) {
83
- remainingSpans = spans;
84
- lastColumnKey = null;
85
- }
86
- }
87
- if (remainingSpans > 0) {
88
- if (autoExpand) {
89
- map[lastColumnKey] += remainingSpans * base;
90
- }
91
- lastColumnKey = null;
92
- }
93
- layout[breakpoint] = map;
94
- }
95
- }
96
- return layout;
97
- }
98
- function calculateFixedLayout(rowKey, columns) {
99
- const totalSpans = columns.reduce((acc, column) => acc + (column.span ?? 1), 0);
100
- if (totalSpans > MAX_SPANS || MAX_SPANS % totalSpans !== 0) {
101
- throw new VefError(-3, `The total spans of the columns of the row [${rowKey}] must be less than or equal to ${MAX_SPANS} and a divisor of ${MAX_SPANS}.`);
102
- }
103
- const base = MAX_SPANS / totalSpans;
104
- return columns.reduce((acc, column) => {
105
- acc[column.key] = (column.span ?? 1) * base;
106
- return acc;
107
- }, {});
108
- }
109
- function useColumnsLayout(rowKey, columns, layoutMode, autoExpand) {
110
- return useMemo(() => {
111
- if (columns.length === 0) {
112
- return {};
113
- }
114
- if (layoutMode === "responsive") {
115
- return calculateResponsiveLayout(rowKey, columns, autoExpand);
116
- } else {
117
- return calculateFixedLayout(rowKey, columns);
118
- }
119
- }, []);
120
- }
121
-
122
- export { useColumnsLayout };
1
+ /*! VefFramework version: 1.0.65, build time: 2025-01-10T02:44:47.916Z, made by Venus. */
2
+ import{unique as e,VefError as s}from"@vef-framework/shared";import{useMemo as n}from"react";const o=24,t=[{breakpoint:"xs",base:o,spans:1},{breakpoint:"sm",base:12,spans:2},{breakpoint:"md",base:8,spans:3},{breakpoint:"lg",base:6,spans:4},{breakpoint:"xl",base:6,spans:4},{breakpoint:"xxl",base:4,spans:6}],a=e(t.map((e=>e.spans)));function useColumnsLayout(e,r,u,l){return n((()=>0===r.length?{}:"responsive"===u?function calculateResponsiveLayout(e,n,o){const r=n.reduce(((e,s)=>e+(s.span??1)),0);if(!a.includes(r))throw new s(-3,`The total spans of the columns of the row [${e}] must be one of the following: ${a.join(", ")}.`);const u=24/r,l={};for(const{breakpoint:e,base:s,spans:a}of t)if(u>=s)l[e]=n.reduce(((e,s)=>(e[s.key]=(s.span??1)*u,e)),{});else{const t={};let r=a,u=null;for(const e of n){const n=e.span??1;r>=n?(t[e.key]=n*s,r-=n,u=e.key):(u&&(o&&(t[u]+=r*s),r=a,u=null),n>a?t[e.key]=24:(t[e.key]=n*s,r-=n,u=e.key)),0===r&&(r=a,u=null)}r>0&&(o&&(t[u]+=r*s),u=null),l[e]=t}return l}(e,r,l):function calculateFixedLayout(e,n){const t=n.reduce(((e,s)=>e+(s.span??1)),0);if(t>o||o%t!=0)throw new s(-3,`The total spans of the columns of the row [${e}] must be less than or equal to 24 and a divisor of 24.`);const a=o/t;return n.reduce(((e,s)=>(e[s.key]=(s.span??1)*a,e)),{})}(e,r)),[])}export{useColumnsLayout};
123
3
  /*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
@@ -1,56 +1,3 @@
1
- /*! VefFramework version: 1.0.64, build time: 2025-01-10T01:26:01.691Z, made by Venus. */
2
- import { useUpdater, useDeepMemo, useDeepLayoutEffect } from '@vef-framework/hooks';
3
- import { isFunctionOrExpression, isDeepEqual } from '@vef-framework/shared';
4
- import { computeValue } from '../helper.js';
5
- import { useFormStore } from '../store.js';
6
-
7
- function useComputedValues(values, returnAsObject = false) {
8
- const [scene, eventBus, getValues] = useFormStore((state) => [state.scene, state.eventBus, state.getValues]);
9
- const forceUpdate = useUpdater();
10
- const currentValues = getValues();
11
- const computedValues = useDeepMemo(() => values.reduce((acc, it) => {
12
- const {
13
- key,
14
- rawValue,
15
- defaultValue
16
- } = it;
17
- const computedValue = computeValue(rawValue, currentValues, scene, defaultValue);
18
- acc[key] = computedValue;
19
- return acc;
20
- }, {}), [currentValues, scene, values]);
21
- useDeepLayoutEffect(() => {
22
- const realComputedValues = values.filter(({ rawValue }) => isFunctionOrExpression(rawValue));
23
- const shouldListenChangeEvent = realComputedValues.length > 0;
24
- if (shouldListenChangeEvent) {
25
- const handleChange = (newValues) => {
26
- for (const value of realComputedValues) {
27
- const {
28
- key,
29
- rawValue,
30
- defaultValue
31
- } = value;
32
- const computedValue = computedValues[key];
33
- const refreshedValue = computeValue(rawValue, newValues, scene, defaultValue);
34
- if (!isDeepEqual(refreshedValue, computedValue)) {
35
- forceUpdate();
36
- break;
37
- }
38
- }
39
- };
40
- eventBus.onChange(handleChange);
41
- return () => {
42
- eventBus.offChange(handleChange);
43
- };
44
- }
45
- }, [computedValues, eventBus, forceUpdate, scene, values]);
46
- if (returnAsObject) {
47
- return values.reduce((acc, { key }) => {
48
- acc[key] = computedValues[key];
49
- return acc;
50
- }, {});
51
- }
52
- return values.map(({ key }) => computedValues[key]);
53
- }
54
-
55
- export { useComputedValues };
1
+ /*! VefFramework version: 1.0.65, build time: 2025-01-10T02:44:47.916Z, made by Venus. */
2
+ import{useUpdater as e,useDeepMemo as r,useDeepLayoutEffect as o}from"@vef-framework/hooks";import{isFunctionOrExpression as t,isDeepEqual as u}from"@vef-framework/shared";import{computeValue as a}from"../helper.js";import{useFormStore as f}from"../store.js";function useComputedValues(s,n=!1){const[l,m,c]=f((e=>[e.scene,e.eventBus,e.getValues])),p=e(),i=c(),k=r((()=>s.reduce(((e,r)=>{const{key:o,rawValue:t,defaultValue:u}=r,f=a(t,i,l,u);return e[o]=f,e}),{})),[i,l,s]);return o((()=>{const e=s.filter((({rawValue:e})=>t(e)));if(e.length>0){const handleChange=r=>{for(const o of e){const{key:e,rawValue:t,defaultValue:f}=o,s=k[e],n=a(t,r,l,f);if(!u(n,s)){p();break}}};return m.onChange(handleChange),()=>{m.offChange(handleChange)}}}),[k,m,p,l,s]),n?s.reduce(((e,{key:r})=>(e[r]=k[r],e)),{}):s.map((({key:e})=>k[e]))}export{useComputedValues};
56
3
  /*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
@@ -1,15 +1,3 @@
1
- /*! VefFramework version: 1.0.64, build time: 2025-01-10T01:26:01.691Z, made by Venus. */
2
- import { createSelectableContext } from '@vef-framework/shared';
3
-
4
- const {
5
- useContextSelector: useFormContextSelector,
6
- useContext: useFormContext,
7
- ContextProvider: FormContextProvider
8
- } = createSelectableContext({
9
- autoExpand: true,
10
- labelPosition: "top",
11
- layoutMode: "responsive"
12
- });
13
-
14
- export { FormContextProvider, useFormContext, useFormContextSelector };
1
+ /*! VefFramework version: 1.0.65, build time: 2025-01-10T02:44:47.916Z, made by Venus. */
2
+ import{createSelectableContext as o}from"@vef-framework/shared";const{useContextSelector:e,useContext:t,ContextProvider:r}=o({autoExpand:!0,labelPosition:"top",layoutMode:"responsive"});export{r as FormContextProvider,t as useFormContext,e as useFormContextSelector};
15
3
  /*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
@@ -1,46 +1,3 @@
1
- /*! VefFramework version: 1.0.64, build time: 2025-01-10T01:26:01.691Z, made by Venus. */
2
- import { isNullish, isFunction } from '@vef-framework/shared';
3
- import { useMemo } from 'react';
4
-
5
- function useFormInitialization(schema, initialValues) {
6
- return useMemo(() => {
7
- const mergedInitialValues = {
8
- ...initialValues
9
- };
10
- const valueChangeHandlers = {};
11
- const virtualFieldNames = [];
12
- for (const group of schema) {
13
- const { rows } = group;
14
- for (const row of rows) {
15
- const { columns } = row;
16
- for (const column of columns) {
17
- const { items } = column;
18
- for (const item of items) {
19
- const {
20
- name,
21
- defaultValue,
22
- virtual
23
- } = item;
24
- if (!isNullish(defaultValue) && isNullish(mergedInitialValues[name])) {
25
- mergedInitialValues[name] = defaultValue;
26
- }
27
- if (item.type !== "Hidden" && isFunction(item.onChange)) {
28
- valueChangeHandlers[name] = item.onChange;
29
- }
30
- if (virtual === true) {
31
- virtualFieldNames.push(name);
32
- }
33
- }
34
- }
35
- }
36
- }
37
- return {
38
- mergedInitialValues,
39
- valueChangeHandlers,
40
- virtualFieldNames
41
- };
42
- }, []);
43
- }
44
-
45
- export { useFormInitialization };
1
+ /*! VefFramework version: 1.0.65, build time: 2025-01-10T02:44:47.916Z, made by Venus. */
2
+ import{isNullish as o,isFunction as n}from"@vef-framework/shared";import{useMemo as t}from"react";function useFormInitialization(e,r){return t((()=>{const t={...r},a={},s=[];for(const r of e){const{rows:e}=r;for(const r of e){const{columns:e}=r;for(const r of e){const{items:e}=r;for(const r of e){const{name:e,defaultValue:i,virtual:f}=r;!o(i)&&o(t[e])&&(t[e]=i),"Hidden"!==r.type&&n(r.onChange)&&(a[e]=r.onChange),!0===f&&s.push(e)}}}}return{mergedInitialValues:t,valueChangeHandlers:a,virtualFieldNames:s}}),[])}export{useFormInitialization};
46
3
  /*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
@@ -1,27 +1,3 @@
1
- /*! VefFramework version: 1.0.64, build time: 2025-01-10T01:26:01.691Z, made by Venus. */
2
- import { useImperativeHandle } from 'react';
3
- import { useFormStore } from '../store.js';
4
-
5
- function useFormInstance(ref, reset) {
6
- const [form, eventBus, getValues, setValues] = useFormStore((state) => [state.form, state.eventBus, state.getValues, state.setValues]);
7
- useImperativeHandle(ref, () => ({
8
- submit: () => new Promise((resolve, reject) => {
9
- const handleResult = (result) => {
10
- eventBus.offSubmitResult(handleResult);
11
- if (result) {
12
- resolve();
13
- } else {
14
- reject(result);
15
- }
16
- };
17
- eventBus.onSubmitResult(handleResult);
18
- form.submit();
19
- }),
20
- reset,
21
- getValues,
22
- setValues
23
- }));
24
- }
25
-
26
- export { useFormInstance };
1
+ /*! VefFramework version: 1.0.65, build time: 2025-01-10T02:44:47.916Z, made by Venus. */
2
+ import{useImperativeHandle as e}from"react";import{useFormStore as t}from"../store.js";function useFormInstance(s,o){const[u,m,r,n]=t((e=>[e.form,e.eventBus,e.getValues,e.setValues]));e(s,(()=>({submit:()=>new Promise(((e,t)=>{const handleResult=s=>{m.offSubmitResult(handleResult),s?e():t(s)};m.onSubmitResult(handleResult),u.submit()})),reset:o,getValues:r,setValues:n})))}export{useFormInstance};
27
3
  /*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
@@ -1,31 +1,3 @@
1
- /*! VefFramework version: 1.0.64, build time: 2025-01-10T01:26:01.691Z, made by Venus. */
2
- import { isFunction } from '@vef-framework/shared';
3
- import { useMemo, useEffect, useLayoutEffect } from 'react';
4
- import { useFormStore } from '../store.js';
5
-
6
- function useFormValuesChange(onChange) {
7
- const [scene, eventBus, invokeValueChangeHandlers] = useFormStore((state) => [state.scene, state.eventBus, state.invokeValueChangeHandlers]);
8
- const handleValuesChange = useMemo(() => (_, values) => {
9
- eventBus.emitChange(values);
10
- }, [eventBus]);
11
- useEffect(() => {
12
- if (isFunction(onChange)) {
13
- const handleChange = (values) => {
14
- onChange(values, scene);
15
- };
16
- eventBus.onChange(handleChange);
17
- return () => {
18
- eventBus.offChange(handleChange);
19
- };
20
- }
21
- }, [eventBus, onChange, scene]);
22
- useLayoutEffect(() => {
23
- invokeValueChangeHandlers();
24
- }, []);
25
- return {
26
- handleValuesChange
27
- };
28
- }
29
-
30
- export { useFormValuesChange };
1
+ /*! VefFramework version: 1.0.65, build time: 2025-01-10T02:44:47.916Z, made by Venus. */
2
+ import{isFunction as e}from"@vef-framework/shared";import{useMemo as n,useEffect as r,useLayoutEffect as o}from"react";import{useFormStore as a}from"../store.js";function useFormValuesChange(s){const[t,m,u]=a((e=>[e.scene,e.eventBus,e.invokeValueChangeHandlers])),f=n((()=>(e,n)=>{m.emitChange(n)}),[m]);return r((()=>{if(e(s)){const handleChange=e=>{s(e,t)};return m.onChange(handleChange),()=>{m.offChange(handleChange)}}}),[m,s,t]),o((()=>{u()}),[]),{handleValuesChange:f}}export{useFormValuesChange};
31
3
  /*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
@@ -1,19 +1,3 @@
1
- /*! VefFramework version: 1.0.64, build time: 2025-01-10T01:26:01.691Z, made by Venus. */
2
- import { showWarningMessage } from '@vef-framework/shared';
3
- import { useMemo } from 'react';
4
-
5
- function useLabelWidth(labelPosition, labelWidth) {
6
- const labelWidthToUse = useMemo(() => {
7
- if (labelPosition === "top" || !labelWidth) {
8
- return;
9
- }
10
- if (labelWidth < 60 || labelWidth > 120) {
11
- showWarningMessage("The labelWidth of VefForm component must be between 60 and 120, otherwise it will be 60 or 120.");
12
- }
13
- return Math.min(Math.max(labelWidth, 60), 120);
14
- }, [labelPosition, labelWidth]);
15
- return labelWidthToUse;
16
- }
17
-
18
- export { useLabelWidth };
1
+ /*! VefFramework version: 1.0.65, build time: 2025-01-10T02:44:47.916Z, made by Venus. */
2
+ import{showWarningMessage as e}from"@vef-framework/shared";import{useMemo as t}from"react";function useLabelWidth(r,o){return t((()=>{if("top"!==r&&o)return(o<60||o>120)&&e("The labelWidth of VefForm component must be between 60 and 120, otherwise it will be 60 or 120."),Math.min(Math.max(o,60),120)}),[r,o])}export{useLabelWidth};
19
3
  /*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */
@@ -1,175 +1,5 @@
1
- /*! VefFramework version: 1.0.64, build time: 2025-01-10T01:26:01.691Z, made by Venus. */
2
- import { jsxs, jsx } from '@emotion/react/jsx-runtime';
3
- import { css } from '@emotion/react';
4
- import { useContextDisabled, useSingleton, useUnmount } from '@vef-framework/hooks';
5
- import { isNumber, isDeepEqual, omit } from '@vef-framework/shared';
6
- import { Form } from 'antd';
7
- import { useMemo, forwardRef, memo } from 'react';
8
- import '../internal/index.js';
9
- import VefFormActions from './components/form-actions.js';
10
- import VefFormContent from './components/form-content.js';
11
- import { FormEventBus } from './event.js';
12
- import { useActionHandlers } from './hooks/use-action-handlers.js';
13
- import { useFormContextSelector, FormContextProvider } from './hooks/use-form-context.js';
14
- import { useFormInitialization } from './hooks/use-form-initialization.js';
15
- import { useFormInstance } from './hooks/use-form-instance.js';
16
- import { useFormValuesChange } from './hooks/use-form-values-change.js';
17
- import { useLabelWidth } from './hooks/use-label-width.js';
18
- import { useFormStore, FormStoreProvider } from './store.js';
19
- import { convertBasicSizeToUiSize } from '../internal/utils.js';
20
-
21
- const { useForm } = Form;
22
- const scrollToFirstErrorOptions = {
23
- scrollMode: "if-needed",
24
- behavior: "smooth"
25
- };
26
- function VefFormBase({
27
- schema,
28
- labelAlign = "right",
29
- variant,
30
- showTabs = false,
31
- height = "auto",
32
- size,
33
- disabled = false,
34
- onChange,
35
- submissionButton,
36
- resetButton,
37
- submitApi,
38
- submitTip,
39
- onBeforeSubmit,
40
- onSubmit,
41
- onSubmitSuccess,
42
- onSubmitFailure,
43
- onReset
44
- }, ref) {
45
- const [labelPosition, labelWidth] = useFormContextSelector((ctx) => [ctx.labelPosition, ctx.labelWidth]);
46
- const [form, initialValues, isLoading] = useFormStore((state) => [state.form, state.initialValues, state.isLoading]);
47
- const { handleValuesChange } = useFormValuesChange(onChange);
48
- const {
49
- handleReset,
50
- handleSubmit,
51
- handleSubmitFailed
52
- } = useActionHandlers({
53
- submitApi,
54
- submitTip,
55
- onBeforeSubmit,
56
- onSubmit,
57
- onSubmitSuccess,
58
- onSubmitFailure,
59
- onReset
60
- });
61
- useFormInstance(ref, handleReset);
62
- const labelCol = useMemo(() => {
63
- if (!labelWidth) {
64
- return;
65
- }
66
- return { flex: `0 0 ${labelWidth}px` };
67
- }, [labelWidth]);
68
- const formStyle = useMemo(() => {
69
- let heightValue = height;
70
- if (height === "full") {
71
- heightValue = "100%";
72
- } else if (isNumber(height)) {
73
- heightValue = `${height}px`;
74
- }
75
- return css`
76
- height: ${heightValue};
77
- `;
78
- }, [height]);
79
- const contextDisabled = useContextDisabled();
80
- const formDisabled = contextDisabled || disabled || isLoading;
81
- return /* @__PURE__ */ jsxs(
82
- Form,
83
- {
84
- labelWrap: true,
85
- colon: false,
86
- css: formStyle,
87
- disabled: formDisabled,
88
- form,
89
- initialValues,
90
- labelAlign,
91
- labelCol,
92
- layout: labelPosition === "top" ? "vertical" : "horizontal",
93
- scrollToFirstError: scrollToFirstErrorOptions,
94
- size: convertBasicSizeToUiSize(size),
95
- variant,
96
- onFinish: handleSubmit,
97
- onFinishFailed: handleSubmitFailed,
98
- onValuesChange: handleValuesChange,
99
- children: [
100
- /* @__PURE__ */ jsx(
101
- VefFormContent,
102
- {
103
- height,
104
- schema,
105
- showTabs: showTabs === true ? "switch" : showTabs
106
- }
107
- ),
108
- /* @__PURE__ */ jsx(
109
- VefFormActions,
110
- {
111
- handleReset,
112
- resetButton,
113
- submissionButton
114
- }
115
- )
116
- ]
117
- }
118
- );
119
- }
120
- const VefFormBaseForwarded = forwardRef(VefFormBase);
121
- VefFormBaseForwarded.displayName = "VefFormBase";
122
- function VefFormWrapper({
123
- initialValues,
124
- scene,
125
- layoutMode = "responsive",
126
- autoExpand = false,
127
- labelPosition = "top",
128
- labelWidth,
129
- ...restProps
130
- }, ref) {
131
- const { schema } = restProps;
132
- const [form] = useForm();
133
- const eventBus = useSingleton(() => new FormEventBus());
134
- useUnmount(() => {
135
- eventBus.clear();
136
- });
137
- const labelWidthToUse = useLabelWidth(labelPosition, labelWidth);
138
- const formContext = useMemo(() => ({
139
- labelPosition,
140
- labelWidth: labelWidthToUse,
141
- autoExpand,
142
- layoutMode
143
- }), [layoutMode, autoExpand, labelPosition, labelWidthToUse]);
144
- const {
145
- mergedInitialValues,
146
- valueChangeHandlers,
147
- virtualFieldNames
148
- } = useFormInitialization(schema, initialValues);
149
- const initialState = useMemo(() => ({
150
- eventBus,
151
- form,
152
- initialValues: mergedInitialValues,
153
- scene,
154
- valueChangeHandlers,
155
- virtualFieldNames
156
- }), [eventBus, form, mergedInitialValues, scene, valueChangeHandlers, virtualFieldNames]);
157
- return /* @__PURE__ */ jsx(FormStoreProvider, { initialState, children: /* @__PURE__ */ jsx(FormContextProvider, { value: formContext, children: /* @__PURE__ */ jsx(
158
- VefFormBaseForwarded,
159
- {
160
- ref,
161
- ...restProps
162
- }
163
- ) }) });
164
- }
165
- const VefForm = memo(
166
- forwardRef(VefFormWrapper),
167
- (prevProps, nextProps) => isDeepEqual(
168
- omit(prevProps, ["initialValues", "schema"]),
169
- omit(nextProps, ["initialValues", "schema"])
170
- )
171
- );
172
- VefForm.displayName = "VefForm";
173
-
174
- export { VefForm as default };
1
+ /*! VefFramework version: 1.0.65, build time: 2025-01-10T02:44:47.916Z, made by Venus. */
2
+ import{jsxs as e,jsx as o}from"@emotion/react/jsx-runtime";import{css as i}from"@emotion/react";import{useContextDisabled as t,useSingleton as s,useUnmount as a}from"@vef-framework/hooks";import{isNumber as n,isDeepEqual as r,omit as l}from"@vef-framework/shared";import{Form as m}from"antd";import{useMemo as u,forwardRef as h,memo as f}from"react";import"../internal/index.js";import c from"./components/form-actions.js";import d from"./components/form-content.js";import{FormEventBus as p}from"./event.js";import{useActionHandlers as b}from"./hooks/use-action-handlers.js";import{useFormContextSelector as v,FormContextProvider as g}from"./hooks/use-form-context.js";import{useFormInitialization as F}from"./hooks/use-form-initialization.js";import{useFormInstance as j}from"./hooks/use-form-instance.js";import{useFormValuesChange as S}from"./hooks/use-form-values-change.js";import{useLabelWidth as V}from"./hooks/use-label-width.js";import{useFormStore as k,FormStoreProvider as x}from"./store.js";import{convertBasicSizeToUiSize as B}from"../internal/utils.js";const{useForm:w}=m,C={scrollMode:"if-needed",behavior:"smooth"};const y=h((function VefFormBase({schema:s,labelAlign:a="right",variant:r,showTabs:l=!1,height:h="auto",size:f,disabled:p=!1,onChange:g,submissionButton:F,resetButton:V,submitApi:x,submitTip:w,onBeforeSubmit:y,onSubmit:T,onSubmitSuccess:W,onSubmitFailure:z,onReset:A},N){const[R,E]=v((e=>[e.labelPosition,e.labelWidth])),[M,P,$]=k((e=>[e.form,e.initialValues,e.isLoading])),{handleValuesChange:H}=S(g),{handleReset:I,handleSubmit:L,handleSubmitFailed:q}=b({submitApi:x,submitTip:w,onBeforeSubmit:y,onSubmit:T,onSubmitSuccess:W,onSubmitFailure:z,onReset:A});j(N,I);const D=u((()=>{if(E)return{flex:`0 0 ${E}px`}}),[E]),G=u((()=>{let e=h;return"full"===h?e="100%":n(h)&&(e=`${h}px`),i`
3
+ height: ${e};
4
+ `}),[h]),J=t();return e(m,{labelWrap:!0,colon:!1,css:G,disabled:J||p||$,form:M,initialValues:P,labelAlign:a,labelCol:D,layout:"top"===R?"vertical":"horizontal",scrollToFirstError:C,size:B(f),variant:r,onFinish:L,onFinishFailed:q,onValuesChange:H,children:[o(d,{height:h,schema:s,showTabs:!0===l?"switch":l}),o(c,{handleReset:I,resetButton:V,submissionButton:F})]})}));y.displayName="VefFormBase";const T=f(h((function VefFormWrapper({initialValues:e,scene:i,layoutMode:t="responsive",autoExpand:n=!1,labelPosition:r="top",labelWidth:l,...m},h){const{schema:f}=m,[c]=w(),d=s((()=>new p));a((()=>{d.clear()}));const b=V(r,l),v=u((()=>({labelPosition:r,labelWidth:b,autoExpand:n,layoutMode:t})),[t,n,r,b]),{mergedInitialValues:j,valueChangeHandlers:S,virtualFieldNames:k}=F(f,e),B=u((()=>({eventBus:d,form:c,initialValues:j,scene:i,valueChangeHandlers:S,virtualFieldNames:k})),[d,c,j,i,S,k]);return o(x,{initialState:B,children:o(g,{value:v,children:o(y,{ref:h,...m})})})})),((e,o)=>r(l(e,["initialValues","schema"]),l(o,["initialValues","schema"]))));T.displayName="VefForm";export{T as default};
175
5
  /*! VefFramework is a blazingly high-level, modern, flexible, easy-to-use UI framework made by Venus. Follow me on Github: https://github.com/ilxqx! @ilxqx */